From 5b3db22c51460ce292064e5df67287d5a730f40f Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 2 Nov 2022 10:59:50 +0200 Subject: [PATCH 01/10] update --- package-lock.json | 15 +- package.json | 2 +- tests/compiler/resolve-access.release.wat | 24 +- tests/compiler/std/array.release.wat | 1620 ++++++++++----------- tests/compiler/std/math.release.wat | 13 +- 5 files changed, 834 insertions(+), 840 deletions(-) diff --git a/package-lock.json b/package-lock.json index 686f835dde..d8d3f6025e 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": "110.0.0-nightly.20221019", + "binaryen": "110.0.0-nightly.20221102", "long": "^5.2.0" }, "bin": { @@ -397,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "110.0.0-nightly.20221019", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221019.tgz", - "integrity": "sha512-BmuVpV5hpeU1G9ENWQUslwaxbmol810S3+yd7xVJap+vrSQz7ybXiirwya1FfYSFtuDbfGYPfQAObiW5O2PS1w==", + "version": "110.0.0-nightly.20221102", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221102.tgz", + "integrity": "sha512-eP0jXro9HeUqok4F9+S7jmjQv2JxXI+UvhSisTlqB9RINlkA/Ykv5jL1G+xzqeIlDqf2p6Zqtqz+ewrgRAfBWQ==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2116,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "110.0.0-nightly.20221019", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221019.tgz", - "integrity": "sha512-BmuVpV5hpeU1G9ENWQUslwaxbmol810S3+yd7xVJap+vrSQz7ybXiirwya1FfYSFtuDbfGYPfQAObiW5O2PS1w==" + "version": "110.0.0-nightly.20221102", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221102.tgz", + "integrity": "sha512-eP0jXro9HeUqok4F9+S7jmjQv2JxXI+UvhSisTlqB9RINlkA/Ykv5jL1G+xzqeIlDqf2p6Zqtqz+ewrgRAfBWQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 577e404e0e..d44ba22d98 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "110.0.0-nightly.20221019", + "binaryen": "110.0.0-nightly.20221102", "long": "^5.2.0" }, "devDependencies": { diff --git a/tests/compiler/resolve-access.release.wat b/tests/compiler/resolve-access.release.wat index fa63c505ba..6ebd8f552d 100644 --- a/tests/compiler/resolve-access.release.wat +++ b/tests/compiler/resolve-access.release.wat @@ -1954,10 +1954,10 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $3 i32.const 0 i32.store $0 - local.get $0 + local.get $3 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1966,26 +1966,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 $0 i32.const 8 i32.const 0 call $~lib/rt/itcms/__new - local.tee $3 + local.tee $1 i32.const 1056 i64.load $0 align=1 i64.store $0 align=1 + local.get $0 local.get $1 - local.get $3 i32.store $0 i32.const 16 i32.const 3 call $~lib/rt/itcms/__new local.tee $2 - local.get $3 + local.get $1 i32.store $0 - local.get $3 + local.get $1 if local.get $2 i32.eqz @@ -1998,7 +1998,7 @@ unreachable end global.get $~lib/rt/itcms/white - local.get $3 + local.get $1 i32.const 20 i32.sub local.tee $4 @@ -2013,7 +2013,7 @@ i32.load $0 offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $0 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -2024,7 +2024,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 @@ -2036,7 +2036,7 @@ end end local.get $2 - local.get $3 + local.get $1 i32.store $0 offset=4 local.get $2 i32.const 8 @@ -2048,7 +2048,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $3 local.get $2 i32.store $0 local.get $2 diff --git a/tests/compiler/std/array.release.wat b/tests/compiler/std/array.release.wat index cc3f27a76f..21766144df 100644 --- a/tests/compiler/std/array.release.wat +++ b/tests/compiler/std/array.release.wat @@ -12731,17 +12731,16 @@ (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i64) - (local $5 f64) - (local $6 f32) + (local $3 i64) + (local $4 f64) + (local $5 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) global.get $~lib/memory/__stack_pointer i32.const 508 i32.sub @@ -12849,20 +12848,20 @@ i32.const 1 i32.const 0 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $6 i32.store $0 offset=4 local.get $0 - local.get $2 + local.get $6 i32.store $0 - local.get $2 + local.get $6 if local.get $0 - local.get $2 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $0 - local.get $2 + local.get $6 i32.store $0 offset=4 local.get $0 i32.const 1 @@ -12912,26 +12911,26 @@ i32.const 1 local.get $0 i32.load $0 offset=12 - local.tee $2 - local.get $2 + local.tee $6 + local.get $6 i32.const 1 i32.gt_s select local.tee $7 i32.const 3 - local.get $2 - local.get $2 + local.get $6 + local.get $6 i32.const 3 i32.gt_s select - local.tee $2 + local.tee $6 i32.lt_s if local.get $1 local.get $7 i32.add i32.const 1 - local.get $2 + local.get $6 local.get $7 i32.sub memory.fill $0 @@ -12962,14 +12961,14 @@ local.set $1 local.get $0 i32.load $0 offset=12 - local.tee $2 + local.tee $6 i32.const 0 - local.get $2 + local.get $6 i32.const 0 i32.le_s select local.set $7 - local.get $2 + local.get $6 local.get $7 i32.gt_s if @@ -12977,7 +12976,7 @@ local.get $7 i32.add i32.const 0 - local.get $2 + local.get $6 local.get $7 i32.sub memory.fill $0 @@ -13008,24 +13007,24 @@ local.set $1 local.get $0 i32.load $0 offset=12 - local.tee $2 + local.tee $6 i32.const 0 - local.get $2 + local.get $6 i32.const 0 i32.le_s select local.tee $7 - local.get $2 + local.get $6 i32.const 3 i32.sub - local.tee $2 + local.tee $6 i32.lt_s if local.get $1 local.get $7 i32.add i32.const 1 - local.get $2 + local.get $6 local.get $7 i32.sub memory.fill $0 @@ -13056,18 +13055,18 @@ local.set $1 local.get $0 i32.load $0 offset=12 - local.tee $2 + local.tee $6 i32.const 2 i32.sub local.tee $7 - local.get $2 + local.get $6 i32.lt_s if local.get $1 local.get $7 i32.add i32.const 2 - local.get $2 + local.get $6 local.get $7 i32.sub memory.fill $0 @@ -13099,26 +13098,26 @@ i32.const 1 local.get $0 i32.load $0 offset=12 - local.tee $2 - local.get $2 + local.tee $6 + local.get $6 i32.const 1 i32.gt_s select local.tee $7 - local.get $2 + local.get $6 i32.const 0 - local.get $2 + local.get $6 i32.const 0 i32.le_s select - local.tee $2 + local.tee $6 i32.lt_s if local.get $1 local.get $7 i32.add i32.const 0 - local.get $2 + local.get $6 local.get $7 i32.sub memory.fill $0 @@ -13149,14 +13148,14 @@ local.set $1 local.get $0 i32.load $0 offset=12 - local.tee $2 + local.tee $6 i32.const 0 - local.get $2 + local.get $6 i32.const 0 i32.le_s select local.set $7 - local.get $2 + local.get $6 local.get $7 i32.gt_s if @@ -13164,7 +13163,7 @@ local.get $7 i32.add i32.const -1 - local.get $2 + local.get $6 local.get $7 i32.sub memory.fill $0 @@ -14015,9 +14014,9 @@ i32.store $0 offset=40 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $6 i32.store $0 - local.get $2 + local.get $6 call $std/array/internalCapacity i32.const 8 i32.ne @@ -14031,9 +14030,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $6 i32.store $0 - local.get $2 + local.get $6 i32.load $0 offset=12 i32.const 3 i32.ne @@ -14062,19 +14061,19 @@ i32.const 3 i32.const 2736 call $~lib/rt/__newArray - local.set $2 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.store $0 offset=8 local.get $1 - local.get $2 + local.get $6 call $~lib/array/Array#concat drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $6 i32.store $0 - local.get $2 + local.get $6 call $std/array/internalCapacity i32.const 8 i32.ne @@ -14134,19 +14133,19 @@ global.get $~lib/memory/__stack_pointer local.tee $1 global.get $std/array/arr - local.tee $2 + local.tee $6 i32.store $0 local.get $1 - local.get $2 + local.get $6 local.get $0 call $~lib/array/Array#concat local.tee $1 i32.store $0 offset=40 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $6 i32.store $0 - local.get $2 + local.get $6 call $std/array/internalCapacity i32.const 8 i32.ne @@ -14283,11 +14282,11 @@ global.get $~lib/memory/__stack_pointer local.tee $1 global.get $std/array/arr - local.tee $2 + local.tee $6 i32.store $0 offset=8 local.get $1 local.get $0 - local.get $2 + local.get $6 call $~lib/array/Array#concat local.tee $1 i32.store $0 offset=40 @@ -15031,11 +15030,11 @@ end local.get $0 i32.load $0 offset=4 - local.tee $2 + local.tee $6 i32.load $0 local.set $7 - local.get $2 - local.get $2 + local.get $6 + local.get $6 i32.const 4 i32.add local.get $1 @@ -15046,7 +15045,7 @@ i32.shl local.tee $8 memory.copy $0 $0 - local.get $2 + local.get $6 local.get $8 i32.add i32.const 0 @@ -15288,12 +15287,12 @@ i32.const 3 i32.const 4000 call $~lib/rt/__newArray - local.set $2 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.store $0 offset=8 local.get $1 - local.get $2 + local.get $6 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15317,12 +15316,12 @@ i32.const 3 i32.const 4032 call $~lib/rt/__newArray - local.set $2 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.store $0 offset=8 local.get $1 - local.get $2 + local.get $6 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15346,12 +15345,12 @@ i32.const 3 i32.const 4064 call $~lib/rt/__newArray - local.set $2 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.store $0 offset=8 local.get $1 - local.get $2 + local.get $6 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15395,12 +15394,12 @@ i32.const 3 i32.const 4112 call $~lib/rt/__newArray - local.set $2 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.store $0 offset=8 local.get $1 - local.get $2 + local.get $6 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15424,12 +15423,12 @@ i32.const 3 i32.const 4144 call $~lib/rt/__newArray - local.set $2 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.store $0 offset=8 local.get $1 - local.get $2 + local.get $6 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15453,12 +15452,12 @@ i32.const 3 i32.const 4176 call $~lib/rt/__newArray - local.set $2 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $6 i32.store $0 offset=8 local.get $1 - local.get $2 + local.get $6 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -15515,51 +15514,49 @@ local.set $1 local.get $0 i32.load $0 offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.gt_u if - i32.const 0 - local.set $0 - local.get $2 + local.get $0 i32.const 1 i32.shr_u - local.set $7 - local.get $2 + local.set $6 + local.get $0 i32.const 1 i32.sub - local.set $2 + local.set $0 loop $while-continue|0 - local.get $0 - local.get $7 + local.get $2 + local.get $6 i32.lt_u if local.get $1 - local.get $0 + local.get $2 i32.const 2 i32.shl i32.add - local.tee $8 + local.tee $7 i32.load $0 - local.set $9 - local.get $8 + local.set $8 + local.get $7 local.get $1 - local.get $2 local.get $0 + local.get $2 i32.sub i32.const 2 i32.shl i32.add - local.tee $8 + local.tee $7 i32.load $0 i32.store $0 + local.get $7 local.get $8 - local.get $9 i32.store $0 - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $while-continue|0 end end @@ -15978,9 +15975,9 @@ block $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 0 i32.le_s i32.or @@ -15990,7 +15987,7 @@ local.set $2 loop $while-continue|014 local.get $0 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -16035,9 +16032,9 @@ block $__inlined_func$~lib/array/Array#indexOf36 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 0 i32.le_s i32.or @@ -16047,7 +16044,7 @@ local.set $2 loop $while-continue|038 local.get $0 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -16094,9 +16091,9 @@ block $__inlined_func$~lib/array/Array#indexOf39 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 0 i32.le_s i32.or @@ -16106,7 +16103,7 @@ local.set $2 loop $while-continue|041 local.get $0 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -16153,9 +16150,9 @@ block $__inlined_func$~lib/array/Array#indexOf42 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 100 i32.le_s i32.or @@ -16165,7 +16162,7 @@ local.set $2 loop $while-continue|044 local.get $0 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -16410,9 +16407,9 @@ block $__inlined_func$~lib/array/Array#indexOf54 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 0 i32.le_s i32.or @@ -16422,7 +16419,7 @@ local.set $2 loop $while-continue|056 local.get $0 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -16469,9 +16466,9 @@ block $__inlined_func$~lib/array/Array#indexOf57 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 1 i32.le_s i32.or @@ -16481,7 +16478,7 @@ local.set $2 loop $while-continue|059 local.get $0 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -16528,9 +16525,9 @@ block $__inlined_func$~lib/array/Array#indexOf60 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 2 i32.le_s i32.or @@ -16540,7 +16537,7 @@ local.set $2 loop $while-continue|062 local.get $0 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -16592,9 +16589,9 @@ block $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 0 i32.le_s i32.or @@ -16604,7 +16601,7 @@ local.set $2 loop $while-continue|064 local.get $0 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -16654,9 +16651,9 @@ block $__inlined_func$~lib/array/Array#indexOf local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 0 i32.le_s i32.or @@ -16666,7 +16663,7 @@ local.set $2 loop $while-continue|066 local.get $0 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -17043,9 +17040,9 @@ block $__inlined_func$~lib/array/Array#indexOf14 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 0 i32.le_s i32.or @@ -17055,7 +17052,7 @@ local.set $2 loop $while-continue|015 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -17100,9 +17097,9 @@ block $__inlined_func$~lib/array/Array#indexOf17 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 0 i32.le_s i32.or @@ -17112,7 +17109,7 @@ local.set $2 loop $while-continue|018 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -17157,9 +17154,9 @@ block $__inlined_func$~lib/array/Array#indexOf20 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 0 i32.le_s i32.or @@ -17169,7 +17166,7 @@ local.set $2 loop $while-continue|021 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -17214,9 +17211,9 @@ block $__inlined_func$~lib/array/Array#indexOf23 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 100 i32.le_s i32.or @@ -17226,7 +17223,7 @@ local.set $2 loop $while-continue|024 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -17463,9 +17460,9 @@ block $__inlined_func$~lib/array/Array#indexOf35 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 0 i32.le_s i32.or @@ -17475,7 +17472,7 @@ local.set $2 loop $while-continue|036 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -17520,9 +17517,9 @@ block $__inlined_func$~lib/array/Array#indexOf38 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 1 i32.le_s i32.or @@ -17532,7 +17529,7 @@ local.set $2 loop $while-continue|039 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -17577,9 +17574,9 @@ block $__inlined_func$~lib/array/Array#indexOf41 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.eqz - local.get $7 + local.get $6 i32.const 2 i32.le_s i32.or @@ -17589,7 +17586,7 @@ local.set $2 loop $while-continue|042 local.get $1 - local.get $7 + local.get $6 i32.lt_s if local.get $2 @@ -17661,8 +17658,8 @@ i32.shl i32.add f32.load $0 - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 f32.ne br_if $__inlined_func$~lib/array/Array#includes drop @@ -17722,8 +17719,8 @@ i32.shl i32.add f64.load $0 - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 f64.ne br_if $__inlined_func$~lib/array/Array#includes drop @@ -18881,17 +18878,17 @@ i32.store $0 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.const 0 - local.get $7 + local.get $6 i32.const 0 i32.le_s select - local.set $8 + local.set $7 local.get $2 i32.const 1 + local.get $6 local.get $7 - local.get $8 i32.sub local.tee $2 local.get $2 @@ -18909,44 +18906,44 @@ i32.const 12 i32.const 0 call $~lib/rt/__newArray - local.tee $9 + local.tee $8 i32.store $0 - local.get $9 + local.get $8 i32.load $0 offset=4 local.get $1 i32.load $0 offset=4 - local.tee $10 - local.get $8 + local.tee $9 + local.get $7 i32.const 2 i32.shl i32.add - local.tee $11 + local.tee $10 local.get $2 i32.const 2 i32.shl memory.copy $0 $0 local.get $2 - local.get $8 - i32.add - local.tee $8 local.get $7 + i32.add + local.tee $7 + local.get $6 i32.ne if - local.get $11 local.get $10 - local.get $8 + local.get $9 + local.get $7 i32.const 2 i32.shl i32.add + local.get $6 local.get $7 - local.get $8 i32.sub i32.const 2 i32.shl memory.copy $0 $0 end local.get $1 - local.get $7 + local.get $6 local.get $2 i32.sub i32.store $0 offset=12 @@ -18955,9 +18952,9 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $0 - local.get $9 + local.get $8 i32.store $0 offset=120 - local.get $9 + local.get $8 i32.load $0 offset=12 i32.const 1 i32.ne @@ -18970,7 +18967,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.const 0 call $~lib/array/Array#__get local.tee $0 @@ -19098,9 +19095,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -19112,10 +19109,10 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 6608 @@ -19162,9 +19159,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -19176,10 +19173,10 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 6640 @@ -19228,9 +19225,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -19242,10 +19239,10 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 6672 @@ -19294,9 +19291,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -19308,10 +19305,10 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 6704 @@ -19376,9 +19373,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -19390,10 +19387,10 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 6736 @@ -19469,9 +19466,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -19483,10 +19480,10 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 6768 @@ -19552,25 +19549,25 @@ i32.const 3 i32.const 6800 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store $0 offset=132 global.get $~lib/memory/__stack_pointer i32.const 6848 i32.store $0 offset=8 - local.get $0 + local.get $1 i32.load $0 offset=12 i32.const 1 i32.sub - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#findLastIndex loop $for-loop|0115 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $0 - i32.load $0 offset=4 local.get $1 + i32.load $0 offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -19579,23 +19576,23 @@ i32.const 3 global.set $~argumentsLength local.get $2 - local.get $1 local.get $0 + local.get $1 i32.const 6848 i32.load $0 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|0115 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 @@ -19609,20 +19606,20 @@ global.get $~lib/memory/__stack_pointer i32.const 6880 i32.store $0 offset=8 - local.get $0 + local.get $1 i32.load $0 offset=12 i32.const 1 i32.sub - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#findLastIndex117 loop $for-loop|0119 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $0 - i32.load $0 offset=4 local.get $1 + i32.load $0 offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -19631,23 +19628,23 @@ i32.const 3 global.set $~argumentsLength local.get $2 - local.get $1 local.get $0 + local.get $1 i32.const 6880 i32.load $0 call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findLastIndex117 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $for-loop|0119 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 @@ -19663,20 +19660,20 @@ global.get $~lib/memory/__stack_pointer i32.const 6912 i32.store $0 offset=8 - local.get $0 + local.get $1 i32.load $0 offset=12 i32.const 1 i32.sub - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#findLastIndex121 loop $for-loop|0123 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $0 - i32.load $0 offset=4 local.get $1 + i32.load $0 offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -19685,23 +19682,23 @@ i32.const 3 global.set $~argumentsLength local.get $2 - local.get $1 local.get $0 + local.get $1 i32.const 6912 i32.load $0 call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findLastIndex121 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $for-loop|0123 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 @@ -19717,20 +19714,20 @@ global.get $~lib/memory/__stack_pointer i32.const 6944 i32.store $0 offset=8 - local.get $0 + local.get $1 i32.load $0 offset=12 i32.const 1 i32.sub - local.set $1 + local.set $0 block $__inlined_func$~lib/array/Array#findLastIndex125 loop $for-loop|0127 - local.get $1 + local.get $0 i32.const 0 i32.ge_s if - local.get $0 - i32.load $0 offset=4 local.get $1 + i32.load $0 offset=4 + local.get $0 i32.const 2 i32.shl i32.add @@ -19739,23 +19736,23 @@ i32.const 3 global.set $~argumentsLength local.get $2 - local.get $1 local.get $0 + local.get $1 i32.const 6944 i32.load $0 call_indirect $0 (type $i32_i32_i32_=>_i32) br_if $__inlined_func$~lib/array/Array#findLastIndex125 - local.get $1 + local.get $0 i32.const 1 i32.sub - local.set $1 + local.set $0 br $for-loop|0127 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 @@ -19787,9 +19784,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -19801,11 +19798,11 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 6976 @@ -19851,9 +19848,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -19865,11 +19862,11 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7008 @@ -19914,9 +19911,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -19928,11 +19925,11 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7040 @@ -19994,9 +19991,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -20008,11 +20005,11 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7072 @@ -20084,9 +20081,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -20098,11 +20095,11 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 0 - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7104 @@ -20177,9 +20174,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -20191,11 +20188,11 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7136 @@ -20240,9 +20237,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -20254,11 +20251,11 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7168 @@ -20302,9 +20299,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -20316,11 +20313,11 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7200 @@ -20380,9 +20377,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -20394,11 +20391,11 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7232 @@ -20470,9 +20467,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -20484,11 +20481,11 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength i32.const 1 - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7264 @@ -20562,9 +20559,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -20576,10 +20573,10 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7296 @@ -20623,9 +20620,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -20637,10 +20634,10 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7328 @@ -20700,9 +20697,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -20714,10 +20711,10 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7360 @@ -20788,9 +20785,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -20802,10 +20799,10 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7392 @@ -20876,9 +20873,9 @@ local.get $2 local.get $1 i32.load $0 offset=12 - local.tee $7 + local.tee $6 local.get $2 - local.get $7 + local.get $6 i32.lt_s select i32.lt_s @@ -20890,10 +20887,10 @@ i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 3 global.set $~argumentsLength - local.get $7 + local.get $6 local.get $0 local.get $1 i32.const 7424 @@ -20972,7 +20969,7 @@ i32.const 3 call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer global.get $std/array/arr local.tee $2 @@ -20989,72 +20986,72 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i64.const 0 i64.store $0 - local.get $0 + local.get $1 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.const 2 i32.const 15 i32.const 0 call $~lib/rt/__newArray - local.tee $8 + local.tee $7 i32.store $0 - local.get $8 + local.get $7 i32.load $0 offset=4 - local.set $9 + local.set $8 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|0194 - local.get $0 - local.get $7 + local.get $1 + local.get $6 local.get $2 i32.load $0 offset=12 - local.tee $10 - local.get $7 - local.get $10 + local.tee $9 + local.get $6 + local.get $9 i32.lt_s select i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.tee $10 + local.tee $9 local.get $2 i32.load $0 offset=4 i32.add i32.load $0 - local.set $11 + local.set $10 i32.const 3 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $11 - local.get $0 + local.get $10 + local.get $1 local.get $2 i32.const 9232 i32.load $0 call_indirect $0 (type $i32_i32_i32_=>_i32) - local.tee $11 + local.tee $10 i32.store $0 offset=4 + local.get $8 local.get $9 - local.get $10 i32.add - local.get $11 + local.get $10 i32.store $0 - local.get $11 + local.get $10 if - local.get $8 - local.get $11 + local.get $7 + local.get $10 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0194 end end @@ -21062,11 +21059,11 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.store $0 offset=136 global.get $~lib/memory/__stack_pointer - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer global.get $std/array/arr local.tee $2 @@ -21083,61 +21080,61 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $0 + local.tee $1 i32.const 0 i32.store $0 - local.get $0 + local.get $1 local.get $2 i32.load $0 offset=12 - local.tee $7 + local.tee $6 i32.const 2 i32.const 8 i32.const 0 call $~lib/rt/__newArray - local.tee $8 + local.tee $7 i32.store $0 - local.get $8 + local.get $7 i32.load $0 offset=4 - local.set $9 + local.set $8 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|0197 - local.get $0 - local.get $7 + local.get $1 + local.get $6 local.get $2 i32.load $0 offset=12 - local.tee $10 - local.get $7 - local.get $10 + local.tee $9 + local.get $6 + local.get $9 i32.lt_s select i32.lt_s if - local.get $0 + local.get $1 i32.const 2 i32.shl - local.tee $10 + local.tee $9 local.get $2 i32.load $0 offset=4 i32.add i32.load $0 - local.set $11 + local.set $10 i32.const 3 global.set $~argumentsLength + local.get $8 local.get $9 - local.get $10 i32.add - local.get $11 - local.get $0 + local.get $10 + local.get $1 local.get $2 i32.const 9264 i32.load $0 call_indirect $0 (type $i32_i32_i32_=>_f32) f32.store $0 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0197 end end @@ -21145,10 +21142,10 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 - local.get $8 + local.get $0 + local.get $7 i32.store $0 offset=140 - local.get $8 + local.get $7 i32.load $0 offset=12 i32.const 4 i32.ne @@ -21160,15 +21157,15 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $7 i32.const 0 call $~lib/array/Array#__get - local.set $6 + local.set $5 global.get $~lib/memory/__stack_pointer global.get $std/array/arr local.tee $0 i32.store $0 - local.get $6 + local.get $5 local.get $0 i32.const 0 call $~lib/array/Array#__get @@ -21502,7 +21499,7 @@ call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store $0 global.get $~lib/memory/__stack_pointer i32.const 9520 @@ -21510,44 +21507,44 @@ i32.const 0 local.set $1 i32.const 0 - local.set $0 - local.get $2 + local.set $2 + local.get $0 i32.load $0 offset=12 - local.set $7 + local.set $6 loop $for-loop|0206 - local.get $0 - local.get $7 local.get $2 + local.get $6 + local.get $0 i32.load $0 offset=12 - local.tee $8 + local.tee $7 + local.get $6 local.get $7 - local.get $8 i32.lt_s select i32.lt_s if - local.get $2 - i32.load $0 offset=4 local.get $0 + i32.load $0 offset=4 + local.get $2 i32.const 2 i32.shl i32.add i32.load $0 - 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 $2 + local.get $0 i32.const 9520 i32.load $0 call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $1 - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|0206 end end @@ -21567,7 +21564,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $6 i32.store $0 local.get $0 i32.const 9552 @@ -21575,44 +21572,44 @@ i32.const 4 local.set $1 i32.const 0 - local.set $0 - local.get $2 + local.set $2 + local.get $6 i32.load $0 offset=12 - local.set $7 + local.set $0 loop $for-loop|0210 - local.get $0 - local.get $7 local.get $2 + local.get $0 + local.get $6 i32.load $0 offset=12 - local.tee $8 + local.tee $7 + local.get $0 local.get $7 - local.get $8 i32.lt_s select i32.lt_s if - local.get $2 + local.get $6 i32.load $0 offset=4 - local.get $0 + local.get $2 i32.const 2 i32.shl i32.add i32.load $0 - 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 $2 + local.get $6 i32.const 9552 i32.load $0 call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $1 - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|0210 end end @@ -21632,7 +21629,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $6 i32.store $0 local.get $0 i32.const 9584 @@ -21640,44 +21637,44 @@ i32.const 0 local.set $1 i32.const 0 - local.set $0 - local.get $2 + local.set $2 + local.get $6 i32.load $0 offset=12 - local.set $7 + local.set $0 loop $for-loop|0214 - local.get $0 - local.get $7 local.get $2 + local.get $0 + local.get $6 i32.load $0 offset=12 - local.tee $8 + local.tee $7 + local.get $0 local.get $7 - local.get $8 i32.lt_s select i32.lt_s if - local.get $2 + local.get $6 i32.load $0 offset=4 - local.get $0 + local.get $2 i32.const 2 i32.shl i32.add i32.load $0 - 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 $2 + local.get $6 i32.const 9584 i32.load $0 call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $1 - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|0214 end end @@ -21694,7 +21691,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $6 i32.store $0 local.get $0 i32.const 9616 @@ -21702,44 +21699,44 @@ i32.const 0 local.set $1 i32.const 0 - local.set $0 - local.get $2 + local.set $2 + local.get $6 i32.load $0 offset=12 - local.set $7 + local.set $0 loop $for-loop|0218 - local.get $0 - local.get $7 local.get $2 + local.get $0 + local.get $6 i32.load $0 offset=12 - local.tee $8 + local.tee $7 + local.get $0 local.get $7 - local.get $8 i32.lt_s select i32.lt_s if - local.get $2 + local.get $6 i32.load $0 offset=4 - local.get $0 + local.get $2 i32.const 2 i32.shl i32.add i32.load $0 - 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 $2 + local.get $6 i32.const 9616 i32.load $0 call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $1 - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|0218 end end @@ -21755,7 +21752,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $6 i32.store $0 local.get $0 i32.const 9648 @@ -21763,44 +21760,44 @@ i32.const 0 local.set $1 i32.const 0 - local.set $0 - local.get $2 + local.set $2 + local.get $6 i32.load $0 offset=12 - local.set $7 + local.set $0 loop $for-loop|0222 - local.get $0 - local.get $7 local.get $2 + local.get $0 + local.get $6 i32.load $0 offset=12 - local.tee $8 + local.tee $7 + local.get $0 local.get $7 - local.get $8 i32.lt_s select i32.lt_s if - local.get $2 + local.get $6 i32.load $0 offset=4 - local.get $0 + local.get $2 i32.const 2 i32.shl i32.add i32.load $0 - 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 $2 + local.get $6 i32.const 9648 i32.load $0 call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $1 - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|0222 end end @@ -21836,7 +21833,7 @@ global.get $~lib/memory/__stack_pointer local.tee $0 global.get $std/array/arr - local.tee $2 + local.tee $6 i32.store $0 local.get $0 i32.const 9680 @@ -21844,44 +21841,44 @@ i32.const 0 local.set $1 i32.const 0 - local.set $0 - local.get $2 + local.set $2 + local.get $6 i32.load $0 offset=12 - local.set $7 + local.set $0 loop $for-loop|0227 - local.get $0 - local.get $7 local.get $2 + local.get $0 + local.get $6 i32.load $0 offset=12 - local.tee $8 + local.tee $7 + local.get $0 local.get $7 - local.get $8 i32.lt_s select i32.lt_s if - local.get $2 + local.get $6 i32.load $0 offset=4 - local.get $0 + local.get $2 i32.const 2 i32.shl i32.add i32.load $0 - 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 $2 + local.get $6 i32.const 9680 i32.load $0 call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $1 - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|0227 end end @@ -21928,7 +21925,7 @@ drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store $0 global.get $~lib/memory/__stack_pointer i32.const 9712 @@ -21936,44 +21933,44 @@ i32.const 0 local.set $1 i32.const 0 - local.set $0 - local.get $2 + local.set $2 + local.get $0 i32.load $0 offset=12 - local.set $7 + local.set $6 loop $for-loop|0231 - local.get $0 - local.get $7 local.get $2 + local.get $6 + local.get $0 i32.load $0 offset=12 - local.tee $8 + local.tee $7 + local.get $6 local.get $7 - local.get $8 i32.lt_s select i32.lt_s if - local.get $2 - i32.load $0 offset=4 local.get $0 + i32.load $0 offset=4 + local.get $2 i32.const 2 i32.shl i32.add i32.load $0 - 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 $2 + local.get $0 i32.const 9712 i32.load $0 call_indirect $0 (type $i32_i32_i32_i32_=>_i32) local.set $1 - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 + local.set $2 br $for-loop|0231 end end @@ -22028,43 +22025,43 @@ i32.const 9744 i32.store $0 offset=8 i32.const 0 - local.set $1 + local.set $0 local.get $2 i32.load $0 offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0235 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load $0 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $7 local.get $0 + local.get $6 + local.get $1 local.get $2 i32.const 9744 i32.load $0 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|0235 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -22086,43 +22083,43 @@ i32.const 9776 i32.store $0 offset=8 i32.const 4 - local.set $1 + local.set $0 local.get $2 i32.load $0 offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0239 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load $0 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $7 local.get $0 + local.get $6 + local.get $1 local.get $2 i32.const 9776 i32.load $0 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|0239 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -22144,43 +22141,43 @@ i32.const 9808 i32.store $0 offset=8 i32.const 0 - local.set $1 + local.set $0 local.get $2 i32.load $0 offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0243 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load $0 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $7 local.get $0 + local.get $6 + local.get $1 local.get $2 i32.const 9808 i32.load $0 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|0243 end end - local.get $1 + local.get $0 i32.eqz if i32.const 0 @@ -22199,43 +22196,43 @@ i32.const 9840 i32.store $0 offset=8 i32.const 0 - local.set $1 + local.set $0 local.get $2 i32.load $0 offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0247 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load $0 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $7 local.get $0 + local.get $6 + local.get $1 local.get $2 i32.const 9840 i32.load $0 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|0247 end end - local.get $1 + local.get $0 if i32.const 0 i32.const 1552 @@ -22253,43 +22250,43 @@ i32.const 9872 i32.store $0 offset=8 i32.const 0 - local.set $1 + local.set $0 local.get $2 i32.load $0 offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0251 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load $0 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $7 local.get $0 + local.get $6 + local.get $1 local.get $2 i32.const 9872 i32.load $0 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|0251 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -22327,43 +22324,43 @@ i32.const 9904 i32.store $0 offset=8 i32.const 0 - local.set $1 + local.set $0 local.get $2 i32.load $0 offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0256 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load $0 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $7 local.get $0 + local.get $6 + local.get $1 local.get $2 i32.const 9904 i32.load $0 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|0256 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 10 @@ -22412,43 +22409,43 @@ i32.const 9936 i32.store $0 offset=8 i32.const 0 - local.set $1 + local.set $0 local.get $2 i32.load $0 offset=12 i32.const 1 i32.sub - local.set $0 + local.set $1 loop $for-loop|0260 - local.get $0 + local.get $1 i32.const 0 i32.ge_s if local.get $2 i32.load $0 offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add i32.load $0 - local.set $7 + local.set $6 i32.const 4 global.set $~argumentsLength - local.get $1 - local.get $7 local.get $0 + local.get $6 + local.get $1 local.get $2 i32.const 9936 i32.load $0 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|0260 end end - local.get $1 + local.get $0 global.set $std/array/i global.get $std/array/i i32.const 6 @@ -22506,26 +22503,26 @@ i64.const -7046029254386353131 call $~lib/bindings/dom/Math.random i64.reinterpret_f64 - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i64.eqz select - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i64.const 33 i64.shr_u i64.xor i64.const -49064778989728563 i64.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i64.const 33 i64.shr_u i64.xor i64.const -4265267296055464877 i64.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i64.const 33 i64.shr_u i64.xor @@ -22533,22 +22530,22 @@ global.get $~lib/math/random_state0_64 i64.const -1 i64.xor - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i64.const 33 i64.shr_u i64.xor i64.const -49064778989728563 i64.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i64.const 33 i64.shr_u i64.xor i64.const -4265267296055464877 i64.mul - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 i64.const 33 i64.shr_u i64.xor @@ -22991,12 +22988,12 @@ i32.const 11 i32.const 10384 call $~lib/rt/__newArray - local.tee $0 + local.tee $2 i32.store $0 offset=268 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 @@ -23017,16 +23014,16 @@ unreachable end i32.const 10480 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 10480 i32.store $0 end - local.get $0 + local.get $2 i32.load $0 offset=4 - local.get $0 + local.get $2 i32.load $0 offset=12 - local.get $1 + local.get $0 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 @@ -23038,16 +23035,16 @@ i32.const 11 i32.const 10512 call $~lib/rt/__newArray - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store $0 offset=8 i32.const 0 - local.get $0 - i32.load $0 offset=12 - local.tee $7 local.get $2 i32.load $0 offset=12 + local.tee $6 + local.get $0 + i32.load $0 offset=12 i32.ne br_if $__inlined_func$std/array/isArraysEqual drop @@ -23061,21 +23058,21 @@ local.set $1 loop $for-loop|038 local.get $1 - local.get $7 + local.get $6 i32.lt_s if - local.get $0 + local.get $2 local.get $1 call $~lib/array/Array#__get - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 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 + local.tee $4 + local.get $4 f64.ne else i32.const 0 @@ -23083,14 +23080,14 @@ i32.eqz if i32.const 0 - local.get $0 + local.get $2 local.get $1 call $~lib/array/Array#__get i64.reinterpret_f64 i64.const 63 i64.shr_u i32.wrap_i64 - local.get $2 + local.get $0 local.get $1 call $~lib/array/Array#__get i64.reinterpret_f64 @@ -23101,10 +23098,10 @@ br_if $__inlined_func$std/array/isArraysEqual drop i32.const 0 - local.get $0 + local.get $2 local.get $1 call $~lib/array/Array#__get - local.get $2 + local.get $0 local.get $1 call $~lib/array/Array#__get f64.ne @@ -23135,12 +23132,12 @@ i32.const 3 i32.const 10608 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store $0 offset=272 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 @@ -23161,16 +23158,16 @@ unreachable end i32.const 10656 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 10656 i32.store $0 end - local.get $0 + local.get $1 i32.load $0 offset=4 - local.get $0 - i32.load $0 offset=12 local.get $1 + i32.load $0 offset=12 + local.get $0 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 @@ -23181,12 +23178,12 @@ i32.const 3 i32.const 10688 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store $0 offset=8 local.get $0 + i32.store $0 offset=8 local.get $1 + local.get $0 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -23204,12 +23201,12 @@ i32.const 7 i32.const 10736 call $~lib/rt/__newArray - local.tee $0 + local.tee $1 i32.store $0 offset=276 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 @@ -23230,16 +23227,16 @@ unreachable end i32.const 10784 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 10784 i32.store $0 end - local.get $0 + local.get $1 i32.load $0 offset=4 - local.get $0 - i32.load $0 offset=12 local.get $1 + i32.load $0 offset=12 + local.get $0 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer i32.const 4 @@ -23250,12 +23247,12 @@ i32.const 7 i32.const 10816 call $~lib/rt/__newArray - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store $0 offset=8 local.get $0 + i32.store $0 offset=8 local.get $1 + local.get $0 call $std/array/isArraysEqual i32.eqz if @@ -23272,7 +23269,7 @@ i32.const 3 i32.const 10864 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store $0 offset=280 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -23280,7 +23277,7 @@ i32.const 3 i32.const 10896 call $~lib/rt/__newArray - local.tee $7 + local.tee $2 i32.store $0 offset=284 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -23288,7 +23285,7 @@ i32.const 3 i32.const 10928 call $~lib/rt/__newArray - local.tee $8 + local.tee $6 i32.store $0 offset=288 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -23296,7 +23293,7 @@ i32.const 3 i32.const 10960 call $~lib/rt/__newArray - local.tee $9 + local.tee $7 i32.store $0 offset=292 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -23304,48 +23301,48 @@ i32.const 3 i32.const 11008 call $~lib/rt/__newArray - local.tee $10 + local.tee $8 i32.store $0 offset=296 global.get $~lib/memory/__stack_pointer i32.const 64 call $std/array/createReverseOrderedArray - local.tee $11 + local.tee $9 i32.store $0 offset=300 global.get $~lib/memory/__stack_pointer i32.const 128 call $std/array/createReverseOrderedArray - local.tee $12 + local.tee $10 i32.store $0 offset=304 global.get $~lib/memory/__stack_pointer i32.const 1024 call $std/array/createReverseOrderedArray - local.tee $0 + local.tee $11 i32.store $0 offset=308 global.get $~lib/memory/__stack_pointer i32.const 10000 call $std/array/createReverseOrderedArray - local.tee $1 + local.tee $0 i32.store $0 offset=312 global.get $~lib/memory/__stack_pointer i32.const 512 call $std/array/createRandomOrderedArray - local.tee $13 + local.tee $12 i32.store $0 offset=316 - local.get $2 + local.get $1 call $std/array/assertSortedDefault - local.get $7 + local.get $2 call $std/array/assertSortedDefault i32.const 1 i32.const 2 i32.const 3 i32.const 11088 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store $0 offset=8 - local.get $7 local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -23357,19 +23354,19 @@ call $~lib/builtins/abort unreachable end - local.get $8 + local.get $6 call $std/array/assertSortedDefault i32.const 2 i32.const 2 i32.const 3 i32.const 11120 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store $0 offset=8 - local.get $8 - local.get $2 + local.get $6 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -23381,10 +23378,10 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $7 call $std/array/assertSortedDefault - local.get $9 - local.get $10 + local.get $7 + local.get $8 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -23396,10 +23393,10 @@ call $~lib/builtins/abort unreachable end - local.get $11 + local.get $9 call $std/array/assertSortedDefault - local.get $11 - local.get $10 + local.get $9 + local.get $8 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -23411,10 +23408,10 @@ call $~lib/builtins/abort unreachable end - local.get $12 + local.get $10 call $std/array/assertSortedDefault - local.get $12 local.get $10 + local.get $8 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -23426,10 +23423,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $11 call $std/array/assertSortedDefault - local.get $0 - local.get $10 + local.get $11 + local.get $8 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -23441,10 +23438,10 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 call $std/array/assertSortedDefault - local.get $1 - local.get $10 + local.get $0 + local.get $8 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -23456,7 +23453,7 @@ call $~lib/builtins/abort unreachable end - local.get $13 + local.get $12 call $std/array/assertSortedDefault i32.const 0 local.set $0 @@ -23486,67 +23483,67 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i32.const 0 i32.store $0 local.get $2 i32.load $0 offset=12 - local.tee $8 + local.tee $7 i32.const 0 - local.get $8 + local.get $7 i32.const 0 i32.le_s select - local.set $9 + local.set $8 + local.get $6 local.get $7 local.get $8 - local.get $9 i32.sub - local.tee $7 + local.tee $6 i32.const 0 - local.get $7 + local.get $6 i32.const 0 i32.gt_s select - local.tee $7 + local.tee $6 i32.const 2 i32.const 22 i32.const 0 call $~lib/rt/__newArray - local.tee $8 + local.tee $7 i32.store $0 - local.get $8 + local.get $7 i32.load $0 offset=4 - local.set $10 + local.set $9 local.get $2 i32.load $0 offset=4 - local.get $9 + local.get $8 i32.const 2 i32.shl i32.add local.set $2 - local.get $7 + local.get $6 i32.const 2 i32.shl - local.set $7 + local.set $6 loop $while-continue|01 local.get $0 - local.get $7 + local.get $6 i32.lt_u if local.get $0 - local.get $10 + local.get $9 i32.add local.get $0 local.get $2 i32.add i32.load $0 - local.tee $9 + local.tee $8 i32.store $0 - local.get $9 + local.get $8 if + local.get $7 local.get $8 - local.get $9 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end @@ -23562,19 +23559,19 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store $0 global.get $~lib/memory/__stack_pointer i32.const 11152 i32.store $0 offset=4 - local.get $8 + local.get $7 i32.load $0 offset=4 - local.get $8 + local.get $7 i32.load $0 offset=12 i32.const 11152 call $~lib/util/sort/SORT local.get $1 - local.get $8 + local.get $7 i32.store $0 offset=12 i32.const 1 local.set $2 @@ -23594,32 +23591,32 @@ if block $for-break0 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 local.get $0 call $~lib/array/Array#__get - local.tee $7 + local.tee $6 i32.store $0 offset=16 global.get $~lib/memory/__stack_pointer global.get $std/array/outputStabArr - local.tee $9 + local.tee $8 i32.store $0 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 local.get $0 call $~lib/array/Array#__get - local.tee $9 + local.tee $8 i32.store $0 offset=20 - local.get $7 + local.get $6 i32.load $0 - local.get $9 + local.get $8 i32.load $0 i32.ne if (result i32) i32.const 1 else - local.get $7 + local.get $6 i32.load $0 offset=4 - local.get $9 + local.get $8 i32.load $0 offset=4 i32.ne end @@ -23732,20 +23729,20 @@ i32.const 32 i32.const 0 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store $0 offset=4 local.get $2 - local.get $7 + local.get $6 i32.store $0 - local.get $7 + local.get $6 if local.get $2 - local.get $7 + local.get $6 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end local.get $2 - local.get $7 + local.get $6 i32.store $0 offset=4 local.get $2 i32.const 32 @@ -23770,9 +23767,9 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/array/Array#constructor - local.tee $7 + local.tee $6 i32.store $0 offset=4 - local.get $7 + local.get $6 i32.const 0 i32.const 1 local.get $1 @@ -23780,7 +23777,7 @@ call $~lib/array/Array#__set local.get $2 local.get $1 - local.get $7 + local.get $6 call $~lib/array/Array<~lib/array/Array>#__set local.get $1 i32.const 1 @@ -23827,50 +23824,50 @@ i32.lt_s br_if $folding-inner1 global.get $~lib/memory/__stack_pointer - local.tee $7 + local.tee $6 i64.const 0 i64.store $0 - local.get $7 + local.get $6 i32.const 16 i32.const 31 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $6 i32.store $0 - local.get $7 + local.get $6 i32.const 0 i32.store $0 - local.get $7 + local.get $6 i32.const 0 i32.store $0 offset=4 - local.get $7 + local.get $6 i32.const 0 i32.store $0 offset=8 - local.get $7 + local.get $6 i32.const 0 i32.store $0 offset=12 global.get $~lib/memory/__stack_pointer i32.const 2048 i32.const 0 call $~lib/rt/itcms/__new - local.tee $8 + local.tee $7 i32.store $0 offset=4 + local.get $6 local.get $7 - local.get $8 i32.store $0 - local.get $8 + local.get $7 if + local.get $6 local.get $7 - local.get $8 i32.const 0 call $byn-split-outlined-A$~lib/rt/itcms/__link end + local.get $6 local.get $7 - local.get $8 i32.store $0 offset=4 - local.get $7 + local.get $6 i32.const 2048 i32.store $0 offset=8 - local.get $7 + local.get $6 i32.const 512 i32.store $0 offset=12 global.get $~lib/memory/__stack_pointer @@ -23878,7 +23875,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $2 - local.get $7 + local.get $6 i32.store $0 loop $for-loop|03 local.get $1 @@ -23915,7 +23912,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store $0 offset=4 - local.get $7 + local.get $6 local.get $1 local.get $2 call $~lib/array/Array<~lib/array/Array>#__set @@ -23931,12 +23928,12 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $0 - local.get $7 + local.get $6 i32.store $0 offset=332 global.get $~lib/memory/__stack_pointer i32.const 11344 i32.store $0 offset=8 - local.get $7 + local.get $6 i32.const 11344 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer @@ -23953,10 +23950,12 @@ i32.const 33 i32.const 11584 call $~lib/rt/__newArray - local.tee $2 + local.tee $6 i32.store $0 offset=340 i32.const 1 global.set $~argumentsLength + i32.const 0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -23979,7 +23978,7 @@ unreachable end i32.const 11632 - local.set $3 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 11632 i32.store $0 @@ -24000,7 +23999,7 @@ i32.load $0 offset=4 local.get $0 i32.load $0 offset=12 - local.get $3 + local.get $2 call $~lib/util/sort/SORT global.get $~lib/memory/__stack_pointer local.get $0 @@ -24046,7 +24045,7 @@ global.set $~argumentsLength local.get $8 local.get $9 - local.get $3 + local.get $2 i32.load $0 call_indirect $0 (type $i32_i32_=>_i32) i32.const 0 @@ -24103,8 +24102,8 @@ i64.store $0 local.get $0 i32.load $0 offset=12 - local.tee $1 - local.get $2 + local.tee $2 + local.get $6 i32.load $0 offset=12 i32.ne if @@ -24116,7 +24115,7 @@ br $__inlined_func$std/array/isArraysEqual<~lib/string/String|null> end local.get $0 - local.get $2 + local.get $6 i32.eq if global.get $~lib/memory/__stack_pointer @@ -24127,21 +24126,21 @@ br $__inlined_func$std/array/isArraysEqual<~lib/string/String|null> end i32.const 0 - local.set $3 + local.set $1 loop $for-loop|055 local.get $1 - local.get $3 - i32.gt_s + local.get $2 + i32.lt_s if local.get $0 - local.get $3 + local.get $1 call $~lib/array/Array#__get local.set $7 global.get $~lib/memory/__stack_pointer local.get $7 i32.store $0 - local.get $2 - local.get $3 + local.get $6 + local.get $1 call $~lib/array/Array#__get local.set $8 global.get $~lib/memory/__stack_pointer @@ -24159,10 +24158,10 @@ i32.const 0 br $__inlined_func$std/array/isArraysEqual<~lib/string/String|null> end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 + local.set $1 br $for-loop|055 end end @@ -24183,12 +24182,12 @@ end global.get $~lib/memory/__stack_pointer call $std/array/createRandomStringArray - local.tee $0 + local.tee $1 i32.store $0 offset=344 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 @@ -24211,13 +24210,13 @@ unreachable end i32.const 11664 - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 11664 i32.store $0 end - local.get $0 local.get $1 + local.get $0 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer i32.const 4 @@ -24239,7 +24238,7 @@ local.set $2 local.get $0 i32.load $0 offset=4 - local.set $3 + local.set $6 local.get $0 i32.load $0 offset=12 local.set $0 @@ -24275,7 +24274,7 @@ if i32.const 11728 i32.const 11760 - local.get $3 + local.get $6 i32.load8_u $0 select local.set $0 @@ -24312,7 +24311,7 @@ i32.lt_s if local.get $2 - local.get $3 + local.get $6 i32.add i32.load8_u $0 local.tee $10 @@ -24361,7 +24360,7 @@ br $for-loop|154 end end - local.get $3 + local.get $6 local.get $7 i32.add i32.load8_u $0 @@ -24369,7 +24368,7 @@ i32.eqz i32.const 4 i32.add - local.set $3 + local.set $6 local.get $1 local.get $0 i32.const 1 @@ -24379,12 +24378,12 @@ i32.const 11760 local.get $2 select - local.get $3 + local.get $6 i32.const 1 i32.shl memory.copy $0 $0 local.get $0 - local.get $3 + local.get $6 i32.add local.tee $0 local.get $9 @@ -24737,7 +24736,7 @@ i32.const 3 i32.const 13920 call $~lib/rt/__newArray - local.tee $3 + local.tee $6 i32.store $0 offset=392 local.get $0 call $~lib/array/Array#toString @@ -24804,7 +24803,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $6 call $~lib/array/Array#toString local.set $0 global.get $~lib/memory/__stack_pointer @@ -24915,7 +24914,7 @@ local.set $2 local.get $0 i32.load $0 offset=4 - local.set $3 + local.set $6 local.get $0 i32.load $0 offset=12 local.set $0 @@ -24949,7 +24948,7 @@ local.get $7 i32.eqz if - local.get $3 + local.get $6 i32.load16_u $0 call $~lib/util/number/utoa32 local.set $0 @@ -24990,7 +24989,7 @@ i32.const 1 i32.shl i32.add - local.get $3 + local.get $6 local.get $2 i32.const 1 i32.shl @@ -25029,7 +25028,7 @@ i32.const 1 i32.shl i32.add - local.get $3 + local.get $6 local.get $7 i32.const 1 i32.shl @@ -25110,7 +25109,7 @@ local.set $2 local.get $0 i32.load $0 offset=4 - local.set $3 + local.set $6 local.get $0 i32.load $0 offset=12 local.set $0 @@ -25144,7 +25143,7 @@ local.get $7 i32.eqz if - local.get $3 + local.get $6 i32.load16_s $0 call $~lib/util/number/itoa32 local.set $0 @@ -25185,7 +25184,7 @@ i32.const 1 i32.shl i32.add - local.get $3 + local.get $6 local.get $2 i32.const 1 i32.shl @@ -25224,7 +25223,7 @@ i32.const 1 i32.shl i32.add - local.get $3 + local.get $6 local.get $7 i32.const 1 i32.shl @@ -25385,7 +25384,7 @@ local.set $2 local.get $0 i32.load $0 offset=4 - local.set $3 + local.set $6 local.get $0 i32.load $0 offset=12 local.set $0 @@ -25420,10 +25419,10 @@ i32.eqz if block $__inlined_func$~lib/util/number/itoa64 (result i32) - local.get $3 + local.get $6 i64.load $0 i64.extend32_s - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -25435,7 +25434,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store $0 - local.get $4 + local.get $3 i64.eqz if global.get $~lib/memory/__stack_pointer @@ -25446,10 +25445,10 @@ br $__inlined_func$~lib/util/number/itoa64 end i64.const 0 - local.get $4 + local.get $3 i64.sub - local.get $4 - local.get $4 + local.get $3 + local.get $3 i64.const 63 i64.shr_u i32.wrap_i64 @@ -25457,12 +25456,12 @@ i32.shl local.tee $0 select - local.tee $4 + local.tee $3 i64.const 4294967295 i64.le_u if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.wrap_i64 local.tee $2 i32.const 100000 @@ -25510,7 +25509,7 @@ i32.add end end - local.tee $3 + local.tee $6 i32.const 1 i32.shl local.get $0 @@ -25523,55 +25522,55 @@ local.get $1 i32.add local.get $2 - local.get $3 + local.get $6 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i64.const 1000000000000000 i64.lt_u if (result i32) - local.get $4 + local.get $3 i64.const 1000000000000 i64.lt_u if (result i32) - local.get $4 + local.get $3 i64.const 100000000000 i64.ge_u i32.const 10 i32.add - local.get $4 + local.get $3 i64.const 10000000000 i64.ge_u i32.add else - local.get $4 + local.get $3 i64.const 100000000000000 i64.ge_u i32.const 13 i32.add - local.get $4 + local.get $3 i64.const 10000000000000 i64.ge_u i32.add end else - local.get $4 + local.get $3 i64.const 100000000000000000 i64.lt_u if (result i32) - local.get $4 + local.get $3 i64.const 10000000000000000 i64.ge_u i32.const 16 i32.add else - local.get $4 + local.get $3 i64.const -8446744073709551616 i64.ge_u i32.const 18 i32.add - local.get $4 + local.get $3 i64.const 1000000000000000000 i64.ge_u i32.add @@ -25589,7 +25588,7 @@ local.get $0 local.get $1 i32.add - local.get $4 + local.get $3 local.get $2 call $~lib/util/number/utoa64_dec_lut end @@ -25643,7 +25642,7 @@ i32.const 1 i32.shl i32.add - local.get $3 + local.get $6 local.get $2 i32.const 3 i32.shl @@ -25682,7 +25681,7 @@ i32.const 1 i32.shl i32.add - local.get $3 + local.get $6 local.get $7 i32.const 3 i32.shl @@ -25844,7 +25843,7 @@ local.set $2 local.get $1 i32.load $0 offset=4 - local.set $3 + local.set $6 local.get $1 i32.load $0 offset=12 local.set $1 @@ -25883,7 +25882,7 @@ i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 i32.load $0 local.tee $0 i32.store $0 @@ -25917,7 +25916,7 @@ i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $2 i32.const 2 i32.shl @@ -25959,7 +25958,7 @@ end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $1 i32.const 2 i32.shl @@ -26062,7 +26061,7 @@ local.set $2 local.get $1 i32.load $0 offset=4 - local.set $3 + local.set $6 local.get $1 i32.load $0 offset=12 local.set $1 @@ -26101,7 +26100,7 @@ i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 i32.load $0 local.tee $0 i32.store $0 @@ -26135,7 +26134,7 @@ i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $2 i32.const 2 i32.shl @@ -26177,7 +26176,7 @@ end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $1 i32.const 2 i32.shl @@ -26288,7 +26287,7 @@ local.set $2 local.get $1 i32.load $0 offset=4 - local.set $3 + local.set $6 local.get $1 i32.load $0 offset=12 local.set $1 @@ -26327,7 +26326,7 @@ i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 i32.load $0 local.tee $0 i32.store $0 @@ -26361,7 +26360,7 @@ i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $2 i32.const 2 i32.shl @@ -26403,7 +26402,7 @@ end end global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $6 local.get $1 i32.const 2 i32.shl @@ -26596,7 +26595,7 @@ local.get $1 i32.store $0 offset=468 global.get $~lib/memory/__stack_pointer - local.set $7 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -26610,95 +26609,95 @@ i64.store $0 local.get $1 i32.load $0 offset=4 - local.set $8 + local.set $7 local.get $1 i32.load $0 offset=12 - local.set $9 + local.set $8 i32.const 0 - local.set $1 + local.set $2 i32.const 0 - local.set $0 + local.set $1 loop $for-loop|0320 - local.get $0 - local.get $9 + local.get $1 + local.get $8 i32.lt_s if - local.get $8 - local.get $0 + local.get $7 + local.get $1 i32.const 2 i32.shl i32.add i32.load $0 - local.tee $2 + local.tee $0 if (result i32) - local.get $2 + local.get $0 i32.load $0 offset=12 else i32.const 0 end - local.get $1 + local.get $2 i32.add - local.set $1 - local.get $0 + local.set $2 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0320 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.const 2 i32.shl - local.tee $2 + local.tee $0 i32.const 0 call $~lib/rt/itcms/__new - local.tee $10 + local.tee $9 i32.store $0 global.get $~lib/memory/__stack_pointer i32.const 16 i32.const 33 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $10 i32.store $0 offset=4 - local.get $0 - local.get $1 + local.get $10 + local.get $2 i32.store $0 offset=12 + local.get $10 local.get $0 - local.get $2 i32.store $0 offset=8 - local.get $0 local.get $10 + local.get $9 i32.store $0 offset=4 - local.get $0 local.get $10 + local.get $9 i32.store $0 - 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 i32.const 0 - local.set $2 + local.set $1 i32.const 0 - local.set $3 + local.set $0 loop $for-loop|1323 - local.get $3 - local.get $9 + local.get $0 + local.get $8 i32.lt_s if - local.get $8 - local.get $3 + local.get $7 + local.get $0 i32.const 2 i32.shl i32.add i32.load $0 local.tee $11 if - local.get $2 - local.get $10 + local.get $1 + local.get $9 i32.add local.get $11 i32.load $0 offset=4 @@ -26708,42 +26707,42 @@ i32.shl local.tee $11 memory.copy $0 $0 - local.get $2 + local.get $1 local.get $11 i32.add - local.set $2 + local.set $1 end - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|1323 end end i32.const 0 - local.set $3 + local.set $0 loop $for-loop|2326 - local.get $1 - local.get $3 - i32.gt_s + local.get $0 + local.get $2 + i32.lt_s if - local.get $10 - local.get $3 + local.get $9 + local.get $0 i32.const 2 i32.shl i32.add i32.load $0 - local.tee $2 + local.tee $1 if - local.get $10 - local.get $2 + local.get $9 + local.get $1 i32.const 1 call $byn-split-outlined-A$~lib/rt/itcms/__link end - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 + local.set $0 br $for-loop|2326 end end @@ -26751,9 +26750,8 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - local.get $0 - local.tee $1 + local.get $6 + local.get $10 i32.store $0 offset=472 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -26761,9 +26759,9 @@ i32.const 33 i32.const 15728 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store $0 offset=476 - local.get $0 + local.get $10 i32.load $0 offset=12 i32.const 8 i32.ne @@ -26779,26 +26777,26 @@ local.set $0 loop $for-loop|8 local.get $0 - local.get $2 + local.get $1 i32.load $0 offset=12 i32.lt_s if - local.get $1 + local.get $10 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 $0 local.get $2 + i32.store $0 + local.get $1 local.get $0 call $~lib/array/Array#__get - local.set $7 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $6 i32.store $0 offset=8 - local.get $3 - local.get $7 + local.get $2 + local.get $6 call $~lib/string/String.__eq i32.eqz if @@ -26919,7 +26917,7 @@ local.get $1 local.get $2 i32.load $0 offset=12 - local.tee $3 + local.tee $6 i32.const 2 i32.const 28 i32.const 0 @@ -26933,11 +26931,11 @@ local.set $1 loop $for-loop|071 local.get $1 - local.get $3 + local.get $6 local.get $2 i32.load $0 offset=12 local.tee $9 - local.get $3 + local.get $6 local.get $9 i32.lt_s select diff --git a/tests/compiler/std/math.release.wat b/tests/compiler/std/math.release.wat index be57e74131..1c2fda3bf4 100644 --- a/tests/compiler/std/math.release.wat +++ b/tests/compiler/std/math.release.wat @@ -11610,13 +11610,6 @@ ) (func $std/math/test_sincos (type $i64_i64_i64_i64_i64_=>_none) (param $0 i64) (param $1 i64) (param $2 i64) (param $3 i64) (param $4 i64) (local $5 f64) - (local $6 f64) - local.get $3 - f64.reinterpret_i64 - local.set $5 - local.get $4 - f64.reinterpret_i64 - local.set $6 local.get $0 f64.reinterpret_i64 call $~lib/math/NativeMath.sincos @@ -11628,8 +11621,10 @@ call $std/math/check if global.get $~lib/math/NativeMath.sincos_cos - local.get $5 - local.get $6 + local.get $3 + f64.reinterpret_i64 + local.get $4 + f64.reinterpret_i64 call $std/math/check drop end From b180381570ad36663e44fe5fc5baf89e71bc26e2 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 2 Nov 2022 11:02:54 +0200 Subject: [PATCH 02/10] add reorder-globals pass --- src/module.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/module.ts b/src/module.ts index a7c88871b6..1d25cf0b56 100644 --- a/src/module.ts +++ b/src/module.ts @@ -2745,6 +2745,7 @@ export class Module { passes.push("vacuum"); passes.push("simplify-globals-optimizing"); + passes.push("reorder-globals"); passes.push("remove-unused-brs"); passes.push("optimize-instructions"); } From f3567aa4fa7ed790c028033945b484f44991506c Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Thu, 3 Nov 2022 14:52:08 +0200 Subject: [PATCH 03/10] 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 d8d3f6025e..bb33a5e6b9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "110.0.0-nightly.20221102", + "binaryen": "110.0.0-nightly.20221103", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "110.0.0-nightly.20221102", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221102.tgz", - "integrity": "sha512-eP0jXro9HeUqok4F9+S7jmjQv2JxXI+UvhSisTlqB9RINlkA/Ykv5jL1G+xzqeIlDqf2p6Zqtqz+ewrgRAfBWQ==", + "version": "110.0.0-nightly.20221103", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221103.tgz", + "integrity": "sha512-VVv/vqtSTtolG0bNz/RdvPdbS+oc15FSzRlYevbwsyRkua0nA18czlHORPxpTBWenB1nKZifO+2KttSIKhSDnA==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "110.0.0-nightly.20221102", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221102.tgz", - "integrity": "sha512-eP0jXro9HeUqok4F9+S7jmjQv2JxXI+UvhSisTlqB9RINlkA/Ykv5jL1G+xzqeIlDqf2p6Zqtqz+ewrgRAfBWQ==" + "version": "110.0.0-nightly.20221103", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221103.tgz", + "integrity": "sha512-VVv/vqtSTtolG0bNz/RdvPdbS+oc15FSzRlYevbwsyRkua0nA18czlHORPxpTBWenB1nKZifO+2KttSIKhSDnA==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index d44ba22d98..8ecd45944b 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "110.0.0-nightly.20221102", + "binaryen": "110.0.0-nightly.20221103", "long": "^5.2.0" }, "devDependencies": { From d77bcdeacf413ebcc4e07196c541740589ba4854 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 4 Nov 2022 10:29:08 +0200 Subject: [PATCH 04/10] update --- package-lock.json | 14 +- package.json | 2 +- tests/compiler/class-implements.release.wat | 14 +- .../class-overloading-cast.release.wat | 14 +- tests/compiler/class-overloading.release.wat | 14 +- tests/compiler/do.release.wat | 44 +++--- tests/compiler/empty-new.release.wat | 30 ++-- .../exportstar-rereexport.release.wat | 44 +++--- tests/compiler/extends-recursive.release.wat | 14 +- tests/compiler/for.release.wat | 44 +++--- tests/compiler/function-call.release.wat | 30 ++-- .../compiler/function-expression.release.wat | 58 ++++---- tests/compiler/getter-call.release.wat | 44 +++--- tests/compiler/infer-generic.release.wat | 30 ++-- tests/compiler/instanceof-class.release.wat | 14 +- tests/compiler/issues/1095.release.wat | 30 ++-- tests/compiler/issues/1225.release.wat | 44 +++--- tests/compiler/issues/2166.release.wat | 14 +- tests/compiler/logical.release.wat | 44 +++--- tests/compiler/managed-cast.release.wat | 14 +- tests/compiler/new.release.wat | 14 +- .../optional-typeparameters.release.wat | 14 +- tests/compiler/reexport.release.wat | 30 ++-- tests/compiler/rereexport.release.wat | 44 +++--- .../resolve-function-expression.release.wat | 128 +++++++++--------- tests/compiler/resolve-new.release.wat | 44 +++--- tests/compiler/rt/finalize.release.wat | 44 +++--- tests/compiler/rt/instanceof.release.wat | 14 +- tests/compiler/std/new.release.wat | 44 +++--- .../std/operator-overloading.release.wat | 14 +- tests/compiler/super-inline.release.wat | 14 +- tests/compiler/while.release.wat | 44 +++--- 32 files changed, 502 insertions(+), 502 deletions(-) diff --git a/package-lock.json b/package-lock.json index bb33a5e6b9..748a232ca9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "110.0.0-nightly.20221103", + "binaryen": "110.0.0-nightly.20221104", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "110.0.0-nightly.20221103", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221103.tgz", - "integrity": "sha512-VVv/vqtSTtolG0bNz/RdvPdbS+oc15FSzRlYevbwsyRkua0nA18czlHORPxpTBWenB1nKZifO+2KttSIKhSDnA==", + "version": "110.0.0-nightly.20221104", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221104.tgz", + "integrity": "sha512-WnHidJjNy9EJDfhI1PYBQjXVCKJsqXxcIrG2TP0L5ptQWoXJXcFyCKRe7D49jW1R2osUNg111A78qoFOeTfs3g==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "110.0.0-nightly.20221103", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221103.tgz", - "integrity": "sha512-VVv/vqtSTtolG0bNz/RdvPdbS+oc15FSzRlYevbwsyRkua0nA18czlHORPxpTBWenB1nKZifO+2KttSIKhSDnA==" + "version": "110.0.0-nightly.20221104", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221104.tgz", + "integrity": "sha512-WnHidJjNy9EJDfhI1PYBQjXVCKJsqXxcIrG2TP0L5ptQWoXJXcFyCKRe7D49jW1R2osUNg111A78qoFOeTfs3g==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 8ecd45944b..5b6cc331e6 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "110.0.0-nightly.20221103", + "binaryen": "110.0.0-nightly.20221104", "long": "^5.2.0" }, "devDependencies": { diff --git a/tests/compiler/class-implements.release.wat b/tests/compiler/class-implements.release.wat index 785cf3a16b..2e4ae9b461 100644 --- a/tests/compiler/class-implements.release.wat +++ b/tests/compiler/class-implements.release.wat @@ -1179,17 +1179,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load $0 - 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 @@ -1198,19 +1198,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 $0 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 $0 diff --git a/tests/compiler/class-overloading-cast.release.wat b/tests/compiler/class-overloading-cast.release.wat index d96011df00..d9caad6abb 100644 --- a/tests/compiler/class-overloading-cast.release.wat +++ b/tests/compiler/class-overloading-cast.release.wat @@ -1168,17 +1168,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load $0 - 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 @@ -1187,19 +1187,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 $0 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 $0 diff --git a/tests/compiler/class-overloading.release.wat b/tests/compiler/class-overloading.release.wat index fd3d64ec0e..1fea5c0d54 100644 --- a/tests/compiler/class-overloading.release.wat +++ b/tests/compiler/class-overloading.release.wat @@ -1190,17 +1190,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load $0 - 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 @@ -1209,19 +1209,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 $0 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 $0 diff --git a/tests/compiler/do.release.wat b/tests/compiler/do.release.wat index 76ef40cd97..df100562d5 100644 --- a/tests/compiler/do.release.wat +++ b/tests/compiler/do.release.wat @@ -1498,7 +1498,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store $0 global.get $~lib/rt/itcms/total @@ -1552,7 +1552,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 $0 i32.eqz @@ -1560,7 +1560,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $3 + local.get $2 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1575,16 +1575,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $0 - local.get $1 + local.get $3 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow $0 i32.const 0 i32.lt_s @@ -1592,7 +1592,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1600,7 +1600,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1627,22 +1627,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load $0 - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1651,19 +1651,19 @@ local.get $0 i32.const 32 i32.add - local.tee $4 - local.get $1 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store $0 @@ -1675,8 +1675,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load $0 i32.const -3 i32.and @@ -1689,12 +1689,12 @@ i32.const 0 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load $0 offset=8 local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store $0 offset=4 local.get $0 @@ -1708,7 +1708,7 @@ i32.and i32.or i32.store $0 offset=4 - local.get $1 + local.get $2 local.get $0 i32.store $0 offset=8 global.get $~lib/rt/itcms/total @@ -1727,7 +1727,7 @@ i32.const 0 i32.const 0 memory.fill $0 - local.get $2 + local.get $1 local.get $0 i32.store $0 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/empty-new.release.wat b/tests/compiler/empty-new.release.wat index dc80d45625..d0afedf529 100644 --- a/tests/compiler/empty-new.release.wat +++ b/tests/compiler/empty-new.release.wat @@ -1104,7 +1104,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 @@ -1112,7 +1112,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $2 + local.get $1 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1127,16 +1127,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $2 local.get $0 - local.get $1 + local.get $2 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow $0 i32.const 0 i32.lt_s @@ -1144,7 +1144,7 @@ unreachable end end - local.get $2 + local.get $1 local.get $0 i32.const 16 i32.shl @@ -1152,7 +1152,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 @@ -1179,22 +1179,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 $0 - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + 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 @@ -1203,19 +1203,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $1 + local.tee $2 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $1 local.get $2 - local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store $0 diff --git a/tests/compiler/exportstar-rereexport.release.wat b/tests/compiler/exportstar-rereexport.release.wat index 9ac26932d6..ec289c4232 100644 --- a/tests/compiler/exportstar-rereexport.release.wat +++ b/tests/compiler/exportstar-rereexport.release.wat @@ -1210,7 +1210,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store $0 global.get $~lib/rt/itcms/total @@ -1264,7 +1264,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 $0 i32.eqz @@ -1272,7 +1272,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $3 + local.get $2 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1287,16 +1287,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $0 - local.get $1 + local.get $3 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow $0 i32.const 0 i32.lt_s @@ -1304,7 +1304,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1312,7 +1312,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1339,22 +1339,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load $0 - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1363,19 +1363,19 @@ local.get $0 i32.const 32 i32.add - local.tee $4 - local.get $1 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store $0 @@ -1387,8 +1387,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load $0 i32.const -3 i32.and @@ -1401,12 +1401,12 @@ i32.const 4 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load $0 offset=8 local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store $0 offset=4 local.get $0 @@ -1420,7 +1420,7 @@ i32.and i32.or i32.store $0 offset=4 - local.get $1 + local.get $2 local.get $0 i32.store $0 offset=8 global.get $~lib/rt/itcms/total @@ -1438,7 +1438,7 @@ local.tee $0 i32.const 0 i32.store $0 align=1 - local.get $2 + local.get $1 local.get $0 i32.store $0 local.get $0 diff --git a/tests/compiler/extends-recursive.release.wat b/tests/compiler/extends-recursive.release.wat index 8e94b4c15d..af150586a1 100644 --- a/tests/compiler/extends-recursive.release.wat +++ b/tests/compiler/extends-recursive.release.wat @@ -1128,17 +1128,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load $0 - 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 @@ -1147,19 +1147,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 $0 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 $0 diff --git a/tests/compiler/for.release.wat b/tests/compiler/for.release.wat index a17a8fe282..843b4a444f 100644 --- a/tests/compiler/for.release.wat +++ b/tests/compiler/for.release.wat @@ -1494,7 +1494,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store $0 global.get $~lib/rt/itcms/total @@ -1548,7 +1548,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 $0 i32.eqz @@ -1556,7 +1556,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $3 + local.get $2 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1571,16 +1571,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $0 - local.get $1 + local.get $3 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow $0 i32.const 0 i32.lt_s @@ -1588,7 +1588,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1596,7 +1596,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1623,22 +1623,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load $0 - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1647,19 +1647,19 @@ local.get $0 i32.const 32 i32.add - local.tee $4 - local.get $1 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store $0 @@ -1671,8 +1671,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load $0 i32.const -3 i32.and @@ -1685,12 +1685,12 @@ i32.const 0 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load $0 offset=8 local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store $0 offset=4 local.get $0 @@ -1704,7 +1704,7 @@ i32.and i32.or i32.store $0 offset=4 - local.get $1 + local.get $2 local.get $0 i32.store $0 offset=8 global.get $~lib/rt/itcms/total @@ -1723,7 +1723,7 @@ i32.const 0 i32.const 0 memory.fill $0 - local.get $2 + local.get $1 local.get $0 i32.store $0 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/function-call.release.wat b/tests/compiler/function-call.release.wat index 5468f2e45f..17b907ee19 100644 --- a/tests/compiler/function-call.release.wat +++ b/tests/compiler/function-call.release.wat @@ -1088,7 +1088,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 @@ -1096,7 +1096,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $2 + local.get $1 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1111,16 +1111,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $2 local.get $0 - local.get $1 + local.get $2 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow $0 i32.const 0 i32.lt_s @@ -1128,7 +1128,7 @@ unreachable end end - local.get $2 + local.get $1 local.get $0 i32.const 16 i32.shl @@ -1136,7 +1136,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 @@ -1163,22 +1163,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 $0 - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + 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 @@ -1187,19 +1187,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $1 + local.tee $2 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $1 local.get $2 - local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store $0 diff --git a/tests/compiler/function-expression.release.wat b/tests/compiler/function-expression.release.wat index a73648dd40..1745305445 100644 --- a/tests/compiler/function-expression.release.wat +++ b/tests/compiler/function-expression.release.wat @@ -1278,16 +1278,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 $0 - local.get $3 + local.get $1 i32.const 0 i32.store $0 offset=8 - local.get $3 + local.get $1 i32.const 2032 i32.store $0 - local.get $3 + local.get $1 i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer @@ -1296,7 +1296,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 $0 global.get $~lib/rt/itcms/total @@ -1350,7 +1350,7 @@ call $~lib/rt/tlsf/initialize end global.get $~lib/rt/tlsf/ROOT - local.tee $4 + local.tee $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1358,7 +1358,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $4 + local.get $3 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1373,16 +1373,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 $0 i32.const 0 i32.lt_s if - local.get $2 + local.get $4 memory.grow $0 i32.const 0 i32.lt_s @@ -1390,7 +1390,7 @@ unreachable end end - local.get $4 + local.get $3 local.get $0 i32.const 16 i32.shl @@ -1398,7 +1398,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $4 + local.get $3 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1425,22 +1425,22 @@ call $~lib/builtins/abort unreachable end - local.get $4 + local.get $3 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load $0 - local.tee $5 + 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 $5 + local.get $4 i32.const 2 i32.and i32.const 28 @@ -1449,19 +1449,19 @@ local.get $0 i32.const 32 i32.add - local.tee $5 - local.get $2 + local.tee $4 + local.get $5 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $3 local.get $4 - local.get $5 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $5 + local.get $4 i32.const -2 i32.and i32.store $0 @@ -1473,8 +1473,8 @@ i32.const -4 i32.and i32.add - local.tee $2 - local.get $2 + local.tee $3 + local.get $3 i32.load $0 i32.const -3 i32.and @@ -1487,12 +1487,12 @@ i32.const 4 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $2 + local.tee $3 i32.load $0 offset=8 local.set $4 local.get $0 global.get $~lib/rt/itcms/white - local.get $2 + local.get $3 i32.or i32.store $0 offset=4 local.get $0 @@ -1506,7 +1506,7 @@ i32.and i32.or i32.store $0 offset=4 - local.get $2 + local.get $3 local.get $0 i32.store $0 offset=8 global.get $~lib/rt/itcms/total @@ -1524,7 +1524,7 @@ local.tee $0 i32.const 0 i32.store $0 align=1 - local.get $1 + local.get $2 local.get $0 i32.store $0 local.get $0 @@ -1553,7 +1553,7 @@ i32.load $0 offset=4 i32.const 3 i32.and - local.tee $1 + local.tee $2 global.get $~lib/rt/itcms/white i32.eqz i32.eq @@ -1564,7 +1564,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 @@ -1578,7 +1578,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $3 + local.get $1 local.get $0 i32.store $0 offset=4 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/getter-call.release.wat b/tests/compiler/getter-call.release.wat index b460377f18..a363d04174 100644 --- a/tests/compiler/getter-call.release.wat +++ b/tests/compiler/getter-call.release.wat @@ -1095,7 +1095,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store $0 global.get $~lib/rt/itcms/total @@ -1149,7 +1149,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 $0 i32.eqz @@ -1157,7 +1157,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $3 + local.get $2 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1172,16 +1172,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $0 - local.get $1 + local.get $3 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow $0 i32.const 0 i32.lt_s @@ -1189,7 +1189,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1197,7 +1197,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1224,22 +1224,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load $0 - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1248,19 +1248,19 @@ local.get $0 i32.const 32 i32.add - local.tee $4 - local.get $1 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store $0 @@ -1272,8 +1272,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load $0 i32.const -3 i32.and @@ -1286,12 +1286,12 @@ i32.const 0 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load $0 offset=8 local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store $0 offset=4 local.get $0 @@ -1305,7 +1305,7 @@ i32.and i32.or i32.store $0 offset=4 - local.get $1 + local.get $2 local.get $0 i32.store $0 offset=8 global.get $~lib/rt/itcms/total @@ -1324,7 +1324,7 @@ i32.const 0 i32.const 0 memory.fill $0 - local.get $2 + local.get $1 local.get $0 i32.store $0 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/infer-generic.release.wat b/tests/compiler/infer-generic.release.wat index 5e8c758c00..2cb95d8446 100644 --- a/tests/compiler/infer-generic.release.wat +++ b/tests/compiler/infer-generic.release.wat @@ -1077,7 +1077,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 @@ -1085,7 +1085,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $2 + local.get $1 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1100,16 +1100,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $2 local.get $0 - local.get $1 + local.get $2 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow $0 i32.const 0 i32.lt_s @@ -1117,7 +1117,7 @@ unreachable end end - local.get $2 + local.get $1 local.get $0 i32.const 16 i32.shl @@ -1125,7 +1125,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 @@ -1152,22 +1152,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 $0 - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + 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 @@ -1176,19 +1176,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $1 + local.tee $2 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $1 local.get $2 - local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store $0 diff --git a/tests/compiler/instanceof-class.release.wat b/tests/compiler/instanceof-class.release.wat index da88121b8b..7cdaeea66f 100644 --- a/tests/compiler/instanceof-class.release.wat +++ b/tests/compiler/instanceof-class.release.wat @@ -1144,17 +1144,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load $0 - 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 @@ -1163,19 +1163,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 $0 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 $0 diff --git a/tests/compiler/issues/1095.release.wat b/tests/compiler/issues/1095.release.wat index 5f6999562c..7401796359 100644 --- a/tests/compiler/issues/1095.release.wat +++ b/tests/compiler/issues/1095.release.wat @@ -1185,7 +1185,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 @@ -1193,7 +1193,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $2 + local.get $1 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1208,16 +1208,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $2 local.get $0 - local.get $1 + local.get $2 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow $0 i32.const 0 i32.lt_s @@ -1225,7 +1225,7 @@ unreachable end end - local.get $2 + local.get $1 local.get $0 i32.const 16 i32.shl @@ -1233,7 +1233,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 @@ -1260,22 +1260,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 $0 - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + 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 @@ -1284,19 +1284,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $1 + local.tee $2 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $1 local.get $2 - local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store $0 diff --git a/tests/compiler/issues/1225.release.wat b/tests/compiler/issues/1225.release.wat index 250424521a..31709b8ecf 100644 --- a/tests/compiler/issues/1225.release.wat +++ b/tests/compiler/issues/1225.release.wat @@ -1065,7 +1065,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store $0 global.get $~lib/rt/itcms/total @@ -1119,7 +1119,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 $0 i32.eqz @@ -1127,7 +1127,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $3 + local.get $2 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1142,16 +1142,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $0 - local.get $1 + local.get $3 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow $0 i32.const 0 i32.lt_s @@ -1159,7 +1159,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1167,7 +1167,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1194,22 +1194,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load $0 - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1218,19 +1218,19 @@ local.get $0 i32.const 32 i32.add - local.tee $4 - local.get $1 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store $0 @@ -1242,8 +1242,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load $0 i32.const -3 i32.and @@ -1256,12 +1256,12 @@ i32.const 12 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load $0 offset=8 local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store $0 offset=4 local.get $0 @@ -1275,7 +1275,7 @@ i32.and i32.or i32.store $0 offset=4 - local.get $1 + local.get $2 local.get $0 i32.store $0 offset=8 global.get $~lib/rt/itcms/total @@ -1294,7 +1294,7 @@ i32.const 0 i32.const 12 memory.fill $0 - local.get $2 + local.get $1 local.get $0 i32.store $0 local.get $0 diff --git a/tests/compiler/issues/2166.release.wat b/tests/compiler/issues/2166.release.wat index 63021ba6d1..d99526b584 100644 --- a/tests/compiler/issues/2166.release.wat +++ b/tests/compiler/issues/2166.release.wat @@ -1139,17 +1139,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load $0 - 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 @@ -1158,19 +1158,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 $0 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 $0 diff --git a/tests/compiler/logical.release.wat b/tests/compiler/logical.release.wat index 8e54ca9c12..3f945ea591 100644 --- a/tests/compiler/logical.release.wat +++ b/tests/compiler/logical.release.wat @@ -1167,7 +1167,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store $0 global.get $~lib/rt/itcms/total @@ -1221,7 +1221,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 $0 i32.eqz @@ -1229,7 +1229,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $3 + local.get $2 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1244,16 +1244,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $0 - local.get $1 + local.get $3 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow $0 i32.const 0 i32.lt_s @@ -1261,7 +1261,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1269,7 +1269,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1296,22 +1296,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load $0 - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1320,19 +1320,19 @@ local.get $0 i32.const 32 i32.add - local.tee $4 - local.get $1 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store $0 @@ -1344,8 +1344,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load $0 i32.const -3 i32.and @@ -1358,12 +1358,12 @@ i32.const 0 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load $0 offset=8 local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store $0 offset=4 local.get $0 @@ -1377,7 +1377,7 @@ i32.and i32.or i32.store $0 offset=4 - local.get $1 + local.get $2 local.get $0 i32.store $0 offset=8 global.get $~lib/rt/itcms/total @@ -1396,7 +1396,7 @@ i32.const 0 i32.const 0 memory.fill $0 - local.get $2 + local.get $1 local.get $0 i32.store $0 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/managed-cast.release.wat b/tests/compiler/managed-cast.release.wat index 1e60cab21e..219e45f890 100644 --- a/tests/compiler/managed-cast.release.wat +++ b/tests/compiler/managed-cast.release.wat @@ -1134,17 +1134,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load $0 - 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 @@ -1153,19 +1153,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 $0 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 $0 diff --git a/tests/compiler/new.release.wat b/tests/compiler/new.release.wat index db2730aed8..fa29e9d18f 100644 --- a/tests/compiler/new.release.wat +++ b/tests/compiler/new.release.wat @@ -1170,17 +1170,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load $0 - 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 @@ -1189,19 +1189,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 $0 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 $0 diff --git a/tests/compiler/optional-typeparameters.release.wat b/tests/compiler/optional-typeparameters.release.wat index 1ba5340d3d..996b995586 100644 --- a/tests/compiler/optional-typeparameters.release.wat +++ b/tests/compiler/optional-typeparameters.release.wat @@ -1156,17 +1156,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load $0 - 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 @@ -1175,19 +1175,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 $0 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 $0 diff --git a/tests/compiler/reexport.release.wat b/tests/compiler/reexport.release.wat index c79ebfcd09..30efdb10d3 100644 --- a/tests/compiler/reexport.release.wat +++ b/tests/compiler/reexport.release.wat @@ -1083,7 +1083,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 @@ -1091,7 +1091,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $2 + local.get $1 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1106,16 +1106,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $2 local.get $0 - local.get $1 + local.get $2 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $2 memory.grow $0 i32.const 0 i32.lt_s @@ -1123,7 +1123,7 @@ unreachable end end - local.get $2 + local.get $1 local.get $0 i32.const 16 i32.shl @@ -1131,7 +1131,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 @@ -1158,22 +1158,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 $0 - local.tee $3 + local.tee $2 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + 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 @@ -1182,19 +1182,19 @@ local.get $0 i32.const 32 i32.add - local.tee $3 - local.get $1 + local.tee $2 + local.get $3 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $1 local.get $2 - local.get $3 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $3 + local.get $2 i32.const -2 i32.and i32.store $0 diff --git a/tests/compiler/rereexport.release.wat b/tests/compiler/rereexport.release.wat index 39827e791d..bc9b30a320 100644 --- a/tests/compiler/rereexport.release.wat +++ b/tests/compiler/rereexport.release.wat @@ -1208,7 +1208,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store $0 global.get $~lib/rt/itcms/total @@ -1262,7 +1262,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 $0 i32.eqz @@ -1270,7 +1270,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $3 + local.get $2 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1285,16 +1285,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $0 - local.get $1 + local.get $3 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow $0 i32.const 0 i32.lt_s @@ -1302,7 +1302,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1310,7 +1310,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1337,22 +1337,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load $0 - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1361,19 +1361,19 @@ local.get $0 i32.const 32 i32.add - local.tee $4 - local.get $1 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store $0 @@ -1385,8 +1385,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load $0 i32.const -3 i32.and @@ -1399,12 +1399,12 @@ i32.const 4 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load $0 offset=8 local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store $0 offset=4 local.get $0 @@ -1418,7 +1418,7 @@ i32.and i32.or i32.store $0 offset=4 - local.get $1 + local.get $2 local.get $0 i32.store $0 offset=8 global.get $~lib/rt/itcms/total @@ -1436,7 +1436,7 @@ local.tee $0 i32.const 0 i32.store $0 align=1 - local.get $2 + local.get $1 local.get $0 i32.store $0 local.get $0 diff --git a/tests/compiler/resolve-function-expression.release.wat b/tests/compiler/resolve-function-expression.release.wat index 2228aadde7..1d1b216f16 100644 --- a/tests/compiler/resolve-function-expression.release.wat +++ b/tests/compiler/resolve-function-expression.release.wat @@ -1140,7 +1140,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1424 - local.set $2 + local.set $1 br $__inlined_func$~lib/util/number/itoa32 end global.get $~lib/memory/__stack_pointer @@ -1202,12 +1202,12 @@ i32.add end end - local.tee $1 + local.tee $2 i32.const 1 i32.shl local.get $3 i32.add - local.tee $4 + local.tee $6 i32.const 1073741804 i32.ge_u if @@ -1224,12 +1224,12 @@ if block $__inlined_func$~lib/rt/itcms/interrupt i32.const 2048 - local.set $2 + local.set $1 loop $do-loop|0 - local.get $2 + local.get $1 call $~lib/rt/itcms/step i32.sub - local.set $2 + local.set $1 global.get $~lib/rt/itcms/state i32.eqz if @@ -1245,20 +1245,20 @@ global.set $~lib/rt/itcms/threshold br $__inlined_func$~lib/rt/itcms/interrupt end - local.get $2 + local.get $1 i32.const 0 i32.gt_s br_if $do-loop|0 end global.get $~lib/rt/itcms/total - local.tee $2 + local.tee $1 global.get $~lib/rt/itcms/threshold i32.sub i32.const 1024 i32.lt_u i32.const 10 i32.shl - local.get $2 + local.get $1 i32.add global.set $~lib/rt/itcms/threshold end @@ -1270,10 +1270,10 @@ end global.get $~lib/rt/tlsf/ROOT local.set $7 - local.get $4 + local.get $6 i32.const 16 i32.add - local.tee $2 + local.tee $1 i32.const 1073741820 i32.gt_u if @@ -1286,28 +1286,28 @@ end local.get $7 i32.const 12 - local.get $2 + local.get $1 i32.const 19 i32.add i32.const -16 i32.and i32.const 4 i32.sub - local.get $2 + local.get $1 i32.const 12 i32.le_u select local.tee $8 call $~lib/rt/tlsf/searchBlock - local.tee $2 + local.tee $1 i32.eqz if memory.size $0 - local.tee $2 + local.tee $1 i32.const 4 local.get $7 i32.load $0 offset=1568 - local.get $2 + local.get $1 i32.const 16 i32.shl i32.const 4 @@ -1336,16 +1336,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $6 - local.get $2 - local.get $6 + local.tee $4 + local.get $1 + local.get $4 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $6 + local.get $4 memory.grow $0 i32.const 0 i32.lt_s @@ -1354,7 +1354,7 @@ end end local.get $7 - local.get $2 + local.get $1 i32.const 16 i32.shl memory.size $0 @@ -1364,7 +1364,7 @@ local.get $7 local.get $8 call $~lib/rt/tlsf/searchBlock - local.tee $2 + local.tee $1 i32.eqz if i32.const 0 @@ -1376,7 +1376,7 @@ end end local.get $8 - local.get $2 + local.get $1 i32.load $0 i32.const -4 i32.and @@ -1390,11 +1390,11 @@ unreachable end local.get $7 - local.get $2 + local.get $1 call $~lib/rt/tlsf/removeBlock - local.get $2 + local.get $1 i32.load $0 - local.set $9 + local.set $4 local.get $8 i32.const 4 i32.add @@ -1408,89 +1408,89 @@ call $~lib/builtins/abort unreachable end - local.get $9 + local.get $4 i32.const -4 i32.and local.get $8 i32.sub - local.tee $6 + local.tee $9 i32.const 16 i32.ge_u if - local.get $2 + local.get $1 local.get $8 - local.get $9 + local.get $4 i32.const 2 i32.and i32.or i32.store $0 - local.get $2 + local.get $1 i32.const 4 i32.add local.get $8 i32.add - local.tee $8 - local.get $6 + local.tee $4 + local.get $9 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 local.get $7 - local.get $8 + local.get $4 call $~lib/rt/tlsf/insertBlock else - local.get $2 - local.get $9 + local.get $1 + local.get $4 i32.const -2 i32.and i32.store $0 - local.get $2 + local.get $1 i32.const 4 i32.add - local.get $2 + local.get $1 i32.load $0 i32.const -4 i32.and i32.add - local.tee $6 - local.get $6 + local.tee $4 + local.get $4 i32.load $0 i32.const -3 i32.and i32.store $0 end - local.get $2 + local.get $1 i32.const 1 i32.store $0 offset=12 - local.get $2 - local.get $4 + local.get $1 + local.get $6 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $6 + local.tee $4 i32.load $0 offset=8 local.set $7 - local.get $2 - local.get $6 + local.get $1 + local.get $4 global.get $~lib/rt/itcms/white i32.or i32.store $0 offset=4 - local.get $2 + local.get $1 local.get $7 i32.store $0 offset=8 local.get $7 - local.get $2 + local.get $1 local.get $7 i32.load $0 offset=4 i32.const 3 i32.and i32.or i32.store $0 offset=4 - local.get $6 - local.get $2 + local.get $4 + local.get $1 i32.store $0 offset=8 global.get $~lib/rt/itcms/total - local.get $2 + local.get $1 i32.load $0 i32.const -4 i32.and @@ -1498,17 +1498,17 @@ i32.add i32.add global.set $~lib/rt/itcms/total - local.get $2 + local.get $1 i32.const 20 i32.add - local.tee $2 + local.tee $1 i32.const 0 - local.get $4 + local.get $6 memory.fill $0 local.get $5 - local.get $2 + local.get $1 i32.store $0 - local.get $2 + local.get $1 local.get $3 i32.add local.set $4 @@ -1526,10 +1526,10 @@ i32.div_u local.set $0 local.get $4 - local.get $1 + local.get $2 i32.const 4 i32.sub - local.tee $1 + local.tee $2 i32.const 1 i32.shl i32.add @@ -1561,10 +1561,10 @@ i32.ge_u if local.get $4 - local.get $1 + local.get $2 i32.const 2 i32.sub - local.tee $1 + local.tee $2 i32.const 1 i32.shl i32.add @@ -1587,7 +1587,7 @@ i32.ge_u if local.get $4 - local.get $1 + local.get $2 i32.const 2 i32.sub i32.const 1 @@ -1602,7 +1602,7 @@ i32.store $0 else local.get $4 - local.get $1 + local.get $2 i32.const 1 i32.sub i32.const 1 @@ -1615,7 +1615,7 @@ end local.get $3 if - local.get $2 + local.get $1 i32.const 45 i32.store16 $0 end @@ -1624,7 +1624,7 @@ i32.add global.set $~lib/memory/__stack_pointer end - local.get $2 + local.get $1 ) (func $~lib/rt/__visit_members (type $i32_=>_none) (param $0 i32) block $invalid diff --git a/tests/compiler/resolve-new.release.wat b/tests/compiler/resolve-new.release.wat index 60f37707af..856546c55d 100644 --- a/tests/compiler/resolve-new.release.wat +++ b/tests/compiler/resolve-new.release.wat @@ -1114,7 +1114,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store $0 global.get $~lib/rt/itcms/total @@ -1168,7 +1168,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 $0 i32.eqz @@ -1176,7 +1176,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $3 + local.get $2 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1191,16 +1191,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $0 - local.get $1 + local.get $3 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow $0 i32.const 0 i32.lt_s @@ -1208,7 +1208,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1216,7 +1216,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1243,22 +1243,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load $0 - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1267,19 +1267,19 @@ local.get $0 i32.const 32 i32.add - local.tee $4 - local.get $1 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store $0 @@ -1291,8 +1291,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load $0 i32.const -3 i32.and @@ -1305,12 +1305,12 @@ i32.const 0 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load $0 offset=8 local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store $0 offset=4 local.get $0 @@ -1324,7 +1324,7 @@ i32.and i32.or i32.store $0 offset=4 - local.get $1 + local.get $2 local.get $0 i32.store $0 offset=8 global.get $~lib/rt/itcms/total @@ -1343,7 +1343,7 @@ i32.const 0 i32.const 0 memory.fill $0 - local.get $2 + local.get $1 local.get $0 i32.store $0 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/rt/finalize.release.wat b/tests/compiler/rt/finalize.release.wat index 4aab96f3cf..37d1bdff8e 100644 --- a/tests/compiler/rt/finalize.release.wat +++ b/tests/compiler/rt/finalize.release.wat @@ -1066,7 +1066,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store $0 global.get $~lib/rt/itcms/total @@ -1120,7 +1120,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 $0 i32.eqz @@ -1128,7 +1128,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $3 + local.get $2 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1143,16 +1143,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $0 - local.get $1 + local.get $3 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow $0 i32.const 0 i32.lt_s @@ -1160,7 +1160,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1168,7 +1168,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1195,22 +1195,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load $0 - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1219,19 +1219,19 @@ local.get $0 i32.const 32 i32.add - local.tee $4 - local.get $1 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store $0 @@ -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 $0 i32.const -3 i32.and @@ -1257,12 +1257,12 @@ i32.const 0 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load $0 offset=8 local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store $0 offset=4 local.get $0 @@ -1276,7 +1276,7 @@ i32.and i32.or i32.store $0 offset=4 - local.get $1 + local.get $2 local.get $0 i32.store $0 offset=8 global.get $~lib/rt/itcms/total @@ -1295,7 +1295,7 @@ i32.const 0 i32.const 0 memory.fill $0 - local.get $2 + local.get $1 local.get $0 i32.store $0 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/rt/instanceof.release.wat b/tests/compiler/rt/instanceof.release.wat index 78da3aaff6..abebb355f0 100644 --- a/tests/compiler/rt/instanceof.release.wat +++ b/tests/compiler/rt/instanceof.release.wat @@ -1173,17 +1173,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load $0 - 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 @@ -1192,19 +1192,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 $0 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 $0 diff --git a/tests/compiler/std/new.release.wat b/tests/compiler/std/new.release.wat index ab69299fdb..5bcd050b46 100644 --- a/tests/compiler/std/new.release.wat +++ b/tests/compiler/std/new.release.wat @@ -1053,7 +1053,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store $0 global.get $~lib/rt/itcms/total @@ -1107,7 +1107,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 $0 i32.eqz @@ -1115,7 +1115,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $3 + local.get $2 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1130,16 +1130,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $0 - local.get $1 + local.get $3 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow $0 i32.const 0 i32.lt_s @@ -1147,7 +1147,7 @@ unreachable end end - local.get $3 + 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 $3 + 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 $3 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load $0 - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $4 + 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 $4 - local.get $1 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store $0 @@ -1230,8 +1230,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load $0 i32.const -3 i32.and @@ -1244,12 +1244,12 @@ i32.const 8 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load $0 offset=8 local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store $0 offset=4 local.get $0 @@ -1263,7 +1263,7 @@ i32.and i32.or i32.store $0 offset=4 - local.get $1 + local.get $2 local.get $0 i32.store $0 offset=8 global.get $~lib/rt/itcms/total @@ -1281,7 +1281,7 @@ local.tee $0 i64.const 0 i64.store $0 align=1 - local.get $2 + local.get $1 local.get $0 i32.store $0 local.get $0 diff --git a/tests/compiler/std/operator-overloading.release.wat b/tests/compiler/std/operator-overloading.release.wat index 02bfce9f73..cf1af27f5c 100644 --- a/tests/compiler/std/operator-overloading.release.wat +++ b/tests/compiler/std/operator-overloading.release.wat @@ -1199,17 +1199,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load $0 - 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 @@ -1218,19 +1218,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 $0 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 $0 diff --git a/tests/compiler/super-inline.release.wat b/tests/compiler/super-inline.release.wat index f899982b71..477472b805 100644 --- a/tests/compiler/super-inline.release.wat +++ b/tests/compiler/super-inline.release.wat @@ -1142,17 +1142,17 @@ call $~lib/rt/tlsf/removeBlock local.get $1 i32.load $0 - 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 $0 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 $0 diff --git a/tests/compiler/while.release.wat b/tests/compiler/while.release.wat index dcf9fcd656..e715913061 100644 --- a/tests/compiler/while.release.wat +++ b/tests/compiler/while.release.wat @@ -1564,7 +1564,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.tee $2 + local.tee $1 i32.const 0 i32.store $0 global.get $~lib/rt/itcms/total @@ -1618,7 +1618,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 $0 i32.eqz @@ -1626,7 +1626,7 @@ memory.size $0 local.tee $0 i32.const 4 - local.get $3 + local.get $2 i32.load $0 offset=1568 local.get $0 i32.const 16 @@ -1641,16 +1641,16 @@ i32.and i32.const 16 i32.shr_u - local.tee $1 + local.tee $3 local.get $0 - local.get $1 + local.get $3 i32.gt_s select memory.grow $0 i32.const 0 i32.lt_s if - local.get $1 + local.get $3 memory.grow $0 i32.const 0 i32.lt_s @@ -1658,7 +1658,7 @@ unreachable end end - local.get $3 + local.get $2 local.get $0 i32.const 16 i32.shl @@ -1666,7 +1666,7 @@ i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - local.get $3 + local.get $2 call $~lib/rt/tlsf/searchBlock local.tee $0 i32.eqz @@ -1693,22 +1693,22 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $2 local.get $0 call $~lib/rt/tlsf/removeBlock local.get $0 i32.load $0 - local.tee $4 + local.tee $3 i32.const -4 i32.and i32.const 28 i32.sub - local.tee $1 + local.tee $4 i32.const 16 i32.ge_u if local.get $0 - local.get $4 + local.get $3 i32.const 2 i32.and i32.const 28 @@ -1717,19 +1717,19 @@ local.get $0 i32.const 32 i32.add - local.tee $4 - local.get $1 + local.tee $3 + local.get $4 i32.const 4 i32.sub i32.const 1 i32.or i32.store $0 + local.get $2 local.get $3 - local.get $4 call $~lib/rt/tlsf/insertBlock else local.get $0 - local.get $4 + local.get $3 i32.const -2 i32.and i32.store $0 @@ -1741,8 +1741,8 @@ i32.const -4 i32.and i32.add - local.tee $1 - local.get $1 + local.tee $2 + local.get $2 i32.load $0 i32.const -3 i32.and @@ -1755,12 +1755,12 @@ i32.const 0 i32.store $0 offset=16 global.get $~lib/rt/itcms/fromSpace - local.tee $1 + local.tee $2 i32.load $0 offset=8 local.set $3 local.get $0 global.get $~lib/rt/itcms/white - local.get $1 + local.get $2 i32.or i32.store $0 offset=4 local.get $0 @@ -1774,7 +1774,7 @@ i32.and i32.or i32.store $0 offset=4 - local.get $1 + local.get $2 local.get $0 i32.store $0 offset=8 global.get $~lib/rt/itcms/total @@ -1793,7 +1793,7 @@ i32.const 0 i32.const 0 memory.fill $0 - local.get $2 + local.get $1 local.get $0 i32.store $0 global.get $~lib/memory/__stack_pointer From b8c820e9ca3689fe2ab72f4d1d351a8816309cd7 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 5 Nov 2022 09:25:44 +0200 Subject: [PATCH 05/10] 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 748a232ca9..5a5574e1f4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "110.0.0-nightly.20221104", + "binaryen": "110.0.0-nightly.20221105", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "110.0.0-nightly.20221104", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221104.tgz", - "integrity": "sha512-WnHidJjNy9EJDfhI1PYBQjXVCKJsqXxcIrG2TP0L5ptQWoXJXcFyCKRe7D49jW1R2osUNg111A78qoFOeTfs3g==", + "version": "110.0.0-nightly.20221105", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221105.tgz", + "integrity": "sha512-OBESOc51q3SwgG8Uv8nMzGnSq7LJpSB/Fu8B3AjlZg6YtCEwRnlDWlnwNB6mdql+VdexfKmNcsrs4K7MYidmdQ==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "110.0.0-nightly.20221104", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221104.tgz", - "integrity": "sha512-WnHidJjNy9EJDfhI1PYBQjXVCKJsqXxcIrG2TP0L5ptQWoXJXcFyCKRe7D49jW1R2osUNg111A78qoFOeTfs3g==" + "version": "110.0.0-nightly.20221105", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221105.tgz", + "integrity": "sha512-OBESOc51q3SwgG8Uv8nMzGnSq7LJpSB/Fu8B3AjlZg6YtCEwRnlDWlnwNB6mdql+VdexfKmNcsrs4K7MYidmdQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 5b6cc331e6..788eb8ef3e 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "110.0.0-nightly.20221104", + "binaryen": "110.0.0-nightly.20221105", "long": "^5.2.0" }, "devDependencies": { From bf70a517f82562f03f898abc50b9c693273f82de Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 9 Nov 2022 10:56:31 +0200 Subject: [PATCH 06/10] cleanups --- tests/compiler/instanceof-class.release.wat | 1661 -------------- tests/compiler/rt/instanceof.release.wat | 2255 ------------------- 2 files changed, 3916 deletions(-) delete mode 100644 tests/compiler/instanceof-class.release.wat delete mode 100644 tests/compiler/rt/instanceof.release.wat diff --git a/tests/compiler/instanceof-class.release.wat b/tests/compiler/instanceof-class.release.wat deleted file mode 100644 index 7cdaeea66f..0000000000 --- a/tests/compiler/instanceof-class.release.wat +++ /dev/null @@ -1,1661 +0,0 @@ -(module - (type $none_=>_none (func_subtype func)) - (type $i32_i32_=>_none (func_subtype (param i32 i32) func)) - (type $i32_=>_i32 (func_subtype (param i32) (result i32) func)) - (type $i32_=>_none (func_subtype (param i32) func)) - (type $i32_i32_i32_i32_=>_none (func_subtype (param i32 i32 i32 i32) func)) - (type $i32_i32_i32_=>_none (func_subtype (param i32 i32 i32) func)) - (type $none_=>_i32 (func_subtype (result i32) func)) - (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)) - (global $~lib/rt/itcms/state (mut i32) (i32.const 0)) - (global $~lib/rt/itcms/visitCount (mut i32) (i32.const 0)) - (global $~lib/rt/itcms/pinSpace (mut i32) (i32.const 0)) - (global $~lib/rt/itcms/iter (mut i32) (i32.const 0)) - (global $~lib/rt/itcms/toSpace (mut i32) (i32.const 0)) - (global $~lib/rt/itcms/white (mut i32) (i32.const 0)) - (global $~lib/rt/itcms/fromSpace (mut i32) (i32.const 0)) - (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) - (global $instanceof-class/a (mut i32) (i32.const 0)) - (global $instanceof-class/b (mut i32) (i32.const 0)) - (global $~lib/memory/__stack_pointer (mut i32) (i32.const 34332)) - (memory $0 1) - (data (i32.const 1036) "<") - (data (i32.const 1048) "\01\00\00\00(\00\00\00A\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e") - (data (i32.const 1100) "<") - (data (i32.const 1112) "\01\00\00\00 \00\00\00~\00l\00i\00b\00/\00r\00t\00/\00i\00t\00c\00m\00s\00.\00t\00s") - (data (i32.const 1228) "<") - (data (i32.const 1240) "\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e") - (data (i32.const 1292) ",") - (data (i32.const 1304) "\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s") - (data (i32.const 1372) "<") - (data (i32.const 1384) "\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s") - (data (i32.const 1436) "<") - (data (i32.const 1448) "\01\00\00\00&\00\00\00i\00n\00s\00t\00a\00n\00c\00e\00o\00f\00-\00c\00l\00a\00s\00s\00.\00t\00s") - (data (i32.const 1504) "\07\00\00\00 \00\00\00\00\00\00\00 ") - (data (i32.const 1532) " \00\00\00\04\00\00\00 \00\00\00\00\00\00\00 \00\00\00\00\00\00\00 \00\00\00\05") - (export "memory" (memory $0)) - (start $~start) - (func $~lib/rt/itcms/visitRoots (type $none_=>_none) - (local $0 i32) - (local $1 i32) - global.get $instanceof-class/a - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - global.get $instanceof-class/b - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - i32.const 1248 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - i32.const 1056 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - global.get $~lib/rt/itcms/pinSpace - local.tee $1 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.set $0 - loop $while-continue|0 - local.get $0 - local.get $1 - i32.ne - if - local.get $0 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1120 - i32.const 159 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 20 - i32.add - call $~lib/rt/__visit_members - local.get $0 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.set $0 - br $while-continue|0 - end - end - ) - (func $~lib/rt/tlsf/removeBlock (type $i32_i32_=>_none) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $1 - i32.load $0 - local.tee $2 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 268 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const -4 - i32.and - local.tee $2 - i32.const 12 - i32.lt_u - if - i32.const 0 - i32.const 1392 - i32.const 270 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 256 - i32.lt_u - if (result i32) - local.get $2 - i32.const 4 - i32.shr_u - else - i32.const 31 - i32.const 1073741820 - local.get $2 - local.get $2 - i32.const 1073741820 - i32.ge_u - select - local.tee $2 - i32.clz - i32.sub - local.tee $4 - i32.const 7 - i32.sub - local.set $3 - local.get $2 - local.get $4 - i32.const 4 - i32.sub - i32.shr_u - i32.const 16 - i32.xor - end - local.tee $2 - i32.const 16 - i32.lt_u - local.get $3 - i32.const 23 - i32.lt_u - i32.and - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 284 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load $0 offset=8 - local.set $5 - local.get $1 - i32.load $0 offset=4 - local.tee $4 - if - local.get $4 - local.get $5 - i32.store $0 offset=8 - end - local.get $5 - if - local.get $5 - local.get $4 - i32.store $0 offset=4 - end - local.get $1 - local.get $0 - local.get $3 - i32.const 4 - i32.shl - local.get $2 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load $0 offset=96 - i32.eq - if - local.get $0 - local.get $3 - i32.const 4 - i32.shl - local.get $2 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $5 - i32.store $0 offset=96 - local.get $5 - i32.eqz - if - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - local.tee $1 - i32.load $0 offset=4 - i32.const -2 - local.get $2 - i32.rotl - i32.and - local.set $2 - local.get $1 - local.get $2 - i32.store $0 offset=4 - local.get $2 - i32.eqz - if - local.get $0 - local.get $0 - i32.load $0 - i32.const -2 - local.get $3 - i32.rotl - i32.and - i32.store $0 - end - end - end - ) - (func $~lib/rt/tlsf/insertBlock (type $i32_i32_=>_none) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $1 - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 201 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load $0 - local.tee $3 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 203 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 4 - i32.add - local.get $1 - i32.load $0 - i32.const -4 - i32.and - i32.add - local.tee $4 - i32.load $0 - local.tee $2 - i32.const 1 - i32.and - if - local.get $0 - local.get $4 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $3 - i32.const 4 - i32.add - local.get $2 - i32.const -4 - i32.and - i32.add - local.tee $3 - i32.store $0 - local.get $1 - i32.const 4 - i32.add - local.get $1 - i32.load $0 - i32.const -4 - i32.and - i32.add - local.tee $4 - i32.load $0 - local.set $2 - end - local.get $3 - i32.const 2 - i32.and - if - local.get $1 - i32.const 4 - i32.sub - i32.load $0 - local.tee $1 - i32.load $0 - local.tee $6 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 221 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $6 - i32.const 4 - i32.add - local.get $3 - i32.const -4 - i32.and - i32.add - local.tee $3 - i32.store $0 - end - local.get $4 - local.get $2 - i32.const 2 - i32.or - i32.store $0 - local.get $3 - i32.const -4 - i32.and - local.tee $2 - i32.const 12 - i32.lt_u - if - i32.const 0 - i32.const 1392 - i32.const 233 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $4 - local.get $1 - i32.const 4 - i32.add - local.get $2 - i32.add - i32.ne - if - i32.const 0 - i32.const 1392 - i32.const 234 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $4 - i32.const 4 - i32.sub - local.get $1 - i32.store $0 - local.get $2 - i32.const 256 - i32.lt_u - if (result i32) - local.get $2 - i32.const 4 - i32.shr_u - else - i32.const 31 - i32.const 1073741820 - local.get $2 - local.get $2 - i32.const 1073741820 - i32.ge_u - select - local.tee $2 - i32.clz - i32.sub - local.tee $3 - i32.const 7 - i32.sub - local.set $5 - local.get $2 - local.get $3 - i32.const 4 - i32.sub - i32.shr_u - i32.const 16 - i32.xor - end - local.tee $2 - i32.const 16 - i32.lt_u - local.get $5 - i32.const 23 - i32.lt_u - i32.and - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 251 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $5 - i32.const 4 - i32.shl - local.get $2 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load $0 offset=96 - local.set $3 - local.get $1 - i32.const 0 - i32.store $0 offset=4 - local.get $1 - local.get $3 - i32.store $0 offset=8 - local.get $3 - if - local.get $3 - local.get $1 - i32.store $0 offset=4 - end - local.get $0 - local.get $5 - i32.const 4 - i32.shl - local.get $2 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store $0 offset=96 - local.get $0 - local.get $0 - i32.load $0 - i32.const 1 - local.get $5 - i32.shl - i32.or - i32.store $0 - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - local.tee $0 - local.get $0 - i32.load $0 offset=4 - i32.const 1 - local.get $2 - i32.shl - i32.or - i32.store $0 offset=4 - ) - (func $~lib/rt/tlsf/addMemory (type $i32_i32_i32_=>_none) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - local.get $2 - i32.gt_u - if - i32.const 0 - i32.const 1392 - i32.const 377 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - local.set $1 - local.get $0 - i32.load $0 offset=1568 - local.tee $4 - if - local.get $4 - i32.const 4 - i32.add - local.get $1 - i32.gt_u - if - i32.const 0 - i32.const 1392 - i32.const 384 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 16 - i32.sub - local.get $4 - i32.eq - if - local.get $4 - i32.load $0 - local.set $3 - local.get $1 - i32.const 16 - i32.sub - local.set $1 - end - else - local.get $0 - i32.const 1572 - i32.add - local.get $1 - i32.gt_u - if - i32.const 0 - i32.const 1392 - i32.const 397 - i32.const 5 - call $~lib/builtins/abort - unreachable - end - end - local.get $2 - i32.const -16 - i32.and - local.get $1 - i32.sub - local.tee $2 - i32.const 20 - i32.lt_u - if - return - end - local.get $1 - local.get $3 - i32.const 2 - i32.and - local.get $2 - i32.const 8 - i32.sub - local.tee $2 - i32.const 1 - i32.or - i32.or - i32.store $0 - local.get $1 - i32.const 0 - i32.store $0 offset=4 - local.get $1 - i32.const 0 - i32.store $0 offset=8 - local.get $1 - i32.const 4 - i32.add - local.get $2 - i32.add - local.tee $2 - i32.const 2 - i32.store $0 - local.get $0 - local.get $2 - i32.store $0 offset=1568 - local.get $0 - local.get $1 - call $~lib/rt/tlsf/insertBlock - ) - (func $~lib/rt/tlsf/initialize (type $none_=>_none) - (local $0 i32) - (local $1 i32) - memory.size $0 - local.tee $1 - i32.const 0 - i32.le_s - if (result i32) - i32.const 1 - local.get $1 - i32.sub - memory.grow $0 - i32.const 0 - i32.lt_s - else - i32.const 0 - end - if - unreachable - end - i32.const 34336 - i32.const 0 - i32.store $0 - i32.const 35904 - i32.const 0 - i32.store $0 - loop $for-loop|0 - local.get $0 - i32.const 23 - i32.lt_u - if - local.get $0 - i32.const 2 - i32.shl - i32.const 34336 - i32.add - i32.const 0 - i32.store $0 offset=4 - i32.const 0 - local.set $1 - loop $for-loop|1 - local.get $1 - i32.const 16 - i32.lt_u - if - local.get $0 - i32.const 4 - i32.shl - local.get $1 - i32.add - i32.const 2 - i32.shl - i32.const 34336 - i32.add - i32.const 0 - i32.store $0 offset=96 - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $for-loop|1 - end - end - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|0 - end - end - i32.const 34336 - i32.const 35908 - memory.size $0 - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - i32.const 34336 - global.set $~lib/rt/tlsf/ROOT - ) - (func $~lib/rt/itcms/step (type $none_=>_i32) (result i32) - (local $0 i32) - (local $1 i32) - (local $2 i32) - block $break|0 - block $case2|0 - block $case1|0 - block $case0|0 - global.get $~lib/rt/itcms/state - br_table $case0|0 $case1|0 $case2|0 $break|0 - end - i32.const 1 - global.set $~lib/rt/itcms/state - i32.const 0 - global.set $~lib/rt/itcms/visitCount - call $~lib/rt/itcms/visitRoots - global.get $~lib/rt/itcms/toSpace - global.set $~lib/rt/itcms/iter - global.get $~lib/rt/itcms/visitCount - return - end - global.get $~lib/rt/itcms/white - i32.eqz - local.set $1 - global.get $~lib/rt/itcms/iter - i32.load $0 offset=4 - i32.const -4 - i32.and - local.set $0 - loop $while-continue|1 - local.get $0 - global.get $~lib/rt/itcms/toSpace - i32.ne - if - local.get $0 - global.set $~lib/rt/itcms/iter - local.get $1 - local.get $0 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.ne - if - local.get $0 - local.get $0 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.get $1 - i32.or - i32.store $0 offset=4 - i32.const 0 - global.set $~lib/rt/itcms/visitCount - local.get $0 - i32.const 20 - i32.add - call $~lib/rt/__visit_members - global.get $~lib/rt/itcms/visitCount - return - end - local.get $0 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.set $0 - br $while-continue|1 - end - end - i32.const 0 - global.set $~lib/rt/itcms/visitCount - call $~lib/rt/itcms/visitRoots - global.get $~lib/rt/itcms/toSpace - global.get $~lib/rt/itcms/iter - i32.load $0 offset=4 - i32.const -4 - i32.and - i32.eq - if - global.get $~lib/memory/__stack_pointer - local.set $0 - loop $while-continue|0 - local.get $0 - i32.const 34332 - i32.lt_u - if - local.get $0 - i32.load $0 - 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 - local.set $0 - br $while-continue|0 - end - end - global.get $~lib/rt/itcms/iter - i32.load $0 offset=4 - i32.const -4 - i32.and - local.set $0 - loop $while-continue|2 - local.get $0 - global.get $~lib/rt/itcms/toSpace - i32.ne - if - local.get $1 - local.get $0 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.ne - if - local.get $0 - local.get $0 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.get $1 - i32.or - i32.store $0 offset=4 - local.get $0 - i32.const 20 - i32.add - call $~lib/rt/__visit_members - end - local.get $0 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.set $0 - br $while-continue|2 - end - end - global.get $~lib/rt/itcms/fromSpace - local.set $0 - global.get $~lib/rt/itcms/toSpace - global.set $~lib/rt/itcms/fromSpace - local.get $0 - global.set $~lib/rt/itcms/toSpace - local.get $1 - global.set $~lib/rt/itcms/white - local.get $0 - i32.load $0 offset=4 - i32.const -4 - i32.and - global.set $~lib/rt/itcms/iter - i32.const 2 - global.set $~lib/rt/itcms/state - end - global.get $~lib/rt/itcms/visitCount - return - end - global.get $~lib/rt/itcms/iter - local.tee $0 - global.get $~lib/rt/itcms/toSpace - i32.ne - if - local.get $0 - i32.load $0 offset=4 - local.tee $1 - i32.const -4 - i32.and - global.set $~lib/rt/itcms/iter - global.get $~lib/rt/itcms/white - i32.eqz - local.get $1 - i32.const 3 - i32.and - i32.ne - if - i32.const 0 - i32.const 1120 - i32.const 228 - i32.const 20 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 34332 - i32.lt_u - if - local.get $0 - i32.const 0 - i32.store $0 offset=4 - local.get $0 - i32.const 0 - i32.store $0 offset=8 - else - global.get $~lib/rt/itcms/total - local.get $0 - i32.load $0 - i32.const -4 - i32.and - i32.const 4 - i32.add - i32.sub - global.set $~lib/rt/itcms/total - local.get $0 - i32.const 4 - i32.add - local.tee $0 - i32.const 34332 - i32.ge_u - if - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.set $1 - local.get $0 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - i32.const 15 - i32.and - i32.const 1 - local.get $0 - select - if (result i32) - i32.const 1 - else - local.get $2 - i32.load $0 - i32.const 1 - i32.and - end - if - i32.const 0 - i32.const 1392 - i32.const 559 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $2 - i32.load $0 - i32.const 1 - i32.or - i32.store $0 - local.get $1 - local.get $2 - call $~lib/rt/tlsf/insertBlock - end - end - i32.const 10 - return - end - global.get $~lib/rt/itcms/toSpace - local.tee $0 - local.get $0 - i32.store $0 offset=4 - local.get $0 - local.get $0 - i32.store $0 offset=8 - i32.const 0 - global.set $~lib/rt/itcms/state - end - i32.const 0 - ) - (func $~lib/rt/tlsf/searchBlock (type $i32_=>_i32) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.load $0 offset=4 - i32.const -2 - i32.and - local.tee $1 - if (result i32) - local.get $0 - local.get $1 - i32.ctz - i32.const 2 - i32.shl - i32.add - i32.load $0 offset=96 - else - local.get $0 - i32.load $0 - i32.const -2 - i32.and - local.tee $1 - if (result i32) - local.get $0 - local.get $1 - i32.ctz - local.tee $2 - i32.const 2 - i32.shl - i32.add - i32.load $0 offset=4 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 343 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - i32.ctz - local.get $2 - i32.const 4 - i32.shl - i32.add - i32.const 2 - i32.shl - i32.add - i32.load $0 offset=96 - else - i32.const 0 - end - end - ) - (func $~lib/rt/itcms/__new (type $i32_=>_i32) (param $0 i32) (result i32) - (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 - 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 $2 - call $~lib/rt/tlsf/searchBlock - local.tee $1 - i32.eqz - if - memory.size $0 - local.tee $1 - i32.const 4 - local.get $2 - i32.load $0 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 $3 - local.get $1 - local.get $3 - i32.gt_s - select - memory.grow $0 - i32.const 0 - i32.lt_s - if - local.get $3 - memory.grow $0 - i32.const 0 - i32.lt_s - if - unreachable - end - end - local.get $2 - local.get $1 - i32.const 16 - i32.shl - memory.size $0 - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - local.get $2 - 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 $0 - 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 $1 - call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load $0 - 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 $1 - local.get $3 - i32.const 2 - i32.and - i32.const 28 - i32.or - i32.store $0 - local.get $1 - i32.const 32 - i32.add - local.tee $3 - local.get $4 - i32.const 4 - i32.sub - i32.const 1 - i32.or - i32.store $0 - local.get $2 - local.get $3 - call $~lib/rt/tlsf/insertBlock - else - local.get $1 - local.get $3 - i32.const -2 - i32.and - i32.store $0 - local.get $1 - i32.const 4 - i32.add - local.get $1 - i32.load $0 - i32.const -4 - i32.and - i32.add - local.tee $2 - local.get $2 - i32.load $0 - i32.const -3 - i32.and - i32.store $0 - end - local.get $1 - local.get $0 - i32.store $0 offset=12 - local.get $1 - i32.const 0 - i32.store $0 offset=16 - global.get $~lib/rt/itcms/fromSpace - local.tee $0 - i32.load $0 offset=8 - local.set $2 - local.get $1 - local.get $0 - global.get $~lib/rt/itcms/white - i32.or - i32.store $0 offset=4 - local.get $1 - local.get $2 - i32.store $0 offset=8 - local.get $2 - local.get $1 - local.get $2 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.or - i32.store $0 offset=4 - local.get $0 - local.get $1 - i32.store $0 offset=8 - global.get $~lib/rt/itcms/total - local.get $1 - i32.load $0 - 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 $0 - i32.const 0 - i32.const 0 - memory.fill $0 - local.get $0 - ) - (func $start:instanceof-class (type $none_=>_none) - (local $0 i32) - (local $1 i32) - memory.size $0 - i32.const 16 - i32.shl - i32.const 34332 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1172 - i32.const 1168 - i32.store $0 - i32.const 1176 - i32.const 1168 - i32.store $0 - i32.const 1168 - global.set $~lib/rt/itcms/pinSpace - i32.const 1204 - i32.const 1200 - i32.store $0 - i32.const 1208 - i32.const 1200 - i32.store $0 - i32.const 1200 - global.set $~lib/rt/itcms/toSpace - i32.const 1348 - i32.const 1344 - i32.store $0 - i32.const 1352 - i32.const 1344 - i32.store $0 - 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 - global.get $~lib/memory/__stack_pointer - i32.const 1564 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store $0 - local.get $0 - i32.const 3 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store $0 - global.get $~lib/memory/__stack_pointer - local.tee $1 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1564 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store $0 - local.get $0 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store $0 - 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 $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - global.set $instanceof-class/a - 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 - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store $0 - local.get $0 - i32.const 6 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store $0 - global.get $~lib/memory/__stack_pointer - local.tee $1 - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1564 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store $0 - local.get $0 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 5 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store $0 - 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 $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - global.set $instanceof-class/b - block $__inlined_func$instanceof-class/Child~instanceof (result i32) - i32.const 0 - global.get $instanceof-class/b - local.tee $1 - i32.eqz - br_if $__inlined_func$instanceof-class/Child~instanceof - drop - i32.const 1 - block $__inlined_func$~lib/rt/__instanceof (result i32) - local.get $1 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|0 - i32.const 1 - local.get $0 - i32.const 3 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|0 - end - end - i32.const 0 - end - br_if $__inlined_func$instanceof-class/Child~instanceof - drop - i32.const 1 - block $__inlined_func$~lib/rt/__instanceof9 (result i32) - local.get $1 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|011 - i32.const 1 - local.get $0 - i32.const 6 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof9 - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|011 - end - end - i32.const 0 - end - br_if $__inlined_func$instanceof-class/Child~instanceof - drop - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1456 - i32.const 17 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - return - end - i32.const 34352 - i32.const 34400 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - ) - (func $~lib/rt/__visit_members (type $i32_=>_none) (param $0 i32) - block $invalid - block $instanceof-class/Child - block $instanceof-class/Parent - block $instanceof-class/Parent - block $instanceof-class/Child - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load $0 - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $instanceof-class/Child $instanceof-class/Parent $instanceof-class/Parent $instanceof-class/Child $invalid - end - return - end - return - end - local.get $0 - i32.load $0 - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - return - end - return - end - return - end - return - end - return - end - unreachable - ) - (func $~start (type $none_=>_none) - call $start:instanceof-class - ) - (func $byn-split-outlined-A$~lib/rt/itcms/__visit (type $i32_=>_none) (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 $1 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $1 - global.get $~lib/rt/itcms/iter - i32.eq - if - local.get $1 - i32.load $0 offset=8 - local.tee $0 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $0 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.tee $0 - i32.eqz - if - local.get $1 - i32.load $0 offset=8 - i32.eqz - local.get $1 - i32.const 34332 - i32.lt_u - i32.and - 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 $1 - i32.load $0 offset=8 - local.tee $2 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $2 - i32.store $0 offset=8 - local.get $2 - local.get $0 - local.get $2 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.or - i32.store $0 offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 - i32.load $0 offset=12 - local.tee $0 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $0 - i32.const 1504 - i32.load $0 - i32.gt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 - i32.const 32 - i32.and - end - local.set $3 - local.get $2 - i32.load $0 offset=8 - local.set $0 - local.get $1 - global.get $~lib/rt/itcms/white - i32.eqz - i32.const 2 - local.get $3 - select - local.get $2 - i32.or - i32.store $0 offset=4 - local.get $1 - local.get $0 - i32.store $0 offset=8 - local.get $0 - local.get $1 - local.get $0 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.or - i32.store $0 offset=4 - local.get $2 - local.get $1 - i32.store $0 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.release.wat b/tests/compiler/rt/instanceof.release.wat deleted file mode 100644 index abebb355f0..0000000000 --- a/tests/compiler/rt/instanceof.release.wat +++ /dev/null @@ -1,2255 +0,0 @@ -(module - (type $none_=>_none (func_subtype func)) - (type $i32_=>_i32 (func_subtype (param i32) (result i32) func)) - (type $i32_i32_=>_none (func_subtype (param i32 i32) func)) - (type $none_=>_i32 (func_subtype (result i32) func)) - (type $i32_=>_none (func_subtype (param i32) func)) - (type $i32_i32_i32_i32_=>_none (func_subtype (param i32 i32 i32 i32) func)) - (type $i32_i32_i32_=>_none (func_subtype (param i32 i32 i32) func)) - (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)) - (global $~lib/rt/itcms/state (mut i32) (i32.const 0)) - (global $~lib/rt/itcms/visitCount (mut i32) (i32.const 0)) - (global $~lib/rt/itcms/pinSpace (mut i32) (i32.const 0)) - (global $~lib/rt/itcms/iter (mut i32) (i32.const 0)) - (global $~lib/rt/itcms/toSpace (mut i32) (i32.const 0)) - (global $~lib/rt/itcms/white (mut i32) (i32.const 0)) - (global $~lib/rt/itcms/fromSpace (mut i32) (i32.const 0)) - (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) - (global $rt/instanceof/animal (mut i32) (i32.const 0)) - (global $rt/instanceof/cat (mut i32) (i32.const 0)) - (global $rt/instanceof/blackcat (mut i32) (i32.const 0)) - (global $rt/instanceof/nullableAnimal (mut i32) (i32.const 0)) - (global $rt/instanceof/nullableCat (mut i32) (i32.const 0)) - (global $rt/instanceof/nullableBlackcat (mut i32) (i32.const 0)) - (global $~lib/memory/__stack_pointer (mut i32) (i32.const 34324)) - (global $~started (mut i32) (i32.const 0)) - (memory $0 1) - (data (i32.const 1036) "<") - (data (i32.const 1048) "\01\00\00\00(\00\00\00A\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e") - (data (i32.const 1100) "<") - (data (i32.const 1112) "\01\00\00\00 \00\00\00~\00l\00i\00b\00/\00r\00t\00/\00i\00t\00c\00m\00s\00.\00t\00s") - (data (i32.const 1228) "<") - (data (i32.const 1240) "\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e") - (data (i32.const 1292) ",") - (data (i32.const 1304) "\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s") - (data (i32.const 1372) "<") - (data (i32.const 1384) "\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s") - (data (i32.const 1436) "<") - (data (i32.const 1448) "\01\00\00\00 \00\00\00r\00t\00/\00i\00n\00s\00t\00a\00n\00c\00e\00o\00f\00.\00t\00s") - (data (i32.const 1504) "\06\00\00\00 \00\00\00\00\00\00\00 ") - (data (i32.const 1532) " \00\00\00\00\00\00\00 \00\00\00\03\00\00\00 \00\00\00\04") - (export "memory" (memory $0)) - (export "_start" (func $~start)) - (func $~lib/rt/itcms/visitRoots (type $none_=>_none) - (local $0 i32) - (local $1 i32) - global.get $rt/instanceof/animal - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - global.get $rt/instanceof/cat - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - global.get $rt/instanceof/blackcat - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - global.get $rt/instanceof/nullableAnimal - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - global.get $rt/instanceof/nullableCat - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - global.get $rt/instanceof/nullableBlackcat - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - i32.const 1248 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - i32.const 1056 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - global.get $~lib/rt/itcms/pinSpace - local.tee $1 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.set $0 - loop $while-continue|0 - local.get $0 - local.get $1 - i32.ne - if - local.get $0 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1120 - i32.const 159 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 20 - i32.add - call $~lib/rt/__visit_members - local.get $0 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.set $0 - br $while-continue|0 - end - end - ) - (func $~lib/rt/tlsf/removeBlock (type $i32_i32_=>_none) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $1 - i32.load $0 - local.tee $2 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 268 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const -4 - i32.and - local.tee $2 - i32.const 12 - i32.lt_u - if - i32.const 0 - i32.const 1392 - i32.const 270 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 256 - i32.lt_u - if (result i32) - local.get $2 - i32.const 4 - i32.shr_u - else - i32.const 31 - i32.const 1073741820 - local.get $2 - local.get $2 - i32.const 1073741820 - i32.ge_u - select - local.tee $2 - i32.clz - i32.sub - local.tee $4 - i32.const 7 - i32.sub - local.set $3 - local.get $2 - local.get $4 - i32.const 4 - i32.sub - i32.shr_u - i32.const 16 - i32.xor - end - local.tee $2 - i32.const 16 - i32.lt_u - local.get $3 - i32.const 23 - i32.lt_u - i32.and - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 284 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load $0 offset=8 - local.set $5 - local.get $1 - i32.load $0 offset=4 - local.tee $4 - if - local.get $4 - local.get $5 - i32.store $0 offset=8 - end - local.get $5 - if - local.get $5 - local.get $4 - i32.store $0 offset=4 - end - local.get $1 - local.get $0 - local.get $3 - i32.const 4 - i32.shl - local.get $2 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load $0 offset=96 - i32.eq - if - local.get $0 - local.get $3 - i32.const 4 - i32.shl - local.get $2 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $5 - i32.store $0 offset=96 - local.get $5 - i32.eqz - if - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - local.tee $1 - i32.load $0 offset=4 - i32.const -2 - local.get $2 - i32.rotl - i32.and - local.set $2 - local.get $1 - local.get $2 - i32.store $0 offset=4 - local.get $2 - i32.eqz - if - local.get $0 - local.get $0 - i32.load $0 - i32.const -2 - local.get $3 - i32.rotl - i32.and - i32.store $0 - end - end - end - ) - (func $~lib/rt/tlsf/insertBlock (type $i32_i32_=>_none) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $1 - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 201 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load $0 - local.tee $3 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 203 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 4 - i32.add - local.get $1 - i32.load $0 - i32.const -4 - i32.and - i32.add - local.tee $4 - i32.load $0 - local.tee $2 - i32.const 1 - i32.and - if - local.get $0 - local.get $4 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $3 - i32.const 4 - i32.add - local.get $2 - i32.const -4 - i32.and - i32.add - local.tee $3 - i32.store $0 - local.get $1 - i32.const 4 - i32.add - local.get $1 - i32.load $0 - i32.const -4 - i32.and - i32.add - local.tee $4 - i32.load $0 - local.set $2 - end - local.get $3 - i32.const 2 - i32.and - if - local.get $1 - i32.const 4 - i32.sub - i32.load $0 - local.tee $1 - i32.load $0 - local.tee $6 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 221 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $6 - i32.const 4 - i32.add - local.get $3 - i32.const -4 - i32.and - i32.add - local.tee $3 - i32.store $0 - end - local.get $4 - local.get $2 - i32.const 2 - i32.or - i32.store $0 - local.get $3 - i32.const -4 - i32.and - local.tee $2 - i32.const 12 - i32.lt_u - if - i32.const 0 - i32.const 1392 - i32.const 233 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $4 - local.get $1 - i32.const 4 - i32.add - local.get $2 - i32.add - i32.ne - if - i32.const 0 - i32.const 1392 - i32.const 234 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $4 - i32.const 4 - i32.sub - local.get $1 - i32.store $0 - local.get $2 - i32.const 256 - i32.lt_u - if (result i32) - local.get $2 - i32.const 4 - i32.shr_u - else - i32.const 31 - i32.const 1073741820 - local.get $2 - local.get $2 - i32.const 1073741820 - i32.ge_u - select - local.tee $2 - i32.clz - i32.sub - local.tee $3 - i32.const 7 - i32.sub - local.set $5 - local.get $2 - local.get $3 - i32.const 4 - i32.sub - i32.shr_u - i32.const 16 - i32.xor - end - local.tee $2 - i32.const 16 - i32.lt_u - local.get $5 - i32.const 23 - i32.lt_u - i32.and - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 251 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $5 - i32.const 4 - i32.shl - local.get $2 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load $0 offset=96 - local.set $3 - local.get $1 - i32.const 0 - i32.store $0 offset=4 - local.get $1 - local.get $3 - i32.store $0 offset=8 - local.get $3 - if - local.get $3 - local.get $1 - i32.store $0 offset=4 - end - local.get $0 - local.get $5 - i32.const 4 - i32.shl - local.get $2 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store $0 offset=96 - local.get $0 - local.get $0 - i32.load $0 - i32.const 1 - local.get $5 - i32.shl - i32.or - i32.store $0 - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - local.tee $0 - local.get $0 - i32.load $0 offset=4 - i32.const 1 - local.get $2 - i32.shl - i32.or - i32.store $0 offset=4 - ) - (func $~lib/rt/tlsf/addMemory (type $i32_i32_i32_=>_none) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - local.get $2 - i32.gt_u - if - i32.const 0 - i32.const 1392 - i32.const 377 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 19 - i32.add - i32.const -16 - i32.and - i32.const 4 - i32.sub - local.set $1 - local.get $0 - i32.load $0 offset=1568 - local.tee $4 - if - local.get $4 - i32.const 4 - i32.add - local.get $1 - i32.gt_u - if - i32.const 0 - i32.const 1392 - i32.const 384 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 16 - i32.sub - local.get $4 - i32.eq - if - local.get $4 - i32.load $0 - local.set $3 - local.get $1 - i32.const 16 - i32.sub - local.set $1 - end - else - local.get $0 - i32.const 1572 - i32.add - local.get $1 - i32.gt_u - if - i32.const 0 - i32.const 1392 - i32.const 397 - i32.const 5 - call $~lib/builtins/abort - unreachable - end - end - local.get $2 - i32.const -16 - i32.and - local.get $1 - i32.sub - local.tee $2 - i32.const 20 - i32.lt_u - if - return - end - local.get $1 - local.get $3 - i32.const 2 - i32.and - local.get $2 - i32.const 8 - i32.sub - local.tee $2 - i32.const 1 - i32.or - i32.or - i32.store $0 - local.get $1 - i32.const 0 - i32.store $0 offset=4 - local.get $1 - i32.const 0 - i32.store $0 offset=8 - local.get $1 - i32.const 4 - i32.add - local.get $2 - i32.add - local.tee $2 - i32.const 2 - i32.store $0 - local.get $0 - local.get $2 - i32.store $0 offset=1568 - local.get $0 - local.get $1 - call $~lib/rt/tlsf/insertBlock - ) - (func $~lib/rt/tlsf/initialize (type $none_=>_none) - (local $0 i32) - (local $1 i32) - memory.size $0 - local.tee $1 - i32.const 0 - i32.le_s - if (result i32) - i32.const 1 - local.get $1 - i32.sub - memory.grow $0 - i32.const 0 - i32.lt_s - else - i32.const 0 - end - if - unreachable - end - i32.const 34336 - i32.const 0 - i32.store $0 - i32.const 35904 - i32.const 0 - i32.store $0 - loop $for-loop|0 - local.get $0 - i32.const 23 - i32.lt_u - if - local.get $0 - i32.const 2 - i32.shl - i32.const 34336 - i32.add - i32.const 0 - i32.store $0 offset=4 - i32.const 0 - local.set $1 - loop $for-loop|1 - local.get $1 - i32.const 16 - i32.lt_u - if - local.get $0 - i32.const 4 - i32.shl - local.get $1 - i32.add - i32.const 2 - i32.shl - i32.const 34336 - i32.add - i32.const 0 - i32.store $0 offset=96 - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $for-loop|1 - end - end - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|0 - end - end - i32.const 34336 - i32.const 35908 - memory.size $0 - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - i32.const 34336 - global.set $~lib/rt/tlsf/ROOT - ) - (func $~lib/rt/itcms/step (type $none_=>_i32) (result i32) - (local $0 i32) - (local $1 i32) - (local $2 i32) - block $break|0 - block $case2|0 - block $case1|0 - block $case0|0 - global.get $~lib/rt/itcms/state - br_table $case0|0 $case1|0 $case2|0 $break|0 - end - i32.const 1 - global.set $~lib/rt/itcms/state - i32.const 0 - global.set $~lib/rt/itcms/visitCount - call $~lib/rt/itcms/visitRoots - global.get $~lib/rt/itcms/toSpace - global.set $~lib/rt/itcms/iter - global.get $~lib/rt/itcms/visitCount - return - end - global.get $~lib/rt/itcms/white - i32.eqz - local.set $1 - global.get $~lib/rt/itcms/iter - i32.load $0 offset=4 - i32.const -4 - i32.and - local.set $0 - loop $while-continue|1 - local.get $0 - global.get $~lib/rt/itcms/toSpace - i32.ne - if - local.get $0 - global.set $~lib/rt/itcms/iter - local.get $1 - local.get $0 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.ne - if - local.get $0 - local.get $0 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.get $1 - i32.or - i32.store $0 offset=4 - i32.const 0 - global.set $~lib/rt/itcms/visitCount - local.get $0 - i32.const 20 - i32.add - call $~lib/rt/__visit_members - global.get $~lib/rt/itcms/visitCount - return - end - local.get $0 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.set $0 - br $while-continue|1 - end - end - i32.const 0 - global.set $~lib/rt/itcms/visitCount - call $~lib/rt/itcms/visitRoots - global.get $~lib/rt/itcms/toSpace - global.get $~lib/rt/itcms/iter - i32.load $0 offset=4 - i32.const -4 - i32.and - i32.eq - if - global.get $~lib/memory/__stack_pointer - local.set $0 - loop $while-continue|0 - local.get $0 - i32.const 34324 - i32.lt_u - if - local.get $0 - i32.load $0 - 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 - local.set $0 - br $while-continue|0 - end - end - global.get $~lib/rt/itcms/iter - i32.load $0 offset=4 - i32.const -4 - i32.and - local.set $0 - loop $while-continue|2 - local.get $0 - global.get $~lib/rt/itcms/toSpace - i32.ne - if - local.get $1 - local.get $0 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.ne - if - local.get $0 - local.get $0 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.get $1 - i32.or - i32.store $0 offset=4 - local.get $0 - i32.const 20 - i32.add - call $~lib/rt/__visit_members - end - local.get $0 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.set $0 - br $while-continue|2 - end - end - global.get $~lib/rt/itcms/fromSpace - local.set $0 - global.get $~lib/rt/itcms/toSpace - global.set $~lib/rt/itcms/fromSpace - local.get $0 - global.set $~lib/rt/itcms/toSpace - local.get $1 - global.set $~lib/rt/itcms/white - local.get $0 - i32.load $0 offset=4 - i32.const -4 - i32.and - global.set $~lib/rt/itcms/iter - i32.const 2 - global.set $~lib/rt/itcms/state - end - global.get $~lib/rt/itcms/visitCount - return - end - global.get $~lib/rt/itcms/iter - local.tee $0 - global.get $~lib/rt/itcms/toSpace - i32.ne - if - local.get $0 - i32.load $0 offset=4 - local.tee $1 - i32.const -4 - i32.and - global.set $~lib/rt/itcms/iter - global.get $~lib/rt/itcms/white - i32.eqz - local.get $1 - i32.const 3 - i32.and - i32.ne - if - i32.const 0 - i32.const 1120 - i32.const 228 - i32.const 20 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 34324 - i32.lt_u - if - local.get $0 - i32.const 0 - i32.store $0 offset=4 - local.get $0 - i32.const 0 - i32.store $0 offset=8 - else - global.get $~lib/rt/itcms/total - local.get $0 - i32.load $0 - i32.const -4 - i32.and - i32.const 4 - i32.add - i32.sub - global.set $~lib/rt/itcms/total - local.get $0 - i32.const 4 - i32.add - local.tee $0 - i32.const 34324 - i32.ge_u - if - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - call $~lib/rt/tlsf/initialize - end - global.get $~lib/rt/tlsf/ROOT - local.set $1 - local.get $0 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - i32.const 15 - i32.and - i32.const 1 - local.get $0 - select - if (result i32) - i32.const 1 - else - local.get $2 - i32.load $0 - i32.const 1 - i32.and - end - if - i32.const 0 - i32.const 1392 - i32.const 559 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $2 - i32.load $0 - i32.const 1 - i32.or - i32.store $0 - local.get $1 - local.get $2 - call $~lib/rt/tlsf/insertBlock - end - end - i32.const 10 - return - end - global.get $~lib/rt/itcms/toSpace - local.tee $0 - local.get $0 - i32.store $0 offset=4 - local.get $0 - local.get $0 - i32.store $0 offset=8 - i32.const 0 - global.set $~lib/rt/itcms/state - end - i32.const 0 - ) - (func $~lib/rt/tlsf/searchBlock (type $i32_=>_i32) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.load $0 offset=4 - i32.const -2 - i32.and - local.tee $1 - if (result i32) - local.get $0 - local.get $1 - i32.ctz - i32.const 2 - i32.shl - i32.add - i32.load $0 offset=96 - else - local.get $0 - i32.load $0 - i32.const -2 - i32.and - local.tee $1 - if (result i32) - local.get $0 - local.get $1 - i32.ctz - local.tee $2 - i32.const 2 - i32.shl - i32.add - i32.load $0 offset=4 - local.tee $1 - i32.eqz - if - i32.const 0 - i32.const 1392 - i32.const 343 - i32.const 18 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - i32.ctz - local.get $2 - i32.const 4 - i32.shl - i32.add - i32.const 2 - i32.shl - i32.add - i32.load $0 offset=96 - else - i32.const 0 - end - end - ) - (func $~lib/rt/itcms/__new (type $i32_=>_i32) (param $0 i32) (result i32) - (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 - 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 $2 - call $~lib/rt/tlsf/searchBlock - local.tee $1 - i32.eqz - if - memory.size $0 - local.tee $1 - i32.const 4 - local.get $2 - i32.load $0 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 $3 - local.get $1 - local.get $3 - i32.gt_s - select - memory.grow $0 - i32.const 0 - i32.lt_s - if - local.get $3 - memory.grow $0 - i32.const 0 - i32.lt_s - if - unreachable - end - end - local.get $2 - local.get $1 - i32.const 16 - i32.shl - memory.size $0 - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - local.get $2 - 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 $0 - 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 $1 - call $~lib/rt/tlsf/removeBlock - local.get $1 - i32.load $0 - 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 $1 - local.get $3 - i32.const 2 - i32.and - i32.const 28 - i32.or - i32.store $0 - local.get $1 - i32.const 32 - i32.add - local.tee $3 - local.get $4 - i32.const 4 - i32.sub - i32.const 1 - i32.or - i32.store $0 - local.get $2 - local.get $3 - call $~lib/rt/tlsf/insertBlock - else - local.get $1 - local.get $3 - i32.const -2 - i32.and - i32.store $0 - local.get $1 - i32.const 4 - i32.add - local.get $1 - i32.load $0 - i32.const -4 - i32.and - i32.add - local.tee $2 - local.get $2 - i32.load $0 - i32.const -3 - i32.and - i32.store $0 - end - local.get $1 - local.get $0 - i32.store $0 offset=12 - local.get $1 - i32.const 0 - i32.store $0 offset=16 - global.get $~lib/rt/itcms/fromSpace - local.tee $0 - i32.load $0 offset=8 - local.set $2 - local.get $1 - local.get $0 - global.get $~lib/rt/itcms/white - i32.or - i32.store $0 offset=4 - local.get $1 - local.get $2 - i32.store $0 offset=8 - local.get $2 - local.get $1 - local.get $2 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.or - i32.store $0 offset=4 - local.get $0 - local.get $1 - i32.store $0 offset=8 - global.get $~lib/rt/itcms/total - local.get $1 - i32.load $0 - 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 $0 - i32.const 0 - i32.const 0 - memory.fill $0 - local.get $0 - ) - (func $start:rt/instanceof (type $none_=>_none) - (local $0 i32) - global.get $~lib/memory/__stack_pointer - i32.const 72 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1556 - i32.lt_s - if - i32.const 34352 - i32.const 34400 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.const 72 - memory.fill $0 - memory.size $0 - i32.const 16 - i32.shl - i32.const 34324 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1172 - i32.const 1168 - i32.store $0 - i32.const 1176 - i32.const 1168 - i32.store $0 - i32.const 1168 - global.set $~lib/rt/itcms/pinSpace - i32.const 1204 - i32.const 1200 - i32.store $0 - i32.const 1208 - i32.const 1200 - i32.store $0 - i32.const 1200 - global.set $~lib/rt/itcms/toSpace - i32.const 1348 - i32.const 1344 - i32.store $0 - i32.const 1352 - i32.const 1344 - i32.store $0 - i32.const 1344 - global.set $~lib/rt/itcms/fromSpace - i32.const 0 - call $rt/instanceof/Animal#constructor - global.set $rt/instanceof/animal - i32.const 0 - call $rt/instanceof/Cat#constructor - global.set $rt/instanceof/cat - call $rt/instanceof/BlackCat#constructor - global.set $rt/instanceof/blackcat - global.get $~lib/memory/__stack_pointer - global.get $rt/instanceof/animal - local.tee $0 - i32.store $0 - local.get $0 - if (result i32) - block $__inlined_func$~lib/rt/__instanceof (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|0 - i32.const 1 - local.get $0 - i32.const 4 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|0 - end - end - i32.const 0 - end - else - i32.const 0 - end - if - i32.const 0 - i32.const 1456 - i32.const 10 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $rt/instanceof/animal - local.tee $0 - i32.store $0 offset=4 - local.get $0 - if (result i32) - block $__inlined_func$~lib/rt/__instanceof0 (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|02 - i32.const 1 - local.get $0 - i32.const 5 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof0 - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|02 - end - end - i32.const 0 - end - else - i32.const 0 - end - if - i32.const 0 - i32.const 1456 - i32.const 11 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $rt/instanceof/cat - local.tee $0 - i32.store $0 offset=8 - local.get $0 - if (result i32) - block $__inlined_func$~lib/rt/__instanceof3 (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|05 - i32.const 1 - local.get $0 - i32.const 4 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof3 - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|05 - end - end - i32.const 0 - end - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1456 - i32.const 14 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $rt/instanceof/cat - local.tee $0 - i32.store $0 offset=12 - local.get $0 - if (result i32) - block $__inlined_func$~lib/rt/__instanceof6 (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|08 - i32.const 1 - local.get $0 - i32.const 5 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof6 - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|08 - end - end - i32.const 0 - end - else - i32.const 0 - end - if - i32.const 0 - i32.const 1456 - i32.const 15 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $rt/instanceof/blackcat - local.tee $0 - i32.store $0 offset=16 - local.get $0 - if (result i32) - block $__inlined_func$~lib/rt/__instanceof9 (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|011 - i32.const 1 - local.get $0 - i32.const 4 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof9 - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|011 - end - end - i32.const 0 - end - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1456 - i32.const 18 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $rt/instanceof/blackcat - local.tee $0 - i32.store $0 offset=20 - local.get $0 - if (result i32) - block $__inlined_func$~lib/rt/__instanceof12 (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|014 - i32.const 1 - local.get $0 - i32.const 5 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof12 - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|014 - end - end - i32.const 0 - end - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1456 - i32.const 19 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $rt/instanceof/Animal#constructor - global.set $rt/instanceof/nullableAnimal - i32.const 0 - call $rt/instanceof/Cat#constructor - global.set $rt/instanceof/nullableCat - call $rt/instanceof/BlackCat#constructor - global.set $rt/instanceof/nullableBlackcat - global.get $rt/instanceof/nullableAnimal - i32.eqz - if - i32.const 0 - i32.const 1456 - i32.const 25 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $rt/instanceof/nullableAnimal - local.tee $0 - i32.store $0 offset=24 - local.get $0 - if (result i32) - block $__inlined_func$~lib/rt/__instanceof15 (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|017 - i32.const 1 - local.get $0 - i32.const 4 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof15 - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|017 - end - end - i32.const 0 - end - else - i32.const 0 - end - if - i32.const 0 - i32.const 1456 - i32.const 26 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $rt/instanceof/nullableAnimal - local.tee $0 - i32.store $0 offset=28 - local.get $0 - if (result i32) - block $__inlined_func$~lib/rt/__instanceof18 (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|020 - i32.const 1 - local.get $0 - i32.const 5 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof18 - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|020 - end - end - i32.const 0 - end - else - i32.const 0 - end - if - i32.const 0 - i32.const 1456 - i32.const 27 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $rt/instanceof/nullableCat - i32.eqz - if - i32.const 0 - i32.const 1456 - i32.const 29 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $rt/instanceof/nullableCat - local.tee $0 - i32.store $0 offset=32 - local.get $0 - if (result i32) - block $__inlined_func$~lib/rt/__instanceof21 (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|023 - i32.const 1 - local.get $0 - i32.const 4 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof21 - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|023 - end - end - i32.const 0 - end - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1456 - i32.const 30 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $rt/instanceof/nullableCat - local.tee $0 - i32.store $0 offset=36 - local.get $0 - if (result i32) - block $__inlined_func$~lib/rt/__instanceof24 (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|026 - i32.const 1 - local.get $0 - i32.const 5 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof24 - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|026 - end - end - i32.const 0 - end - else - i32.const 0 - end - if - i32.const 0 - i32.const 1456 - i32.const 31 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $rt/instanceof/nullableBlackcat - i32.eqz - if - i32.const 0 - i32.const 1456 - i32.const 33 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $rt/instanceof/nullableBlackcat - local.tee $0 - i32.store $0 offset=40 - local.get $0 - if (result i32) - block $__inlined_func$~lib/rt/__instanceof27 (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|029 - i32.const 1 - local.get $0 - i32.const 4 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof27 - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|029 - end - end - i32.const 0 - end - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1456 - i32.const 34 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $rt/instanceof/nullableBlackcat - local.tee $0 - i32.store $0 offset=44 - local.get $0 - if (result i32) - block $__inlined_func$~lib/rt/__instanceof30 (result i32) - local.get $0 - i32.const 20 - i32.sub - i32.load $0 offset=12 - local.tee $0 - i32.const 1504 - i32.load $0 - i32.le_u - if - loop $do-loop|032 - i32.const 1 - local.get $0 - i32.const 5 - i32.eq - br_if $__inlined_func$~lib/rt/__instanceof30 - drop - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 offset=4 - local.tee $0 - br_if $do-loop|032 - end - end - i32.const 0 - end - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1456 - i32.const 35 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.tee $0 - i32.const 0 - i32.store $0 offset=48 - local.get $0 - i32.const 0 - i32.store $0 offset=52 - local.get $0 - i32.const 0 - i32.store $0 offset=56 - local.get $0 - i32.const 0 - i32.store $0 offset=60 - local.get $0 - i32.const 0 - i32.store $0 offset=64 - local.get $0 - i32.const 0 - i32.store $0 offset=68 - local.get $0 - i32.const 72 - i32.add - global.set $~lib/memory/__stack_pointer - ) - (func $~lib/rt/__visit_members (type $i32_=>_none) (param $0 i32) - block $invalid - block $rt/instanceof/BlackCat - block $rt/instanceof/Cat - block $rt/instanceof/Animal - block $~lib/arraybuffer/ArrayBufferView - block $~lib/string/String - block $~lib/arraybuffer/ArrayBuffer - local.get $0 - i32.const 8 - i32.sub - i32.load $0 - br_table $~lib/arraybuffer/ArrayBuffer $~lib/string/String $~lib/arraybuffer/ArrayBufferView $rt/instanceof/Animal $rt/instanceof/Cat $rt/instanceof/BlackCat $invalid - end - return - end - return - end - local.get $0 - i32.load $0 - local.tee $0 - if - local.get $0 - call $byn-split-outlined-A$~lib/rt/itcms/__visit - end - return - end - return - end - return - end - return - end - unreachable - ) - (func $~start (type $none_=>_none) - global.get $~started - if - return - end - i32.const 1 - global.set $~started - call $start:rt/instanceof - ) - (func $rt/instanceof/Animal#constructor (type $i32_=>_i32) (param $0 i32) (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 1556 - i32.lt_s - if - i32.const 34352 - i32.const 34400 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store $0 - local.get $0 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 3 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store $0 - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - ) - (func $rt/instanceof/Cat#constructor (type $i32_=>_i32) (param $0 i32) (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 1556 - i32.lt_s - if - i32.const 34352 - i32.const 34400 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store $0 - local.get $0 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store $0 - end - global.get $~lib/memory/__stack_pointer - local.get $0 - call $rt/instanceof/Animal#constructor - local.tee $0 - i32.store $0 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - ) - (func $rt/instanceof/BlackCat#constructor (type $none_=>_i32) (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 1556 - i32.lt_s - if - i32.const 34352 - i32.const 34400 - 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 $0 - local.get $0 - i32.const 5 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store $0 - global.get $~lib/memory/__stack_pointer - local.get $0 - call $rt/instanceof/Cat#constructor - local.tee $0 - i32.store $0 - 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 (type $i32_=>_none) (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 $1 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $1 - global.get $~lib/rt/itcms/iter - i32.eq - if - local.get $1 - i32.load $0 offset=8 - local.tee $0 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 147 - i32.const 30 - call $~lib/builtins/abort - unreachable - end - local.get $0 - global.set $~lib/rt/itcms/iter - end - block $__inlined_func$~lib/rt/itcms/Object#unlink - local.get $1 - i32.load $0 offset=4 - i32.const -4 - i32.and - local.tee $0 - i32.eqz - if - local.get $1 - i32.load $0 offset=8 - i32.eqz - local.get $1 - i32.const 34324 - i32.lt_u - i32.and - 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 $1 - i32.load $0 offset=8 - local.tee $2 - i32.eqz - if - i32.const 0 - i32.const 1120 - i32.const 131 - i32.const 16 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $2 - i32.store $0 offset=8 - local.get $2 - local.get $0 - local.get $2 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.or - i32.store $0 offset=4 - end - global.get $~lib/rt/itcms/toSpace - local.set $2 - local.get $1 - i32.load $0 offset=12 - local.tee $0 - i32.const 1 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $0 - i32.const 1504 - i32.load $0 - i32.gt_u - if - i32.const 1248 - i32.const 1312 - i32.const 22 - i32.const 28 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 3 - i32.shl - i32.const 1508 - i32.add - i32.load $0 - i32.const 32 - i32.and - end - local.set $3 - local.get $2 - i32.load $0 offset=8 - local.set $0 - local.get $1 - global.get $~lib/rt/itcms/white - i32.eqz - i32.const 2 - local.get $3 - select - local.get $2 - i32.or - i32.store $0 offset=4 - local.get $1 - local.get $0 - i32.store $0 offset=8 - local.get $0 - local.get $1 - local.get $0 - i32.load $0 offset=4 - i32.const 3 - i32.and - i32.or - i32.store $0 offset=4 - local.get $2 - local.get $1 - i32.store $0 offset=8 - global.get $~lib/rt/itcms/visitCount - i32.const 1 - i32.add - global.set $~lib/rt/itcms/visitCount - end - ) -) From b86d515f2896c72f668961bb44ea215c50534587 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Sat, 12 Nov 2022 10:55:19 +0200 Subject: [PATCH 07/10] update --- package-lock.json | 14 +++++++------- package.json | 2 +- src/module.ts | 38 +++++++++++++++++++------------------- 3 files changed, 27 insertions(+), 27 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0f7af97253..9727c1e81c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "110.0.0-nightly.20221109", + "binaryen": "110.0.0-nightly.20221112", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "110.0.0-nightly.20221109", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221109.tgz", - "integrity": "sha512-P4UPaPZT1xe+XxEDm82NdiNtryHXdV3NrkNSbGborsf465VcxBnrkPFIRoxq3GFXa4M/QJqRoS7xVBatESNDlw==", + "version": "110.0.0-nightly.20221112", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221112.tgz", + "integrity": "sha512-dMsnSNpw2Ok9wHhIb6lMgVt9AexC/HpOKp7APpDOmyx0K/9COQVI0qweekboLQ9BWlLut25cOU8MsQwMb1W6yQ==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "110.0.0-nightly.20221109", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221109.tgz", - "integrity": "sha512-P4UPaPZT1xe+XxEDm82NdiNtryHXdV3NrkNSbGborsf465VcxBnrkPFIRoxq3GFXa4M/QJqRoS7xVBatESNDlw==" + "version": "110.0.0-nightly.20221112", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221112.tgz", + "integrity": "sha512-dMsnSNpw2Ok9wHhIb6lMgVt9AexC/HpOKp7APpDOmyx0K/9COQVI0qweekboLQ9BWlLut25cOU8MsQwMb1W6yQ==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index a1416a4651..6058cdf14e 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "110.0.0-nightly.20221109", + "binaryen": "110.0.0-nightly.20221112", "long": "^5.2.0" }, "devDependencies": { diff --git a/src/module.ts b/src/module.ts index c065b7e4ce..2f30b41440 100644 --- a/src/module.ts +++ b/src/module.ts @@ -258,25 +258,25 @@ export const enum ExpressionId { StructGet = 61 /* _BinaryenStructGetId */, StructSet = 62 /* _BinaryenStructSetId */, ArrayNew = 63 /* _BinaryenArrayNewId */, - ArrayInit = 64 /* _BinaryenArrayInitId */, - ArrayGet = 65 /* _BinaryenArrayGetId */, - ArraySet = 66 /* _BinaryenArraySetId */, - ArrayLen = 67 /* _BinaryenArrayLenId */, - ArrayCopy = 68 /* _BinaryenArrayCopyId */, - RefAs = 69 /* _BinaryenRefAsId */, - StringNew = 70 /* _BinaryenStringNewId */, - StringConst = 71 /* _BinaryenStringConstId */, - StringMeasure = 72 /* _BinaryenStringMeasureId */, - StringEncode = 73 /* _BinaryenStringEncodeId */, - StringConcat = 74 /* _BinaryenStringConcatId */, - StringEq = 75 /* _BinaryenStringEqId */, - StringAs = 76 /* _BinaryenStringAsId */, - StringWTF8Advance = 77 /* _BinaryenStringWTF8AdvanceId */, - StringWTF16Get = 78 /* _BinaryenStringWTF16GetId */, - StringIterNext = 79 /* _BinaryenStringIterNextId */, - StringIterMove = 80 /* _BinaryenStringIterMoveId */, - StringSliceWTF = 81 /* _BinaryenStringSliceWTFId */, - StringSliceIter = 82 /* _BinaryenStringSliceIterId */ + ArrayInit = 65 /* _BinaryenArrayInitId */, + ArrayGet = 66 /* _BinaryenArrayGetId */, + ArraySet = 67 /* _BinaryenArraySetId */, + ArrayLen = 68 /* _BinaryenArrayLenId */, + ArrayCopy = 69 /* _BinaryenArrayCopyId */, + RefAs = 70 /* _BinaryenRefAsId */, + StringNew = 71 /* _BinaryenStringNewId */, + StringConst = 72 /* _BinaryenStringConstId */, + StringMeasure = 73 /* _BinaryenStringMeasureId */, + StringEncode = 74 /* _BinaryenStringEncodeId */, + StringConcat = 75 /* _BinaryenStringConcatId */, + StringEq = 76 /* _BinaryenStringEqId */, + StringAs = 77 /* _BinaryenStringAsId */, + StringWTF8Advance = 78 /* _BinaryenStringWTF8AdvanceId */, + StringWTF16Get = 79 /* _BinaryenStringWTF16GetId */, + StringIterNext = 80 /* _BinaryenStringIterNextId */, + StringIterMove = 81 /* _BinaryenStringIterMoveId */, + StringSliceWTF = 82 /* _BinaryenStringSliceWTFId */, + StringSliceIter = 83 /* _BinaryenStringSliceIterId */ } /** Binaryen external kind constants. */ From 3d2766a0d5ccd926f2403554c5cbc8a5a59dee4c Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Fri, 18 Nov 2022 13:32:59 +0200 Subject: [PATCH 08/10] update --- package-lock.json | 14 +++++++------- package.json | 2 +- tests/compiler/assert-nonnull.release.wat | 1 + tests/compiler/std/array-access.release.wat | 1 + tests/compiler/ternary.release.wat | 1 + 5 files changed, 11 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9727c1e81c..64ca13858e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "110.0.0-nightly.20221112", + "binaryen": "110.0.0-nightly.20221118", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "110.0.0-nightly.20221112", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221112.tgz", - "integrity": "sha512-dMsnSNpw2Ok9wHhIb6lMgVt9AexC/HpOKp7APpDOmyx0K/9COQVI0qweekboLQ9BWlLut25cOU8MsQwMb1W6yQ==", + "version": "110.0.0-nightly.20221118", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221118.tgz", + "integrity": "sha512-OTh+FdNGLGMN9mNHpufknWeQg68sNWVo0qmt6S+f+Gvrzb6hYKYNth05JgBt0/g13cpBGYbSOZNnBOy5sL/I8A==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "110.0.0-nightly.20221112", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221112.tgz", - "integrity": "sha512-dMsnSNpw2Ok9wHhIb6lMgVt9AexC/HpOKp7APpDOmyx0K/9COQVI0qweekboLQ9BWlLut25cOU8MsQwMb1W6yQ==" + "version": "110.0.0-nightly.20221118", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221118.tgz", + "integrity": "sha512-OTh+FdNGLGMN9mNHpufknWeQg68sNWVo0qmt6S+f+Gvrzb6hYKYNth05JgBt0/g13cpBGYbSOZNnBOy5sL/I8A==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 6058cdf14e..23185e9706 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "110.0.0-nightly.20221112", + "binaryen": "110.0.0-nightly.20221118", "long": "^5.2.0" }, "devDependencies": { diff --git a/tests/compiler/assert-nonnull.release.wat b/tests/compiler/assert-nonnull.release.wat index d588e4c6c9..0317b61b8a 100644 --- a/tests/compiler/assert-nonnull.release.wat +++ b/tests/compiler/assert-nonnull.release.wat @@ -16,6 +16,7 @@ (data (i32.const 1276) "|") (data (i32.const 1288) "\02\00\00\00^\00\00\00E\00l\00e\00m\00e\00n\00t\00 \00t\00y\00p\00e\00 \00m\00u\00s\00t\00 \00b\00e\00 \00n\00u\00l\00l\00a\00b\00l\00e\00 \00i\00f\00 \00a\00r\00r\00a\00y\00 \00i\00s\00 \00h\00o\00l\00e\00y") (table $0 1 1 funcref) + (elem $0 (i32.const 1)) (export "memory" (memory $0)) (export "testVar" (func $export:assert-nonnull/testVar)) (export "testObj" (func $export:assert-nonnull/testObj)) diff --git a/tests/compiler/std/array-access.release.wat b/tests/compiler/std/array-access.release.wat index de754b6996..94622b370d 100644 --- a/tests/compiler/std/array-access.release.wat +++ b/tests/compiler/std/array-access.release.wat @@ -14,6 +14,7 @@ (data (i32.const 1276) "\1c") (data (i32.const 1288) "\02") (table $0 1 1 funcref) + (elem $0 (i32.const 1)) (export "memory" (memory $0)) (export "i32ArrayArrayElementAccess" (func $export:std/array-access/i32ArrayArrayElementAccess)) (export "stringArrayPropertyAccess" (func $export:std/array-access/stringArrayPropertyAccess)) diff --git a/tests/compiler/ternary.release.wat b/tests/compiler/ternary.release.wat index 1c864b0699..4c9d5a746e 100644 --- a/tests/compiler/ternary.release.wat +++ b/tests/compiler/ternary.release.wat @@ -10,6 +10,7 @@ (data (i32.const 1036) "\1c") (data (i32.const 1048) "\02\00\00\00\02\00\00\00a") (table $0 1 1 funcref) + (elem $0 (i32.const 1)) (export "test" (func $ternary/test)) (export "testDropWithTypeMismatch" (func $ternary/testDropWithTypeMismatch)) (export "memory" (memory $0)) From c7eafd336d843bc6bd2a0796613f731955cd8f63 Mon Sep 17 00:00:00 2001 From: Max Graey Date: Fri, 18 Nov 2022 13:46:09 +0200 Subject: [PATCH 09/10] Update src/module.ts Co-authored-by: dcode --- src/module.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/module.ts b/src/module.ts index 2f30b41440..9dd44cb48e 100644 --- a/src/module.ts +++ b/src/module.ts @@ -258,6 +258,7 @@ export const enum ExpressionId { StructGet = 61 /* _BinaryenStructGetId */, StructSet = 62 /* _BinaryenStructSetId */, ArrayNew = 63 /* _BinaryenArrayNewId */, + ArrayNewSeg = 64 /* TODO_BinaryenArrayNewSegId */, ArrayInit = 65 /* _BinaryenArrayInitId */, ArrayGet = 66 /* _BinaryenArrayGetId */, ArraySet = 67 /* _BinaryenArraySetId */, From 9bb09f93b8570872bfcdad3a8195e7717621447c Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 22 Nov 2022 13:46:04 +0200 Subject: [PATCH 10/10] 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 64ca13858e..3732399445 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "license": "Apache-2.0", "dependencies": { - "binaryen": "110.0.0-nightly.20221118", + "binaryen": "111.0.0-nightly.20221122", "long": "^5.2.0" }, "bin": { @@ -398,9 +398,9 @@ "dev": true }, "node_modules/binaryen": { - "version": "110.0.0-nightly.20221118", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221118.tgz", - "integrity": "sha512-OTh+FdNGLGMN9mNHpufknWeQg68sNWVo0qmt6S+f+Gvrzb6hYKYNth05JgBt0/g13cpBGYbSOZNnBOy5sL/I8A==", + "version": "111.0.0-nightly.20221122", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-111.0.0-nightly.20221122.tgz", + "integrity": "sha512-zFPQT3WhbvUbqCUcfz+lvdv/sL395Qo1XnkWQSm/GqQc0wvzTOd1k+bw6O5b4avijnKFiWa+ytxFUFc3+LRtQg==", "bin": { "wasm-opt": "bin/wasm-opt", "wasm2js": "bin/wasm2js" @@ -2117,9 +2117,9 @@ "dev": true }, "binaryen": { - "version": "110.0.0-nightly.20221118", - "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-110.0.0-nightly.20221118.tgz", - "integrity": "sha512-OTh+FdNGLGMN9mNHpufknWeQg68sNWVo0qmt6S+f+Gvrzb6hYKYNth05JgBt0/g13cpBGYbSOZNnBOy5sL/I8A==" + "version": "111.0.0-nightly.20221122", + "resolved": "https://registry.npmjs.org/binaryen/-/binaryen-111.0.0-nightly.20221122.tgz", + "integrity": "sha512-zFPQT3WhbvUbqCUcfz+lvdv/sL395Qo1XnkWQSm/GqQc0wvzTOd1k+bw6O5b4avijnKFiWa+ytxFUFc3+LRtQg==" }, "brace-expansion": { "version": "1.1.11", diff --git a/package.json b/package.json index 23185e9706..9b4c230823 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ }, "engineStrict": true, "dependencies": { - "binaryen": "110.0.0-nightly.20221118", + "binaryen": "111.0.0-nightly.20221122", "long": "^5.2.0" }, "devDependencies": {