diff --git a/NOTICE b/NOTICE index e7a2601827..673c7b5c51 100644 --- a/NOTICE +++ b/NOTICE @@ -60,6 +60,7 @@ under the licensing terms detailed in LICENSE: * Fabián Heredia Montiel * Jonas Minnberg * Kam Chehresa +* Rui Jin Portions of this software are derived from third-party works licensed under the following terms: diff --git a/src/compiler.ts b/src/compiler.ts index 7e87baf7fd..050abc342b 100644 --- a/src/compiler.ts +++ b/src/compiler.ts @@ -59,7 +59,8 @@ import { isConstExpressionNaN, ensureType, createType, - getConstValueInteger + getConstValueInteger, + isConstZero } from "./module"; import { @@ -10025,6 +10026,14 @@ export class Compiler extends DiagnosticEmitter { // === Specialized code generation ============================================================== + /** Check if possible to optimize the active initialization away if it's zero */ + canOptimizeZeroInitialization(valueExpr: ExpressionRef): bool { + const runtime = this.options.runtime; + return (runtime == Runtime.Incremental || runtime == Runtime.Stub) + ? isConstZero(valueExpr) + : false; + } + /** Makes a constant zero of the specified type. */ makeZero(type: Type): ExpressionRef { let module = this.module; @@ -10372,6 +10381,7 @@ export class Compiler extends DiagnosticEmitter { let parameterIndex = fieldPrototype.parameterIndex; // Defer non-parameter fields until parameter fields are initialized + // Since non-parameter may depend on parameter fields if (parameterIndex < 0) { if (!nonParameterFields) nonParameterFields = new Array(); nonParameterFields.push(property); @@ -10407,16 +10417,25 @@ export class Compiler extends DiagnosticEmitter { let initializerNode = fieldPrototype.initializerNode; assert(fieldPrototype.parameterIndex < 0); let setterInstance = assert(field.setterInstance); - let expr = this.makeCallDirect(setterInstance, [ - module.local_get(thisLocalIndex, sizeTypeRef), - initializerNode // use initializer if present, otherwise initialize with zero - ? this.compileExpression(initializerNode, fieldType, Constraints.ConvImplicit) - : this.makeZero(fieldType) - ], field.identifierNode, true); - if (this.currentType != Type.void) { // in case - expr = module.drop(expr); + + if (initializerNode) { + // Explicit initializer + // Check if we need to initialize this field + const valueExpr: ExpressionRef = this.compileExpression(initializerNode, fieldType, Constraints.ConvImplicit); + // Memory will be filled with 0 on itcms.__new + // Memory grow will default to initialized with 0 as wasm spec + // So, optimize the active initialization away if it's zero + if (!this.canOptimizeZeroInitialization(valueExpr)) { + let expr = this.makeCallDirect(setterInstance, [ + module.local_get(thisLocalIndex, sizeTypeRef), + valueExpr + ], field.identifierNode, true); + if (this.currentType != Type.void) { // in case + expr = module.drop(expr); + } + stmts.push(expr); + } } - stmts.push(expr); } } diff --git a/tests/compiler/assignment-chain.debug.wat b/tests/compiler/assignment-chain.debug.wat index dc86b62eb1..51d22efd7d 100644 --- a/tests/compiler/assignment-chain.debug.wat +++ b/tests/compiler/assignment-chain.debug.wat @@ -2250,35 +2250,30 @@ local.get $ptr return ) + (func $assignment-chain/A#set:y (param $this i32) (param $y i64) + local.get $this + local.get $y + i64.store offset=8 + ) (func $assignment-chain/A#set:x (param $this i32) (param $x i64) local.get $this local.get $x i64.store ) - (func $assignment-chain/A#set:y (param $this i32) (param $y i64) + (func $assignment-chain/B#get:_setter_cnt (param $this i32) (result i32) local.get $this - local.get $y - i64.store offset=8 + i32.load ) (func $assignment-chain/B#set:_setter_cnt (param $this i32) (param $_setter_cnt i32) local.get $this local.get $_setter_cnt i32.store ) - (func $assignment-chain/B#set:_getter_cnt (param $this i32) (param $_getter_cnt i32) - local.get $this - local.get $_getter_cnt - i32.store offset=4 - ) (func $assignment-chain/B#set:_y (param $this i32) (param $_y f64) local.get $this local.get $_y f64.store offset=8 ) - (func $assignment-chain/B#get:_setter_cnt (param $this i32) (result i32) - local.get $this - i32.load - ) (func $assignment-chain/B#get:_getter_cnt (param $this i32) (result i32) local.get $this i32.load offset=4 @@ -2434,22 +2429,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i64.const 0 - call $assignment-chain/A#set:x - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i64.const 0 - call $assignment-chain/A#set:y - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -2552,30 +2531,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $assignment-chain/B#set:_setter_cnt - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $assignment-chain/B#set:_getter_cnt - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f64.const 0 - call $assignment-chain/B#set:_y - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/assignment-chain.release.wat b/tests/compiler/assignment-chain.release.wat index 2d02b94594..5ea2d108b0 100644 --- a/tests/compiler/assignment-chain.release.wat +++ b/tests/compiler/assignment-chain.release.wat @@ -122,7 +122,7 @@ local.get $0 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$129 + block $__inlined_func$~lib/rt/itcms/Object#unlink$124 local.get $1 i32.load offset=4 i32.const -4 @@ -146,7 +146,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$129 + br $__inlined_func$~lib/rt/itcms/Object#unlink$124 end local.get $1 i32.load offset=8 @@ -1661,18 +1661,6 @@ local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -1790,24 +1778,6 @@ local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f64.const 0 - f64.store offset=8 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/bindings/esm.debug.wat b/tests/compiler/bindings/esm.debug.wat index c5ae968aba..ed40bacabc 100644 --- a/tests/compiler/bindings/esm.debug.wat +++ b/tests/compiler/bindings/esm.debug.wat @@ -1,23 +1,20 @@ (module - (type $0 (func (param i32 i32))) - (type $1 (func (param i32) (result i32))) + (type $0 (func (param i32) (result i32))) + (type $1 (func (param i32 i32))) (type $2 (func (param i32 i32) (result i32))) (type $3 (func (param i32))) (type $4 (func)) (type $5 (func (param i32 i32 i32))) (type $6 (func (result i32))) (type $7 (func (param i32 i32 i32 i32))) - (type $8 (func (param i32 i64))) - (type $9 (func (param i32 i32 f64 f64 f64 f64 f64))) - (type $10 (func (param f64) (result f64))) - (type $11 (func (param i64 i64) (result i64))) - (type $12 (func (result i64))) - (type $13 (func (param i32 i32 i64) (result i32))) - (type $14 (func (param i32 f32))) - (type $15 (func (param i32 f64))) - (type $16 (func (param i32 i32 i32) (result i32))) - (type $17 (func (param i32 i32 i64))) - (type $18 (func (param i32 i32) (result f32))) + (type $8 (func (param i32 i32 f64 f64 f64 f64 f64))) + (type $9 (func (param f64) (result f64))) + (type $10 (func (param i64 i64) (result i64))) + (type $11 (func (result i64))) + (type $12 (func (param i32 i32 i64) (result i32))) + (type $13 (func (param i32 i32 i32) (result i32))) + (type $14 (func (param i32 i32 i64))) + (type $15 (func (param i32 i32) (result f32))) (import "env" "Math.E" (global $~lib/bindings/dom/Math.E f64)) (import "env" "globalThis" (global $bindings/esm/immutableGlobal externref)) (import "env" "globalThis.globalThis" (global $bindings/esm/immutableGlobalNested externref)) @@ -2626,106 +2623,24 @@ local.get $this i32.load offset=4 ) + (func $bindings/esm/PlainObject#get:a (param $this i32) (result i32) + local.get $this + i32.load8_s + ) (func $bindings/esm/PlainObject#set:a (param $this i32) (param $a i32) local.get $this local.get $a i32.store8 ) + (func $bindings/esm/PlainObject#get:b (param $this i32) (result i32) + local.get $this + i32.load16_s offset=2 + ) (func $bindings/esm/PlainObject#set:b (param $this i32) (param $b i32) local.get $this local.get $b i32.store16 offset=2 ) - (func $bindings/esm/PlainObject#set:c (param $this i32) (param $c i32) - local.get $this - local.get $c - i32.store offset=4 - ) - (func $bindings/esm/PlainObject#set:d (param $this i32) (param $d i64) - local.get $this - local.get $d - i64.store offset=8 - ) - (func $bindings/esm/PlainObject#set:e (param $this i32) (param $e i32) - local.get $this - local.get $e - i32.store8 offset=16 - ) - (func $bindings/esm/PlainObject#set:f (param $this i32) (param $f i32) - local.get $this - local.get $f - i32.store16 offset=18 - ) - (func $bindings/esm/PlainObject#set:g (param $this i32) (param $g i32) - local.get $this - local.get $g - i32.store offset=20 - ) - (func $bindings/esm/PlainObject#set:h (param $this i32) (param $h i64) - local.get $this - local.get $h - i64.store offset=24 - ) - (func $bindings/esm/PlainObject#set:i (param $this i32) (param $i i32) - local.get $this - local.get $i - i32.store offset=32 - ) - (func $bindings/esm/PlainObject#set:j (param $this i32) (param $j i32) - local.get $this - local.get $j - i32.store offset=36 - ) - (func $bindings/esm/PlainObject#set:k (param $this i32) (param $k i32) - local.get $this - local.get $k - i32.store8 offset=40 - ) - (func $bindings/esm/PlainObject#set:l (param $this i32) (param $l f32) - local.get $this - local.get $l - f32.store offset=44 - ) - (func $bindings/esm/PlainObject#set:m (param $this i32) (param $m f64) - local.get $this - local.get $m - f64.store offset=48 - ) - (func $bindings/esm/PlainObject#set:n (param $this i32) (param $n i32) - local.get $this - local.get $n - i32.store offset=56 - local.get $this - local.get $n - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $bindings/esm/PlainObject#set:o (param $this i32) (param $o i32) - local.get $this - local.get $o - i32.store offset=60 - local.get $this - local.get $o - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $bindings/esm/PlainObject#set:p (param $this i32) (param $p i32) - local.get $this - local.get $p - i32.store offset=64 - local.get $this - local.get $p - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $bindings/esm/PlainObject#get:a (param $this i32) (result i32) - local.get $this - i32.load8_s - ) - (func $bindings/esm/PlainObject#get:b (param $this i32) (result i32) - local.get $this - i32.load16_s offset=2 - ) (func $bindings/esm/newInternref (result i32) i32.const 0 call $bindings/esm/NonPlainObject#constructor @@ -3399,30 +3314,6 @@ local.tee $this i32.store end - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:dataStart - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:byteLength local.get $length i32.const 1073741820 local.get $alignLog2 @@ -3444,7 +3335,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -3453,7 +3344,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer local.set $4 @@ -3466,7 +3357,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer call $~lib/arraybuffer/ArrayBufferView#set:dataStart @@ -3474,7 +3365,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $length call $~lib/arraybuffer/ArrayBufferView#set:byteLength @@ -4092,38 +3983,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -4153,7 +4012,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -4162,7 +4021,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -4175,7 +4034,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -4183,7 +4042,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -4191,7 +4050,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -4620,38 +4479,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -4681,7 +4508,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -4690,7 +4517,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -4703,7 +4530,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array<~lib/string/String>#set:dataStart @@ -4711,7 +4538,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array<~lib/string/String>#set:byteLength @@ -4719,7 +4546,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array<~lib/string/String>#set:length_ @@ -5064,134 +4891,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:b - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:c - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i64.const 0 - call $bindings/esm/PlainObject#set:d - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:e - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:f - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:g - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i64.const 0 - call $bindings/esm/PlainObject#set:h - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:i - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:j - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:k - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f32.const 0 - call $bindings/esm/PlainObject#set:l - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f64.const 0 - call $bindings/esm/PlainObject#set:m - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:n - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:o - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:p - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/bindings/esm.release.wat b/tests/compiler/bindings/esm.release.wat index 9367b73e53..802577b631 100644 --- a/tests/compiler/bindings/esm.release.wat +++ b/tests/compiler/bindings/esm.release.wat @@ -2164,7 +2164,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store - block $__inlined_func$~lib/string/String#concat$284 + block $__inlined_func$~lib/string/String#concat$257 local.get $1 i32.const 20 i32.sub @@ -2183,7 +2183,7 @@ global.set $~lib/memory/__stack_pointer i32.const 1760 local.set $2 - br $__inlined_func$~lib/string/String#concat$284 + br $__inlined_func$~lib/string/String#concat$257 end global.get $~lib/memory/__stack_pointer local.get $2 @@ -2341,19 +2341,20 @@ (func $bindings/esm/typedarrayFunction (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 f32) - (local $5 i32) + (local $4 i32) + (local $5 f32) (local $6 i32) (local $7 i32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2276 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -2361,150 +2362,121 @@ i32.const 0 i32.store offset=8 global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer local.get $0 i32.store - global.get $~lib/memory/__stack_pointer local.get $0 call $~lib/typedarray/Int16Array#get:length - local.set $5 + local.set $3 global.get $~lib/memory/__stack_pointer local.get $1 i32.store - block $__inlined_func$~lib/typedarray/Uint64Array#constructor (result i32) - local.get $1 - call $~lib/typedarray/Float32Array#get:length - local.get $5 - i32.add - local.set $5 + local.get $1 + call $~lib/typedarray/Float32Array#get:length + local.get $3 + i32.add + local.set $6 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 2276 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.const 7 + call $~lib/rt/itcms/__new + local.tee $3 + i32.store + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 2276 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + local.get $3 + i32.eqz + if global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner00 - global.get $~lib/memory/__stack_pointer - i32.const 2276 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.const 7 - call $~lib/rt/itcms/__new - local.tee $2 - i32.store - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 2276 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - local.get $2 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.const 3 - call $~lib/rt/itcms/__new - local.tee $2 - i32.store - end - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store - local.get $2 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=8 - local.get $5 - i32.const 134217727 - i32.gt_u - if - i32.const 1248 - i32.const 1296 - i32.const 19 - i32.const 57 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.const 3 - i32.shl - local.tee $7 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $5 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=12 - local.get $2 - local.get $5 - i32.store - local.get $2 - local.get $5 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - local.get $5 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - local.get $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $2 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $2 - br $__inlined_func$~lib/typedarray/Uint64Array#constructor - end - br $folding-inner1 + i32.const 12 + i32.const 3 + call $~lib/rt/itcms/__new + local.tee $3 + i32.store end - local.tee $2 + local.get $6 + i32.const 134217727 + i32.gt_u + if + i32.const 1248 + i32.const 1296 + i32.const 19 + i32.const 57 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 3 + i32.shl + local.tee $8 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $6 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=12 + local.get $3 + local.get $6 + i32.store + local.get $3 + local.get $6 + i32.const 0 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + local.get $3 + local.get $6 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + local.get $3 + local.get $8 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $3 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $3 i32.store offset=4 loop $for-loop|0 global.get $~lib/memory/__stack_pointer @@ -2512,11 +2484,11 @@ i32.store local.get $0 call $~lib/typedarray/Int16Array#get:length - local.get $3 + local.get $2 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -2528,14 +2500,14 @@ global.get $~lib/memory/__stack_pointer i32.const 2276 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store global.get $~lib/memory/__stack_pointer local.get $0 i32.store - local.get $3 + local.get $2 local.get $0 i32.load offset=8 i32.const 1 @@ -2554,50 +2526,50 @@ i32.store local.get $0 i32.load offset=4 - local.get $3 + local.get $2 i32.const 1 i32.shl i32.add i32.load16_s - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 local.get $3 - local.get $5 + local.get $2 + local.get $4 i64.extend_i32_s call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end i32.const 0 - local.set $3 + local.set $2 loop $for-loop|1 global.get $~lib/memory/__stack_pointer local.get $1 i32.store local.get $1 call $~lib/typedarray/Float32Array#get:length - local.get $3 + local.get $2 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 local.get $0 call $~lib/typedarray/Int16Array#get:length - local.get $3 + local.get $2 i32.add - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 @@ -2608,14 +2580,14 @@ global.get $~lib/memory/__stack_pointer i32.const 2276 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store global.get $~lib/memory/__stack_pointer local.get $1 i32.store - local.get $3 + local.get $2 local.get $1 i32.load offset=8 i32.const 2 @@ -2634,25 +2606,25 @@ i32.store local.get $1 i32.load offset=4 - local.get $3 + local.get $2 i32.const 2 i32.shl i32.add f32.load - local.set $4 + local.set $5 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $5 + local.get $3 local.get $4 + local.get $5 i64.trunc_sat_f32_u call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|1 end end @@ -2660,7 +2632,7 @@ i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 return end i32.const 35072 @@ -2897,7 +2869,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store - block $__inlined_func$~lib/rt/itcms/__renew$269 + block $__inlined_func$~lib/rt/itcms/__renew$242 i32.const 1073741820 local.get $2 i32.const 1 @@ -2940,7 +2912,7 @@ i32.store offset=16 local.get $2 local.set $1 - br $__inlined_func$~lib/rt/itcms/__renew$269 + br $__inlined_func$~lib/rt/itcms/__renew$242 end local.get $3 local.get $4 @@ -3185,6 +3157,215 @@ i32.add global.set $~lib/memory/__stack_pointer ) + (func $bindings/esm/arrayOfStringsFunction (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 2276 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store + local.get $0 + call $~lib/array/Array#get:length + local.set $3 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + call $~lib/array/Array#get:length + local.get $3 + i32.add + local.set $7 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 2276 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 12 + call $~lib/rt/itcms/__new + local.tee $3 + i32.store + local.get $7 + i32.const 268435455 + i32.gt_u + if + i32.const 1248 + i32.const 1920 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $7 + local.get $7 + i32.const 8 + i32.le_u + select + i32.const 2 + i32.shl + local.tee $4 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $5 + i32.store offset=12 + local.get $3 + local.get $5 + i32.store + local.get $3 + local.get $5 + i32.const 0 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + local.get $3 + local.get $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + local.get $3 + local.get $4 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + local.get $3 + local.get $7 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=4 + loop $for-loop|0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store + local.get $0 + call $~lib/array/Array#get:length + local.get $2 + i32.gt_s + if + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=12 + local.get $0 + local.get $2 + call $~lib/array/Array<~lib/string/String>#__get + local.set $4 + global.get $~lib/memory/__stack_pointer + local.get $4 + i32.store offset=8 + local.get $3 + local.get $2 + local.get $4 + call $~lib/array/Array<~lib/string/String>#__set + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|0 + end + end + i32.const 0 + local.set $2 + loop $for-loop|1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + call $~lib/array/Array#get:length + local.get $2 + i32.gt_s + if + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=12 + local.get $0 + call $~lib/array/Array#get:length + local.get $2 + i32.add + local.set $4 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=12 + local.get $1 + local.get $2 + call $~lib/array/Array<~lib/string/String>#__get + local.set $5 + global.get $~lib/memory/__stack_pointer + local.get $5 + i32.store offset=8 + local.get $3 + local.get $4 + local.get $5 + call $~lib/array/Array<~lib/string/String>#__set + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|1 + end + end + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $3 + return + end + i32.const 35072 + i32.const 35120 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + ) (func $export:bindings/esm/bufferFunction (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) @@ -3449,7 +3630,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 - block $__inlined_func$bindings/esm/staticarrayFunction$1 (result i32) + block $__inlined_func$bindings/esm/staticarrayFunction (result i32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -3605,7 +3786,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $4 - br $__inlined_func$bindings/esm/staticarrayFunction$1 + br $__inlined_func$bindings/esm/staticarrayFunction end br $folding-inner1 end @@ -3653,6 +3834,7 @@ (local $4 i32) (local $5 i32) (local $6 i32) + (local $7 i32) global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -3683,20 +3865,20 @@ i32.const 0 i32.store offset=8 global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer local.get $0 i32.store - global.get $~lib/memory/__stack_pointer local.get $0 call $~lib/array/Array#get:length - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer local.get $1 i32.store local.get $1 call $~lib/array/Array#get:length - local.get $4 + local.get $3 i32.add - local.set $5 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 16 i32.sub @@ -3715,37 +3897,9 @@ i32.const 16 i32.const 11 call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 + local.tee $4 i32.store - local.get $6 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $5 + local.get $3 i32.const 268435455 i32.gt_u if @@ -3758,54 +3912,54 @@ end global.get $~lib/memory/__stack_pointer i32.const 8 - local.get $5 - local.get $5 - i32.const 8 + local.get $3 + local.get $3 + i32.const 8 i32.le_u select i32.const 2 i32.shl - local.tee $3 + local.tee $7 i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 + local.tee $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $4 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $5 i32.store offset=12 - local.get $6 local.get $4 + local.get $5 i32.store - local.get $6 local.get $4 + local.get $5 i32.const 0 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 local.get $4 + i32.store offset=8 + local.get $4 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $3 + local.get $4 + i32.store offset=8 + local.get $4 + local.get $7 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $5 + local.get $4 + i32.store offset=8 + local.get $4 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store offset=4 loop $for-loop|0 global.get $~lib/memory/__stack_pointer @@ -3817,12 +3971,12 @@ i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $6 + local.get $4 local.get $2 local.get $0 local.get $2 @@ -3847,7 +4001,7 @@ i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -3860,7 +4014,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 - local.get $6 + local.get $4 local.get $3 local.get $1 local.get $2 @@ -3881,7 +4035,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $4 return end i32.const 35072 @@ -3892,20 +4046,48 @@ unreachable ) (func $export:bindings/esm/arrayOfStringsFunction (param $0 i32) (param $1 i32) (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 2276 + i32.lt_s + if + i32.const 35072 + i32.const 35120 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=4 + local.get $0 + local.get $1 + call $bindings/esm/arrayOfStringsFunction + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + ) + (func $export:bindings/esm/objectFunction (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2276 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.get $0 i32.store @@ -3913,472 +4095,108 @@ local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - i32.const 16 + i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2276 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - call $~lib/array/Array#get:length - local.set $4 + i32.const 0 + i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - call $~lib/array/Array#get:length - local.get $4 - i32.add - local.set $4 global.get $~lib/memory/__stack_pointer - i32.const 16 + i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2276 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 12 + i32.const 68 + i32.const 13 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.store - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.store offset=12 - local.get $4 - i32.const 268435455 - i32.gt_u - if - i32.const 1248 - i32.const 1920 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $4 - local.get $4 - i32.const 8 - i32.le_u - select - i32.const 2 - i32.shl - local.tee $6 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $3 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=12 - local.get $5 - local.get $3 - i32.store - local.get $5 - local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - local.get $3 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - local.get $6 - i32.store offset=8 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - local.get $4 - i32.store offset=12 + i32.const 2276 + i32.lt_s + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - loop $for-loop|0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store - local.get $0 - call $~lib/array/Array#get:length - local.get $2 - i32.gt_s - if - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=12 - local.get $0 - local.get $2 - call $~lib/array/Array<~lib/string/String>#__get - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=8 - local.get $5 - local.get $2 - local.get $3 - call $~lib/array/Array<~lib/string/String>#__set - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $for-loop|0 - end - end i32.const 0 - local.set $2 - loop $for-loop|1 + i32.store + local.get $0 + i32.eqz + if global.get $~lib/memory/__stack_pointer - local.get $1 + i32.const 0 + i32.const 0 + call $~lib/rt/itcms/__new + local.tee $0 i32.store - local.get $1 - call $~lib/array/Array#get:length - local.get $2 - i32.gt_s - if - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=12 - local.get $0 - call $~lib/array/Array#get:length - local.get $2 - i32.add - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=12 - local.get $1 - local.get $2 - call $~lib/array/Array<~lib/string/String>#__get - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=8 - local.get $5 - local.get $3 - local.get $4 - call $~lib/array/Array<~lib/string/String>#__set - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $for-loop|1 - end end global.get $~lib/memory/__stack_pointer - i32.const 16 + i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 + i32.store global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 - return - end - i32.const 35072 - i32.const 35120 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - ) - (func $export:bindings/esm/objectFunction (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 2276 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 2276 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - block $__inlined_func$bindings/esm/PlainObject#constructor$4 (result i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner00 - global.get $~lib/memory/__stack_pointer - i32.const 2276 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i32.const 68 - i32.const 13 - call $~lib/rt/itcms/__new - local.tee $2 - i32.store - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 2276 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - local.get $2 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__new - local.tee $2 - i32.store - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $2 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store8 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store16 offset=2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store8 offset=16 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store16 offset=18 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i64.const 0 - i64.store offset=24 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=32 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=36 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store8 offset=40 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - f32.const 0 - f32.store offset=44 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - f64.const 0 - f64.store offset=48 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=56 - local.get $2 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=60 - local.get $2 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=64 - local.get $2 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $2 - br $__inlined_func$bindings/esm/PlainObject#constructor$4 - end - br $folding-inner1 - end - local.tee $2 - i32.store - global.get $~lib/memory/__stack_pointer local.get $2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 i32.store offset=8 - local.get $0 + local.get $2 i32.load8_s local.set $3 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 - local.get $2 + local.get $0 local.get $3 local.get $1 i32.load8_s i32.add i32.store8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 + local.get $2 i32.load16_s offset=2 - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 - local.get $2 local.get $0 + local.get $2 local.get $1 i32.load16_s offset=2 i32.add @@ -4391,7 +4209,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 return end i32.const 35072 diff --git a/tests/compiler/bindings/noExportRuntime.debug.wat b/tests/compiler/bindings/noExportRuntime.debug.wat index a75c227578..028b029173 100644 --- a/tests/compiler/bindings/noExportRuntime.debug.wat +++ b/tests/compiler/bindings/noExportRuntime.debug.wat @@ -2603,30 +2603,6 @@ local.tee $this i32.store end - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:dataStart - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:byteLength local.get $length i32.const 1073741820 local.get $alignLog2 @@ -2648,7 +2624,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -2657,7 +2633,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer local.set $4 @@ -2670,7 +2646,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer call $~lib/arraybuffer/ArrayBufferView#set:dataStart @@ -2678,7 +2654,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $length call $~lib/arraybuffer/ArrayBufferView#set:byteLength diff --git a/tests/compiler/bindings/noExportRuntime.release.wat b/tests/compiler/bindings/noExportRuntime.release.wat index dd2b17bc43..04cf11fe85 100644 --- a/tests/compiler/bindings/noExportRuntime.release.wat +++ b/tests/compiler/bindings/noExportRuntime.release.wat @@ -156,7 +156,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$132 + block $__inlined_func$~lib/rt/itcms/Object#unlink$130 local.get $0 i32.load offset=4 i32.const -4 @@ -180,7 +180,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$132 + br $__inlined_func$~lib/rt/itcms/Object#unlink$130 end local.get $0 i32.load offset=8 @@ -1580,61 +1580,6 @@ memory.fill local.get $1 ) - (func $~lib/arraybuffer/ArrayBufferView#set:buffer (param $0 i32) (param $1 i32) - local.get $0 - local.get $1 - i32.store - local.get $1 - if - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1264 - i32.const 295 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - end - ) (func $bindings/noExportRuntime/takesReturnsBasic (param $0 i32) (result i32) global.get $bindings/noExportRuntime/isBasic ) @@ -1777,6 +1722,8 @@ (local $0 i32) (local $1 i32) (local $2 i32) + (local $3 i32) + (local $4 i32) global.get $~started if return @@ -1819,7 +1766,7 @@ i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer - block $__inlined_func$start:bindings/noExportRuntime + block $__inlined_func$start:bindings/noExportRuntime$1 block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 1780 @@ -1886,47 +1833,79 @@ i32.store end global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer i32.const 0 i32.const 1 call $~lib/rt/itcms/__new local.tee $1 - i32.store offset=8 + i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=12 local.get $0 local.get $1 - call $~lib/arraybuffer/ArrayBufferView#set:buffer + i32.store + local.get $1 + if + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1264 + i32.const 295 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $2 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $4 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $2 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $4 + i32.const 3 + i32.eq + i32.and + if + local.get $2 + call $~lib/rt/itcms/Object#makeGray + end + end + end + end global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 i32.const 0 i32.store offset=8 @@ -1942,7 +1921,7 @@ global.set $~lib/memory/__stack_pointer local.get $0 global.set $bindings/noExportRuntime/isTypedArray - br $__inlined_func$start:bindings/noExportRuntime + br $__inlined_func$start:bindings/noExportRuntime$1 end i32.const 34576 i32.const 34624 diff --git a/tests/compiler/bindings/raw.debug.wat b/tests/compiler/bindings/raw.debug.wat index 1a05e8c669..ccd52bdc3e 100644 --- a/tests/compiler/bindings/raw.debug.wat +++ b/tests/compiler/bindings/raw.debug.wat @@ -1,23 +1,20 @@ (module - (type $0 (func (param i32 i32))) - (type $1 (func (param i32) (result i32))) + (type $0 (func (param i32) (result i32))) + (type $1 (func (param i32 i32))) (type $2 (func (param i32 i32) (result i32))) (type $3 (func (param i32))) (type $4 (func)) (type $5 (func (param i32 i32 i32))) (type $6 (func (result i32))) (type $7 (func (param i32 i32 i32 i32))) - (type $8 (func (param i32 i64))) - (type $9 (func (param i32 i32 f64 f64 f64 f64 f64))) - (type $10 (func (param f64) (result f64))) - (type $11 (func (param i64 i64) (result i64))) - (type $12 (func (result i64))) - (type $13 (func (param i32 i32 i64) (result i32))) - (type $14 (func (param i32 f32))) - (type $15 (func (param i32 f64))) - (type $16 (func (param i32 i32 i32) (result i32))) - (type $17 (func (param i32 i32 i64))) - (type $18 (func (param i32 i32) (result f32))) + (type $8 (func (param i32 i32 f64 f64 f64 f64 f64))) + (type $9 (func (param f64) (result f64))) + (type $10 (func (param i64 i64) (result i64))) + (type $11 (func (result i64))) + (type $12 (func (param i32 i32 i64) (result i32))) + (type $13 (func (param i32 i32 i32) (result i32))) + (type $14 (func (param i32 i32 i64))) + (type $15 (func (param i32 i32) (result f32))) (import "env" "Math.E" (global $~lib/bindings/dom/Math.E f64)) (import "env" "globalThis" (global $bindings/esm/immutableGlobal externref)) (import "env" "globalThis.globalThis" (global $bindings/esm/immutableGlobalNested externref)) @@ -2629,106 +2626,24 @@ local.get $this i32.load offset=4 ) + (func $bindings/esm/PlainObject#get:a (param $this i32) (result i32) + local.get $this + i32.load8_s + ) (func $bindings/esm/PlainObject#set:a (param $this i32) (param $a i32) local.get $this local.get $a i32.store8 ) + (func $bindings/esm/PlainObject#get:b (param $this i32) (result i32) + local.get $this + i32.load16_s offset=2 + ) (func $bindings/esm/PlainObject#set:b (param $this i32) (param $b i32) local.get $this local.get $b i32.store16 offset=2 ) - (func $bindings/esm/PlainObject#set:c (param $this i32) (param $c i32) - local.get $this - local.get $c - i32.store offset=4 - ) - (func $bindings/esm/PlainObject#set:d (param $this i32) (param $d i64) - local.get $this - local.get $d - i64.store offset=8 - ) - (func $bindings/esm/PlainObject#set:e (param $this i32) (param $e i32) - local.get $this - local.get $e - i32.store8 offset=16 - ) - (func $bindings/esm/PlainObject#set:f (param $this i32) (param $f i32) - local.get $this - local.get $f - i32.store16 offset=18 - ) - (func $bindings/esm/PlainObject#set:g (param $this i32) (param $g i32) - local.get $this - local.get $g - i32.store offset=20 - ) - (func $bindings/esm/PlainObject#set:h (param $this i32) (param $h i64) - local.get $this - local.get $h - i64.store offset=24 - ) - (func $bindings/esm/PlainObject#set:i (param $this i32) (param $i i32) - local.get $this - local.get $i - i32.store offset=32 - ) - (func $bindings/esm/PlainObject#set:j (param $this i32) (param $j i32) - local.get $this - local.get $j - i32.store offset=36 - ) - (func $bindings/esm/PlainObject#set:k (param $this i32) (param $k i32) - local.get $this - local.get $k - i32.store8 offset=40 - ) - (func $bindings/esm/PlainObject#set:l (param $this i32) (param $l f32) - local.get $this - local.get $l - f32.store offset=44 - ) - (func $bindings/esm/PlainObject#set:m (param $this i32) (param $m f64) - local.get $this - local.get $m - f64.store offset=48 - ) - (func $bindings/esm/PlainObject#set:n (param $this i32) (param $n i32) - local.get $this - local.get $n - i32.store offset=56 - local.get $this - local.get $n - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $bindings/esm/PlainObject#set:o (param $this i32) (param $o i32) - local.get $this - local.get $o - i32.store offset=60 - local.get $this - local.get $o - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $bindings/esm/PlainObject#set:p (param $this i32) (param $p i32) - local.get $this - local.get $p - i32.store offset=64 - local.get $this - local.get $p - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $bindings/esm/PlainObject#get:a (param $this i32) (result i32) - local.get $this - i32.load8_s - ) - (func $bindings/esm/PlainObject#get:b (param $this i32) (result i32) - local.get $this - i32.load16_s offset=2 - ) (func $bindings/esm/newInternref (result i32) i32.const 0 call $bindings/esm/NonPlainObject#constructor @@ -3402,30 +3317,6 @@ local.tee $this i32.store end - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:dataStart - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:byteLength local.get $length i32.const 1073741820 local.get $alignLog2 @@ -3447,7 +3338,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -3456,7 +3347,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer local.set $4 @@ -3469,7 +3360,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer call $~lib/arraybuffer/ArrayBufferView#set:dataStart @@ -3477,7 +3368,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $length call $~lib/arraybuffer/ArrayBufferView#set:byteLength @@ -4095,38 +3986,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -4156,7 +4015,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -4165,7 +4024,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -4178,7 +4037,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -4186,7 +4045,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -4194,7 +4053,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -4623,38 +4482,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -4684,7 +4511,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -4693,7 +4520,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -4706,7 +4533,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array<~lib/string/String>#set:dataStart @@ -4714,7 +4541,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array<~lib/string/String>#set:byteLength @@ -4722,7 +4549,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array<~lib/string/String>#set:length_ @@ -5067,134 +4894,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:b - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:c - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i64.const 0 - call $bindings/esm/PlainObject#set:d - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:e - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:f - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:g - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i64.const 0 - call $bindings/esm/PlainObject#set:h - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:i - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:j - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:k - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f32.const 0 - call $bindings/esm/PlainObject#set:l - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f64.const 0 - call $bindings/esm/PlainObject#set:m - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:n - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:o - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $bindings/esm/PlainObject#set:p - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/bindings/raw.release.wat b/tests/compiler/bindings/raw.release.wat index e2ed7cd278..754d321128 100644 --- a/tests/compiler/bindings/raw.release.wat +++ b/tests/compiler/bindings/raw.release.wat @@ -2164,7 +2164,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store - block $__inlined_func$~lib/string/String#concat$285 + block $__inlined_func$~lib/string/String#concat$258 local.get $1 i32.const 20 i32.sub @@ -2183,7 +2183,7 @@ global.set $~lib/memory/__stack_pointer i32.const 1760 local.set $2 - br $__inlined_func$~lib/string/String#concat$285 + br $__inlined_func$~lib/string/String#concat$258 end global.get $~lib/memory/__stack_pointer local.get $2 @@ -2341,19 +2341,20 @@ (func $bindings/esm/typedarrayFunction (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 f32) - (local $5 i32) + (local $4 i32) + (local $5 f32) (local $6 i32) (local $7 i32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2276 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -2361,150 +2362,121 @@ i32.const 0 i32.store offset=8 global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer local.get $0 i32.store - global.get $~lib/memory/__stack_pointer local.get $0 call $~lib/typedarray/Int16Array#get:length - local.set $5 + local.set $3 global.get $~lib/memory/__stack_pointer local.get $1 i32.store - block $__inlined_func$~lib/typedarray/Uint64Array#constructor (result i32) - local.get $1 - call $~lib/typedarray/Float32Array#get:length - local.get $5 - i32.add - local.set $5 + local.get $1 + call $~lib/typedarray/Float32Array#get:length + local.get $3 + i32.add + local.set $6 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 2276 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.const 7 + call $~lib/rt/itcms/__new + local.tee $3 + i32.store + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 2276 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + local.get $3 + i32.eqz + if global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner00 - global.get $~lib/memory/__stack_pointer - i32.const 2276 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.const 7 - call $~lib/rt/itcms/__new - local.tee $2 - i32.store - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 2276 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - local.get $2 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.const 3 - call $~lib/rt/itcms/__new - local.tee $2 - i32.store - end - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store - local.get $2 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=8 - local.get $5 - i32.const 134217727 - i32.gt_u - if - i32.const 1248 - i32.const 1296 - i32.const 19 - i32.const 57 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.const 3 - i32.shl - local.tee $7 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $5 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=12 - local.get $2 - local.get $5 - i32.store - local.get $2 - local.get $5 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - local.get $5 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - local.get $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $2 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $2 - br $__inlined_func$~lib/typedarray/Uint64Array#constructor - end - br $folding-inner1 + i32.const 12 + i32.const 3 + call $~lib/rt/itcms/__new + local.tee $3 + i32.store end - local.tee $2 + local.get $6 + i32.const 134217727 + i32.gt_u + if + i32.const 1248 + i32.const 1296 + i32.const 19 + i32.const 57 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.const 3 + i32.shl + local.tee $8 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $6 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=12 + local.get $3 + local.get $6 + i32.store + local.get $3 + local.get $6 + i32.const 0 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + local.get $3 + local.get $6 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + local.get $3 + local.get $8 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $3 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $3 i32.store offset=4 loop $for-loop|0 global.get $~lib/memory/__stack_pointer @@ -2512,11 +2484,11 @@ i32.store local.get $0 call $~lib/typedarray/Int16Array#get:length - local.get $3 + local.get $2 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -2528,14 +2500,14 @@ global.get $~lib/memory/__stack_pointer i32.const 2276 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store global.get $~lib/memory/__stack_pointer local.get $0 i32.store - local.get $3 + local.get $2 local.get $0 i32.load offset=8 i32.const 1 @@ -2554,50 +2526,50 @@ i32.store local.get $0 i32.load offset=4 - local.get $3 + local.get $2 i32.const 1 i32.shl i32.add i32.load16_s - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 local.get $3 - local.get $5 + local.get $2 + local.get $4 i64.extend_i32_s call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|0 end end i32.const 0 - local.set $3 + local.set $2 loop $for-loop|1 global.get $~lib/memory/__stack_pointer local.get $1 i32.store local.get $1 call $~lib/typedarray/Float32Array#get:length - local.get $3 + local.get $2 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 local.get $0 call $~lib/typedarray/Int16Array#get:length - local.get $3 + local.get $2 i32.add - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 @@ -2608,14 +2580,14 @@ global.get $~lib/memory/__stack_pointer i32.const 2276 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store global.get $~lib/memory/__stack_pointer local.get $1 i32.store - local.get $3 + local.get $2 local.get $1 i32.load offset=8 i32.const 2 @@ -2634,25 +2606,25 @@ i32.store local.get $1 i32.load offset=4 - local.get $3 + local.get $2 i32.const 2 i32.shl i32.add f32.load - local.set $4 + local.set $5 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 - local.get $5 + local.get $3 local.get $4 + local.get $5 i64.trunc_sat_f32_u call $~lib/typedarray/Uint64Array#__set - local.get $3 + local.get $2 i32.const 1 i32.add - local.set $3 + local.set $2 br $for-loop|1 end end @@ -2660,7 +2632,7 @@ i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 return end i32.const 35072 @@ -2897,7 +2869,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store - block $__inlined_func$~lib/rt/itcms/__renew$270 + block $__inlined_func$~lib/rt/itcms/__renew$243 i32.const 1073741820 local.get $2 i32.const 1 @@ -2940,7 +2912,7 @@ i32.store offset=16 local.get $2 local.set $1 - br $__inlined_func$~lib/rt/itcms/__renew$270 + br $__inlined_func$~lib/rt/itcms/__renew$243 end local.get $3 local.get $4 @@ -3185,6 +3157,215 @@ i32.add global.set $~lib/memory/__stack_pointer ) + (func $bindings/esm/arrayOfStringsFunction (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 2276 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store + local.get $0 + call $~lib/array/Array#get:length + local.set $3 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + call $~lib/array/Array#get:length + local.get $3 + i32.add + local.set $7 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 2276 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 12 + call $~lib/rt/itcms/__new + local.tee $3 + i32.store + local.get $7 + i32.const 268435455 + i32.gt_u + if + i32.const 1248 + i32.const 1920 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $7 + local.get $7 + i32.const 8 + i32.le_u + select + i32.const 2 + i32.shl + local.tee $4 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $5 + i32.store offset=12 + local.get $3 + local.get $5 + i32.store + local.get $3 + local.get $5 + i32.const 0 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + local.get $3 + local.get $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + local.get $3 + local.get $4 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=8 + local.get $3 + local.get $7 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=4 + loop $for-loop|0 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store + local.get $0 + call $~lib/array/Array#get:length + local.get $2 + i32.gt_s + if + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=12 + local.get $0 + local.get $2 + call $~lib/array/Array<~lib/string/String>#__get + local.set $4 + global.get $~lib/memory/__stack_pointer + local.get $4 + i32.store offset=8 + local.get $3 + local.get $2 + local.get $4 + call $~lib/array/Array<~lib/string/String>#__set + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|0 + end + end + i32.const 0 + local.set $2 + loop $for-loop|1 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + call $~lib/array/Array#get:length + local.get $2 + i32.gt_s + if + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=12 + local.get $0 + call $~lib/array/Array#get:length + local.get $2 + i32.add + local.set $4 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=12 + local.get $1 + local.get $2 + call $~lib/array/Array<~lib/string/String>#__get + local.set $5 + global.get $~lib/memory/__stack_pointer + local.get $5 + i32.store offset=8 + local.get $3 + local.get $4 + local.get $5 + call $~lib/array/Array<~lib/string/String>#__set + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|1 + end + end + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $3 + return + end + i32.const 35072 + i32.const 35120 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + ) (func $export:bindings/esm/bufferFunction (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) @@ -3449,7 +3630,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 - block $__inlined_func$bindings/esm/staticarrayFunction$1 (result i32) + block $__inlined_func$bindings/esm/staticarrayFunction (result i32) global.get $~lib/memory/__stack_pointer i32.const 12 i32.sub @@ -3605,7 +3786,7 @@ i32.add global.set $~lib/memory/__stack_pointer local.get $4 - br $__inlined_func$bindings/esm/staticarrayFunction$1 + br $__inlined_func$bindings/esm/staticarrayFunction end br $folding-inner1 end @@ -3653,6 +3834,7 @@ (local $4 i32) (local $5 i32) (local $6 i32) + (local $7 i32) global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -3683,20 +3865,20 @@ i32.const 0 i32.store offset=8 global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer local.get $0 i32.store - global.get $~lib/memory/__stack_pointer local.get $0 call $~lib/array/Array#get:length - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer local.get $1 i32.store local.get $1 call $~lib/array/Array#get:length - local.get $4 + local.get $3 i32.add - local.set $5 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 16 i32.sub @@ -3715,37 +3897,9 @@ i32.const 16 i32.const 11 call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 + local.tee $4 i32.store - local.get $6 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $5 + local.get $3 i32.const 268435455 i32.gt_u if @@ -3758,54 +3912,54 @@ end global.get $~lib/memory/__stack_pointer i32.const 8 - local.get $5 - local.get $5 - i32.const 8 + local.get $3 + local.get $3 + i32.const 8 i32.le_u select i32.const 2 i32.shl - local.tee $3 + local.tee $7 i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 + local.tee $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $4 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $5 i32.store offset=12 - local.get $6 local.get $4 + local.get $5 i32.store - local.get $6 local.get $4 + local.get $5 i32.const 0 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 local.get $4 + i32.store offset=8 + local.get $4 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $3 + local.get $4 + i32.store offset=8 + local.get $4 + local.get $7 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $5 + local.get $4 + i32.store offset=8 + local.get $4 + local.get $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store offset=4 loop $for-loop|0 global.get $~lib/memory/__stack_pointer @@ -3817,12 +3971,12 @@ i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 - local.get $6 + local.get $4 local.get $2 local.get $0 local.get $2 @@ -3847,7 +4001,7 @@ i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $4 i32.store global.get $~lib/memory/__stack_pointer local.get $0 @@ -3860,7 +4014,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 - local.get $6 + local.get $4 local.get $3 local.get $1 local.get $2 @@ -3881,7 +4035,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $4 return end i32.const 35072 @@ -3892,20 +4046,48 @@ unreachable ) (func $export:bindings/esm/arrayOfStringsFunction (param $0 i32) (param $1 i32) (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 2276 + i32.lt_s + if + i32.const 35072 + i32.const 35120 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=4 + local.get $0 + local.get $1 + call $bindings/esm/arrayOfStringsFunction + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + ) + (func $export:bindings/esm/objectFunction (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 2276 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer local.get $0 i32.store @@ -3913,472 +4095,108 @@ local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - i32.const 16 + i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2276 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - call $~lib/array/Array#get:length - local.set $4 + i32.const 0 + i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - call $~lib/array/Array#get:length - local.get $4 - i32.add - local.set $4 global.get $~lib/memory/__stack_pointer - i32.const 16 + i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer i32.const 2276 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 + local.get $0 + local.set $2 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 12 + i32.const 68 + i32.const 13 call $~lib/rt/itcms/__new - local.tee $5 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.store - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - i32.store offset=12 - local.get $4 - i32.const 268435455 - i32.gt_u - if - i32.const 1248 - i32.const 1920 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $4 - local.get $4 - i32.const 8 - i32.le_u - select - i32.const 2 - i32.shl - local.tee $6 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $3 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=12 - local.get $5 - local.get $3 - i32.store - local.get $5 - local.get $3 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - local.get $3 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - local.get $6 - i32.store offset=8 + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - local.get $4 - i32.store offset=12 + i32.const 2276 + i32.lt_s + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - loop $for-loop|0 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store - local.get $0 - call $~lib/array/Array#get:length - local.get $2 - i32.gt_s - if - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=12 - local.get $0 - local.get $2 - call $~lib/array/Array<~lib/string/String>#__get - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=8 - local.get $5 - local.get $2 - local.get $3 - call $~lib/array/Array<~lib/string/String>#__set - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $for-loop|0 - end - end i32.const 0 - local.set $2 - loop $for-loop|1 + i32.store + local.get $0 + i32.eqz + if global.get $~lib/memory/__stack_pointer - local.get $1 + i32.const 0 + i32.const 0 + call $~lib/rt/itcms/__new + local.tee $0 i32.store - local.get $1 - call $~lib/array/Array#get:length - local.get $2 - i32.gt_s - if - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=12 - local.get $0 - call $~lib/array/Array#get:length - local.get $2 - i32.add - local.set $3 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=12 - local.get $1 - local.get $2 - call $~lib/array/Array<~lib/string/String>#__get - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=8 - local.get $5 - local.get $3 - local.get $4 - call $~lib/array/Array<~lib/string/String>#__set - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $for-loop|1 - end end global.get $~lib/memory/__stack_pointer - i32.const 16 + i32.const 4 i32.add global.set $~lib/memory/__stack_pointer + local.get $0 + i32.store global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $5 - return - end - i32.const 35072 - i32.const 35120 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - ) - (func $export:bindings/esm/objectFunction (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner1 - global.get $~lib/memory/__stack_pointer - i32.const 2276 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 2276 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - block $__inlined_func$bindings/esm/PlainObject#constructor$4 (result i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner00 - global.get $~lib/memory/__stack_pointer - i32.const 2276 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i32.const 68 - i32.const 13 - call $~lib/rt/itcms/__new - local.tee $2 - i32.store - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 2276 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - local.get $2 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__new - local.tee $2 - i32.store - end - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $2 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store8 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store16 offset=2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store8 offset=16 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store16 offset=18 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i64.const 0 - i64.store offset=24 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=32 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=36 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store8 offset=40 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - f32.const 0 - f32.store offset=44 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - f64.const 0 - f64.store offset=48 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=56 - local.get $2 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=60 - local.get $2 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=64 - local.get $2 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $2 - br $__inlined_func$bindings/esm/PlainObject#constructor$4 - end - br $folding-inner1 - end - local.tee $2 - i32.store - global.get $~lib/memory/__stack_pointer local.get $2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 i32.store offset=8 - local.get $0 + local.get $2 i32.load8_s local.set $3 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 - local.get $2 + local.get $0 local.get $3 local.get $1 i32.load8_s i32.add i32.store8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=8 - local.get $0 + local.get $2 i32.load16_s offset=2 - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 - local.get $2 local.get $0 + local.get $2 local.get $1 i32.load16_s offset=2 i32.add @@ -4391,7 +4209,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 return end i32.const 35072 diff --git a/tests/compiler/call-rest.debug.wat b/tests/compiler/call-rest.debug.wat index af743cb0b0..53ab22fbb7 100644 --- a/tests/compiler/call-rest.debug.wat +++ b/tests/compiler/call-rest.debug.wat @@ -3061,14 +3061,6 @@ local.get $7 i32.store offset=4 local.get $7 - i32.const 0 - call $call-rest/Foo#set:values - local.get $this - local.set $7 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 2 diff --git a/tests/compiler/call-rest.release.wat b/tests/compiler/call-rest.release.wat index 24506bdd09..9f9fcdfc9c 100644 --- a/tests/compiler/call-rest.release.wat +++ b/tests/compiler/call-rest.release.wat @@ -147,7 +147,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$160 + block $__inlined_func$~lib/rt/itcms/Object#unlink$159 local.get $0 i32.load offset=4 i32.const -4 @@ -171,7 +171,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$160 + br $__inlined_func$~lib/rt/itcms/Object#unlink$159 end local.get $0 i32.load offset=8 @@ -2028,7 +2028,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store - block $__inlined_func$~lib/rt/itcms/__renew$154 + block $__inlined_func$~lib/rt/itcms/__renew$153 i32.const 1073741820 local.get $2 i32.const 1 @@ -2071,7 +2071,7 @@ i32.store offset=16 local.get $2 local.set $1 - br $__inlined_func$~lib/rt/itcms/__renew$154 + br $__inlined_func$~lib/rt/itcms/__renew$153 end local.get $3 local.get $4 @@ -2211,15 +2211,6 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=4 - local.get $2 - i32.const 0 - i32.store - local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 2 i32.const 4 diff --git a/tests/compiler/class.debug.wat b/tests/compiler/class.debug.wat index 7e5b928f9c..740d99f295 100644 --- a/tests/compiler/class.debug.wat +++ b/tests/compiler/class.debug.wat @@ -2682,38 +2682,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -2743,7 +2711,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -2752,7 +2720,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -2765,7 +2733,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -2773,7 +2741,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -2781,7 +2749,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ diff --git a/tests/compiler/class.release.wat b/tests/compiler/class.release.wat index d0d28890f0..b3a5bb5353 100644 --- a/tests/compiler/class.release.wat +++ b/tests/compiler/class.release.wat @@ -109,7 +109,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$139 + block $__inlined_func$~lib/rt/itcms/Object#unlink$136 local.get $0 i32.load offset=4 i32.const -4 @@ -133,7 +133,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$139 + br $__inlined_func$~lib/rt/itcms/Object#unlink$136 end local.get $0 i32.load offset=8 @@ -1668,38 +1668,14 @@ local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - call $~lib/array/Array#set:buffer - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 1 call $~lib/rt/itcms/__new local.tee $1 - i32.store offset=8 + i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 - i32.store offset=4 + i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=12 @@ -1708,19 +1684,19 @@ call $~lib/array/Array#set:buffer global.get $~lib/memory/__stack_pointer local.get $2 - i32.store offset=4 + i32.store offset=8 local.get $2 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $2 - i32.store offset=4 + i32.store offset=8 local.get $2 i32.const 32 i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $2 - i32.store offset=4 + i32.store offset=8 local.get $2 i32.const 0 i32.store offset=12 diff --git a/tests/compiler/constructor.debug.wat b/tests/compiler/constructor.debug.wat index b607b591d6..64ac738324 100644 --- a/tests/compiler/constructor.debug.wat +++ b/tests/compiler/constructor.debug.wat @@ -2260,11 +2260,6 @@ local.get $a i32.store ) - (func $constructor/EmptyCtorWithFieldNoInit#set:a (param $this i32) (param $a i32) - local.get $this - local.get $a - i32.store - ) (func $constructor/EmptyCtorWithFieldAccess#set:a (param $this i32) (param $a i32) local.get $this local.get $a @@ -2275,11 +2270,6 @@ local.get $a i32.store ) - (func $constructor/JustFieldNoInit#set:a (param $this i32) (param $a i32) - local.get $this - local.get $a - i32.store - ) (func $constructor/CtorReturns#constructor (param $this i32) (result i32) i32.const 0 return @@ -2540,42 +2530,6 @@ global.set $~lib/memory/__stack_pointer local.get $1 ) - (func $constructor/EmptyCtorWithFieldNoInit#constructor (param $this i32) (result i32) - (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - call $~stack_check - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - local.get $this - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.const 6 - call $~lib/rt/itcms/__new - local.tee $this - i32.store - end - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $constructor/EmptyCtorWithFieldNoInit#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $1 - ) (func $constructor/EmptyCtorWithFieldAccess#constructor (param $this i32) (result i32) (local $1 i32) global.get $~lib/memory/__stack_pointer @@ -2602,14 +2556,6 @@ local.get $1 i32.store offset=4 local.get $1 - i32.const 0 - call $constructor/EmptyCtorWithFieldAccess#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 i32.const 1 call $constructor/EmptyCtorWithFieldAccess#set:a local.get $this @@ -2737,14 +2683,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $constructor/JustFieldNoInit#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -3147,6 +3085,34 @@ global.set $~lib/memory/__stack_pointer local.get $1 ) + (func $constructor/EmptyCtorWithFieldNoInit#constructor (param $this i32) (result i32) + (local $1 i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + call $~stack_check + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + local.get $this + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.const 6 + call $~lib/rt/itcms/__new + local.tee $this + i32.store + end + local.get $this + local.set $1 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $1 + ) (func $~lib/object/Object#constructor (param $this i32) (result i32) (local $1 i32) global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/constructor.release.wat b/tests/compiler/constructor.release.wat index 339b5624fc..8f5ac86640 100644 --- a/tests/compiler/constructor.release.wat +++ b/tests/compiler/constructor.release.wat @@ -181,7 +181,7 @@ local.get $0 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$153 + block $__inlined_func$~lib/rt/itcms/Object#unlink$150 local.get $1 i32.load offset=4 i32.const -4 @@ -205,7 +205,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$153 + br $__inlined_func$~lib/rt/itcms/Object#unlink$150 end local.get $1 i32.load offset=8 @@ -1747,7 +1747,7 @@ local.get $0 global.set $constructor/emptyCtorWithFieldInit global.get $~lib/memory/__stack_pointer - i32.const 8 + i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -1755,8 +1755,8 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store + i32.const 0 + i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.const 6 @@ -1764,13 +1764,7 @@ local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 8 + i32.const 4 i32.add global.set $~lib/memory/__stack_pointer local.get $0 @@ -1796,12 +1790,6 @@ local.get $0 i32.store offset=4 local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 i32.const 1 i32.store global.get $~lib/memory/__stack_pointer @@ -1904,12 +1892,6 @@ local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/duplicate-fields.debug.wat b/tests/compiler/duplicate-fields.debug.wat index d8ebed0ef6..03b34f2366 100644 --- a/tests/compiler/duplicate-fields.debug.wat +++ b/tests/compiler/duplicate-fields.debug.wat @@ -2357,26 +2357,6 @@ local.get $this i32.load ) - (func $duplicate-fields/A3#set:prot (param $this i32) (param $prot i32) - local.get $this - local.get $prot - i32.store - ) - (func $duplicate-fields/A3#set:pub (param $this i32) (param $pub i32) - local.get $this - local.get $pub - i32.store offset=4 - ) - (func $duplicate-fields/B3#set:prot (param $this i32) (param $prot i32) - local.get $this - local.get $prot - i32.store - ) - (func $duplicate-fields/B3#set:pub (param $this i32) (param $pub i32) - local.get $this - local.get $pub - i32.store offset=4 - ) (func $~lib/rt/__visit_globals (param $0 i32) (local $1 i32) global.get $duplicate-fields/foo @@ -2526,14 +2506,6 @@ local.get $2 i32.store offset=4 local.get $2 - i32.const 0 - call $duplicate-fields/A#set:bar - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 local.get $bar call $duplicate-fields/A#set:bar local.get $this @@ -2564,14 +2536,6 @@ local.tee $this i32.store end - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - call $duplicate-fields/B#set:bar global.get $~lib/memory/__stack_pointer local.get $this local.set $2 @@ -2628,14 +2592,6 @@ local.get $2 i32.store offset=4 local.get $2 - i32.const 0 - call $duplicate-fields/A2#set:bar - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 local.get $bar local.set $2 global.get $~lib/memory/__stack_pointer @@ -2674,14 +2630,6 @@ local.tee $this i32.store end - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - call $duplicate-fields/B2#set:bar global.get $~lib/memory/__stack_pointer local.get $this local.set $2 @@ -2745,14 +2693,6 @@ local.get $2 i32.store offset=4 local.get $2 - i32.const 0 - call $duplicate-fields/Foo#set:foo - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 local.get $foo call $duplicate-fields/Foo#set:foo local.get $this @@ -2796,22 +2736,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $duplicate-fields/A3#set:prot - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $duplicate-fields/A3#set:pub - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -2850,22 +2774,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $duplicate-fields/B3#set:prot - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $duplicate-fields/B3#set:pub - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/duplicate-fields.release.wat b/tests/compiler/duplicate-fields.release.wat index 5bd2b707b9..83315fea51 100644 --- a/tests/compiler/duplicate-fields.release.wat +++ b/tests/compiler/duplicate-fields.release.wat @@ -116,7 +116,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$139 + block $__inlined_func$~lib/rt/itcms/Object#unlink$132 local.get $0 i32.load offset=4 i32.const -4 @@ -140,7 +140,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$139 + br $__inlined_func$~lib/rt/itcms/Object#unlink$132 end local.get $0 i32.load offset=8 @@ -1706,12 +1706,6 @@ local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 @@ -1740,12 +1734,6 @@ local.get $0 i32.store offset=4 local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 i32.const 10 i32.store global.get $~lib/memory/__stack_pointer @@ -1803,12 +1791,6 @@ local.get $1 i32.store offset=4 local.get $1 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 i32.const 1 i32.store global.get $~lib/memory/__stack_pointer @@ -1839,12 +1821,6 @@ local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - call $duplicate-fields/A2#set:bar - global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 @@ -1878,12 +1854,6 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $0 - i32.const 0 - call $duplicate-fields/A2#set:bar - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=8 @@ -2006,36 +1976,12 @@ local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/extends-baseaggregate.debug.wat b/tests/compiler/extends-baseaggregate.debug.wat index ae6d22ffe4..10a8a76897 100644 --- a/tests/compiler/extends-baseaggregate.debug.wat +++ b/tests/compiler/extends-baseaggregate.debug.wat @@ -6,9 +6,8 @@ (type $4 (func (param i32 i32) (result i32))) (type $5 (func (param i32 i32 i32))) (type $6 (func (param i32 i32 i32 i32))) - (type $7 (func (param i32 f64))) - (type $8 (func (param i32 i32 i64) (result i32))) - (type $9 (func (result i32))) + (type $7 (func (param i32 i32 i64) (result i32))) + (type $8 (func (result i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (global $extends-baseaggregate/poolB i32 (i32.const 64)) (global $extends-baseaggregate/poolA i32 (i32.const 144)) @@ -2251,15 +2250,67 @@ local.get $ptr return ) - (func $extends-baseaggregate/A1#set:padding0 (param $this i32) (param $padding0 f64) + (func $~lib/array/Array#get:length_ (param $this i32) (result i32) + local.get $this + i32.load offset=12 + ) + (func $~lib/arraybuffer/ArrayBufferView#get:byteLength (param $this i32) (result i32) local.get $this - local.get $padding0 - f64.store + i32.load offset=8 ) - (func $extends-baseaggregate/A1#set:padding1 (param $this i32) (param $padding1 f64) + (func $~lib/arraybuffer/ArrayBufferView#get:buffer (param $this i32) (result i32) local.get $this - local.get $padding1 - f64.store offset=8 + i32.load + ) + (func $~lib/rt/itcms/Object#get:rtSize (param $this i32) (result i32) + local.get $this + i32.load offset=16 + ) + (func $~lib/rt/itcms/__renew (param $oldPtr i32) (param $size i32) (result i32) + (local $oldObj i32) + (local $newPtr i32) + (local $4 i32) + (local $5 i32) + local.get $oldPtr + i32.const 20 + i32.sub + local.set $oldObj + local.get $size + local.get $oldObj + call $~lib/rt/common/BLOCK#get:mmInfo + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.sub + i32.le_u + if + local.get $oldObj + local.get $size + call $~lib/rt/itcms/Object#set:rtSize + local.get $oldPtr + return + end + local.get $size + local.get $oldObj + call $~lib/rt/itcms/Object#get:rtId + call $~lib/rt/itcms/__new + local.set $newPtr + local.get $newPtr + local.get $oldPtr + local.get $size + local.tee $4 + local.get $oldObj + call $~lib/rt/itcms/Object#get:rtSize + local.tee $5 + local.get $4 + local.get $5 + i32.lt_u + select + memory.copy + local.get $newPtr + return ) (func $~lib/rt/itcms/__link (param $parentPtr i32) (param $childPtr i32) (param $expectMultiple i32) (local $child i32) @@ -2329,77 +2380,6 @@ end end ) - (func $extends-baseaggregate/A1#set:c1 (param $this i32) (param $c1 i32) - local.get $this - local.get $c1 - i32.store offset=16 - local.get $this - local.get $c1 - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $~lib/array/Array#get:length_ (param $this i32) (result i32) - local.get $this - i32.load offset=12 - ) - (func $~lib/arraybuffer/ArrayBufferView#get:byteLength (param $this i32) (result i32) - local.get $this - i32.load offset=8 - ) - (func $~lib/arraybuffer/ArrayBufferView#get:buffer (param $this i32) (result i32) - local.get $this - i32.load - ) - (func $~lib/rt/itcms/Object#get:rtSize (param $this i32) (result i32) - local.get $this - i32.load offset=16 - ) - (func $~lib/rt/itcms/__renew (param $oldPtr i32) (param $size i32) (result i32) - (local $oldObj i32) - (local $newPtr i32) - (local $4 i32) - (local $5 i32) - local.get $oldPtr - i32.const 20 - i32.sub - local.set $oldObj - local.get $size - local.get $oldObj - call $~lib/rt/common/BLOCK#get:mmInfo - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.sub - i32.le_u - if - local.get $oldObj - local.get $size - call $~lib/rt/itcms/Object#set:rtSize - local.get $oldPtr - return - end - local.get $size - local.get $oldObj - call $~lib/rt/itcms/Object#get:rtId - call $~lib/rt/itcms/__new - local.set $newPtr - local.get $newPtr - local.get $oldPtr - local.get $size - local.tee $4 - local.get $oldObj - call $~lib/rt/itcms/Object#get:rtSize - local.tee $5 - local.get $4 - local.get $5 - i32.lt_u - select - memory.copy - local.get $newPtr - return - ) (func $~lib/array/Array#get:dataStart (param $this i32) (result i32) local.get $this i32.load offset=4 @@ -2624,30 +2604,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f64.const 0 - call $extends-baseaggregate/A1#set:padding0 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f64.const 0 - call $extends-baseaggregate/A1#set:padding1 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $extends-baseaggregate/A1#set:c1 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/extends-baseaggregate.release.wat b/tests/compiler/extends-baseaggregate.release.wat index 997ed95a65..7fa6f9c971 100644 --- a/tests/compiler/extends-baseaggregate.release.wat +++ b/tests/compiler/extends-baseaggregate.release.wat @@ -6,7 +6,6 @@ (type $4 (func (param i32 i32 i32 i32))) (type $5 (func (param i32 i32 i64))) (type $6 (func (result i32))) - (type $7 (func (param i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (global $~lib/rt/itcms/total (mut i32) (i32.const 0)) (global $~lib/rt/itcms/threshold (mut i32) (i32.const 0)) @@ -120,7 +119,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$142 + block $__inlined_func$~lib/rt/itcms/Object#unlink$139 local.get $0 i32.load offset=4 i32.const -4 @@ -144,7 +143,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$142 + br $__inlined_func$~lib/rt/itcms/Object#unlink$139 end local.get $0 i32.load offset=8 @@ -1544,60 +1543,47 @@ memory.fill local.get $1 ) - (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $1 - i32.eqz - if - return - end + (func $~lib/rt/itcms/__link (param $0 i32) (param $1 i32) + (local $2 i32) local.get $0 i32.eqz if - i32.const 0 - i32.const 1280 - i32.const 295 - i32.const 14 - call $~lib/builtins/abort - unreachable + return end global.get $~lib/rt/itcms/white - local.get $1 + local.get $0 i32.const 20 i32.sub - local.tee $1 + local.tee $0 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $0 - i32.const 20 - i32.sub - local.tee $0 - i32.load offset=4 + i32.const 1152 + i32.load i32.const 3 i32.and - local.tee $3 + local.tee $2 global.get $~lib/rt/itcms/white i32.eqz i32.eq if + i32.const 1148 local.get $0 local.get $1 - local.get $2 select call $~lib/rt/itcms/Object#makeGray else global.get $~lib/rt/itcms/state i32.const 1 i32.eq - local.get $3 + local.get $2 i32.const 3 i32.eq i32.and if - local.get $1 + local.get $0 call $~lib/rt/itcms/Object#makeGray end end @@ -1787,11 +1773,11 @@ i32.const 20 i32.const 7 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -1804,19 +1790,19 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - local.get $6 + local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer i32.const 20 i32.const 5 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store end global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -1829,56 +1815,34 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $6 + local.get $5 i32.eqz if global.get $~lib/memory/__stack_pointer i32.const 0 i32.const 0 call $~lib/rt/itcms/__new - local.tee $6 + local.tee $5 i32.store end global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - f64.const 0 - f64.store - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - f64.const 0 - f64.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=16 - local.get $6 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.store global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $5 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -1896,11 +1860,11 @@ i32.store i32.const 1180 i32.load - local.tee $5 + local.tee $4 i32.const 1 i32.add - local.tee $4 - local.set $2 + local.tee $3 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -1915,15 +1879,15 @@ global.get $~lib/memory/__stack_pointer i32.const 1168 i32.store - local.get $2 + local.get $0 i32.const 1176 i32.load - local.tee $0 + local.tee $1 i32.const 2 i32.shr_u i32.gt_u if - local.get $2 + local.get $0 i32.const 268435455 i32.gt_u if @@ -1937,20 +1901,20 @@ global.get $~lib/memory/__stack_pointer i32.const 1168 i32.store - block $__inlined_func$~lib/rt/itcms/__renew$141 + block $__inlined_func$~lib/rt/itcms/__renew$138 i32.const 1073741820 - local.get $0 + local.get $1 i32.const 1 i32.shl - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i32.const 1073741820 i32.ge_u select local.tee $1 i32.const 8 - local.get $2 - local.get $2 + local.get $0 + local.get $0 i32.const 8 i32.le_u select @@ -1961,13 +1925,13 @@ local.get $1 i32.lt_u select - local.tee $3 + local.tee $2 i32.const 1168 i32.load - local.tee $0 + local.tee $1 i32.const 20 i32.sub - local.tee $2 + local.tee $6 i32.load i32.const -4 i32.and @@ -1975,26 +1939,26 @@ i32.sub i32.le_u if + local.get $6 local.get $2 - local.get $3 i32.store offset=16 - local.get $0 - local.set $1 - br $__inlined_func$~lib/rt/itcms/__renew$141 + local.get $1 + local.set $0 + br $__inlined_func$~lib/rt/itcms/__renew$138 end - local.get $3 local.get $2 + local.get $6 i32.load offset=12 call $~lib/rt/itcms/__new - local.tee $1 - local.get $0 - local.get $3 + local.tee $0 + local.get $1 local.get $2 + local.get $6 i32.load offset=16 - local.tee $2 + local.tee $6 local.get $2 - local.get $3 - i32.gt_u + local.get $6 + i32.lt_u select memory.copy end @@ -2003,18 +1967,17 @@ i32.ne if i32.const 1168 - local.get $1 + local.get $0 i32.store i32.const 1172 - local.get $1 + local.get $0 i32.store - i32.const 1168 - local.get $1 + local.get $0 i32.const 0 call $~lib/rt/itcms/__link end i32.const 1176 - local.get $3 + local.get $2 i32.store end global.get $~lib/memory/__stack_pointer @@ -2026,21 +1989,20 @@ i32.store i32.const 1172 i32.load - local.get $5 + local.get $4 i32.const 2 i32.shl i32.add - local.get $6 + local.get $5 i32.store - i32.const 1168 - local.get $6 + local.get $5 i32.const 1 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer i32.const 1168 i32.store i32.const 1180 - local.get $4 + local.get $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 diff --git a/tests/compiler/extends-recursive.debug.wat b/tests/compiler/extends-recursive.debug.wat index e0d1b59343..2984c7c9aa 100644 --- a/tests/compiler/extends-recursive.debug.wat +++ b/tests/compiler/extends-recursive.debug.wat @@ -3,8 +3,8 @@ (type $1 (func (param i32 i32))) (type $2 (func (param i32))) (type $3 (func)) - (type $4 (func (param i32 i32 i32))) - (type $5 (func (param i32 i32) (result i32))) + (type $4 (func (param i32 i32) (result i32))) + (type $5 (func (param i32 i32 i32))) (type $6 (func (param i32 i32 i32 i32))) (type $7 (func (param i32 i32 i64) (result i32))) (type $8 (func (result i32))) @@ -2241,83 +2241,6 @@ local.get $ptr return ) - (func $~lib/rt/itcms/__link (param $parentPtr i32) (param $childPtr i32) (param $expectMultiple i32) - (local $child i32) - (local $parent i32) - (local $parentColor i32) - local.get $childPtr - i32.eqz - if - return - end - i32.const 1 - drop - local.get $parentPtr - i32.eqz - if - i32.const 0 - i32.const 96 - i32.const 295 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - local.get $childPtr - i32.const 20 - i32.sub - local.set $child - local.get $child - call $~lib/rt/itcms/Object#get:color - global.get $~lib/rt/itcms/white - i32.eq - if - local.get $parentPtr - i32.const 20 - i32.sub - local.set $parent - local.get $parent - call $~lib/rt/itcms/Object#get:color - local.set $parentColor - local.get $parentColor - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $expectMultiple - if - local.get $parent - call $~lib/rt/itcms/Object#makeGray - else - local.get $child - call $~lib/rt/itcms/Object#makeGray - end - else - local.get $parentColor - i32.const 3 - i32.eq - if (result i32) - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - else - i32.const 0 - end - if - local.get $child - call $~lib/rt/itcms/Object#makeGray - end - end - end - ) - (func $extends-recursive/Parent#set:child (param $this i32) (param $child i32) - local.get $this - local.get $child - i32.store - local.get $this - local.get $child - i32.const 0 - call $~lib/rt/itcms/__link - ) (func $start:extends-recursive memory.size i32.const 16 @@ -2462,14 +2385,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $extends-recursive/Parent#set:child - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/extends-recursive.release.wat b/tests/compiler/extends-recursive.release.wat index 5ccacc74bf..2cd3066ab6 100644 --- a/tests/compiler/extends-recursive.release.wat +++ b/tests/compiler/extends-recursive.release.wat @@ -90,19 +90,19 @@ local.get $0 i32.const 20 i32.sub - local.tee $0 + local.tee $1 i32.load offset=4 i32.const 3 i32.and i32.eq if - local.get $0 + local.get $1 global.get $~lib/rt/itcms/iter i32.eq if - local.get $0 + local.get $1 i32.load offset=8 - local.tee $1 + local.tee $0 i32.eqz if i32.const 0 @@ -112,21 +112,21 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$116 - local.get $0 + block $__inlined_func$~lib/rt/itcms/Object#unlink$114 + local.get $1 i32.load offset=4 i32.const -4 i32.and - local.tee $1 + local.tee $0 i32.eqz if - local.get $0 + local.get $1 i32.load offset=8 i32.eqz - local.get $0 + local.get $1 i32.const 34236 i32.lt_u i32.and @@ -139,9 +139,9 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$116 + br $__inlined_func$~lib/rt/itcms/Object#unlink$114 end - local.get $0 + local.get $1 i32.load offset=8 local.tee $2 i32.eqz @@ -153,11 +153,11 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 local.get $2 i32.store offset=8 local.get $2 - local.get $1 + local.get $0 local.get $2 i32.load offset=4 i32.const 3 @@ -167,15 +167,15 @@ end global.get $~lib/rt/itcms/toSpace local.set $2 - local.get $0 + local.get $1 i32.load offset=12 - local.tee $1 + local.tee $0 i32.const 2 i32.le_u if (result i32) i32.const 1 else - local.get $1 + local.get $0 i32.const 1440 i32.load i32.gt_u @@ -187,7 +187,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.const 2 i32.shl i32.const 1444 @@ -199,8 +199,8 @@ local.set $3 local.get $2 i32.load offset=8 - local.set $1 - local.get $0 + local.set $0 + local.get $1 global.get $~lib/rt/itcms/white i32.eqz i32.const 2 @@ -209,19 +209,19 @@ local.get $2 i32.or i32.store offset=4 - local.get $0 local.get $1 + local.get $0 i32.store offset=8 - local.get $1 local.get $0 local.get $1 + local.get $0 i32.load offset=4 i32.const 3 i32.and i32.or i32.store offset=4 local.get $2 - local.get $0 + local.get $1 i32.store offset=8 global.get $~lib/rt/itcms/visitCount i32.const 1 @@ -1548,7 +1548,7 @@ (local $0 i32) (local $1 i32) (local $2 i32) - block $__inlined_func$start:extends-recursive$1 + block $__inlined_func$start:extends-recursive memory.size i32.const 16 i32.shl @@ -1656,12 +1656,6 @@ local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -1671,7 +1665,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$start:extends-recursive$1 + br $__inlined_func$start:extends-recursive end i32.const 34256 i32.const 34304 diff --git a/tests/compiler/field-initialization.debug.wat b/tests/compiler/field-initialization.debug.wat index acb835fa02..15b078c0d5 100644 --- a/tests/compiler/field-initialization.debug.wat +++ b/tests/compiler/field-initialization.debug.wat @@ -2261,11 +2261,6 @@ local.get $this i32.load ) - (func $field-initialization/Value#set:a (param $this i32) (param $a i32) - local.get $this - local.get $a - i32.store - ) (func $field-initialization/Value#get:a (param $this i32) (result i32) local.get $this i32.load @@ -2364,24 +2359,10 @@ local.get $this i32.load ) - (func $field-initialization/Nullable#set:a (param $this i32) (param $a i32) - local.get $this - local.get $a - i32.store - local.get $this - local.get $a - i32.const 0 - call $~lib/rt/itcms/__link - ) (func $field-initialization/Nullable#get:a (param $this i32) (result i32) local.get $this i32.load ) - (func $field-initialization/Value_Ctor#set:a (param $this i32) (param $a i32) - local.get $this - local.get $a - i32.store - ) (func $field-initialization/Value_Ctor#get:a (param $this i32) (result i32) local.get $this i32.load @@ -2443,15 +2424,6 @@ local.get $this i32.load ) - (func $field-initialization/Nullable_Ctor#set:a (param $this i32) (param $a i32) - local.get $this - local.get $a - i32.store - local.get $this - local.get $a - i32.const 0 - call $~lib/rt/itcms/__link - ) (func $field-initialization/Nullable_Ctor#get:a (param $this i32) (result i32) local.get $this i32.load @@ -2495,20 +2467,6 @@ local.get $this i32.load ) - (func $field-initialization/SomeObject#set:a (param $this i32) (param $a i32) - local.get $this - local.get $a - i32.store - ) - (func $field-initialization/SomeObject#set:b (param $this i32) (param $b i32) - local.get $this - local.get $b - i32.store offset=4 - local.get $this - local.get $b - i32.const 0 - call $~lib/rt/itcms/__link - ) (func $field-initialization/SomeObject#get:a (param $this i32) (result i32) local.get $this i32.load @@ -2634,6 +2592,20 @@ i32.const 0 return ) + (func $field-initialization/SomeObject#set:a (param $this i32) (param $a i32) + local.get $this + local.get $a + i32.store + ) + (func $field-initialization/SomeObject#set:b (param $this i32) (param $b i32) + local.get $this + local.get $b + i32.store offset=4 + local.get $this + local.get $b + i32.const 0 + call $~lib/rt/itcms/__link + ) (func $field-initialization/SomeOtherObject#set:c (param $this i32) (param $c i32) local.get $this local.get $c @@ -3107,14 +3079,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $field-initialization/Value#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -3265,50 +3229,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $field-initialization/Nullable#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $1 - ) - (func $field-initialization/Value_Ctor#constructor (param $this i32) (result i32) - (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - call $~stack_check - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - local.get $this - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.const 9 - call $~lib/rt/itcms/__new - local.tee $this - i32.store - end - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $field-initialization/Value_Ctor#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -3376,14 +3296,6 @@ local.get $1 i32.store offset=4 local.get $1 - i32.const 0 - call $field-initialization/Value_Ctor_Init#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 i32.const 1 call $field-initialization/Value_Ctor_Init#set:a local.get $this @@ -3470,14 +3382,6 @@ i32.store offset=4 local.get $1 i32.const 0 - call $field-initialization/Ref_Ctor_Init#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 i32.const 0 call $~lib/arraybuffer/ArrayBuffer#constructor local.set $1 @@ -3538,42 +3442,6 @@ global.set $~lib/memory/__stack_pointer local.get $2 ) - (func $field-initialization/Nullable_Ctor#constructor (param $this i32) (result i32) - (local $1 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - call $~stack_check - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - local.get $this - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 4 - i32.const 15 - call $~lib/rt/itcms/__new - local.tee $this - i32.store - end - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $field-initialization/Nullable_Ctor#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $1 - ) (func $field-initialization/Nullable_Init_Ctor#constructor (param $this i32) (result i32) (local $1 i32) global.get $~lib/memory/__stack_pointer @@ -3650,14 +3518,6 @@ i32.store offset=4 local.get $1 i32.const 0 - call $field-initialization/Nullable_Ctor_Init#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 i32.const 0 call $~lib/arraybuffer/ArrayBuffer#constructor local.set $1 @@ -3839,22 +3699,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $field-initialization/SomeObject#set:a - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $field-initialization/SomeObject#set:b - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -3989,14 +3833,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $field-initialization/SomeOtherObject#set:c - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -4025,14 +3861,6 @@ local.tee $this i32.store end - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - call $field-initialization/Flow_Balanced#set:a local.get $cond if local.get $this @@ -5038,14 +4866,6 @@ i32.store offset=4 local.get $34 i32.const 0 - call $field-initialization/Ref_InlineCtor_Init#set:a - local.get $32 - local.set $34 - global.get $~lib/memory/__stack_pointer - local.get $34 - i32.store offset=4 - local.get $34 - i32.const 0 i32.const 0 call $~lib/arraybuffer/ArrayBuffer#constructor local.set $34 @@ -5149,4 +4969,60 @@ local.get $3 return ) + (func $field-initialization/Value_Ctor#constructor (param $this i32) (result i32) + (local $1 i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + call $~stack_check + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + local.get $this + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.const 9 + call $~lib/rt/itcms/__new + local.tee $this + i32.store + end + local.get $this + local.set $1 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $1 + ) + (func $field-initialization/Nullable_Ctor#constructor (param $this i32) (result i32) + (local $1 i32) + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.sub + global.set $~lib/memory/__stack_pointer + call $~stack_check + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + local.get $this + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.const 15 + call $~lib/rt/itcms/__new + local.tee $this + i32.store + end + local.get $this + local.set $1 + global.get $~lib/memory/__stack_pointer + i32.const 4 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $1 + ) ) diff --git a/tests/compiler/field-initialization.release.wat b/tests/compiler/field-initialization.release.wat index c5911e7208..416e5fc382 100644 --- a/tests/compiler/field-initialization.release.wat +++ b/tests/compiler/field-initialization.release.wat @@ -120,7 +120,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$241 + block $__inlined_func$~lib/rt/itcms/Object#unlink$229 local.get $0 i32.load offset=4 i32.const -4 @@ -144,7 +144,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$241 + br $__inlined_func$~lib/rt/itcms/Object#unlink$229 end local.get $0 i32.load offset=8 @@ -1754,21 +1754,6 @@ local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -1887,7 +1872,7 @@ end end end - block $__inlined_func$~lib/util/string/compareImpl$118 + block $__inlined_func$~lib/util/string/compareImpl$107 loop $while-continue|1 local.get $0 local.tee $3 @@ -1907,7 +1892,7 @@ local.get $4 local.get $5 i32.ne - br_if $__inlined_func$~lib/util/string/compareImpl$118 + br_if $__inlined_func$~lib/util/string/compareImpl$107 local.get $2 i32.const 2 i32.add @@ -1971,15 +1956,6 @@ local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -2114,12 +2090,6 @@ local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -2291,15 +2261,6 @@ local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -2320,7 +2281,7 @@ end global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - i32.const 8 + i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2328,8 +2289,8 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store + i32.const 0 + i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.const 9 @@ -2337,13 +2298,7 @@ local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 8 + i32.const 4 i32.add global.set $~lib/memory/__stack_pointer local.get $1 @@ -2428,12 +2383,6 @@ local.get $1 i32.store offset=4 local.get $1 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 i32.const 1 i32.store global.get $~lib/memory/__stack_pointer @@ -2536,15 +2485,6 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 call $~lib/arraybuffer/ArrayBuffer#constructor local.set $2 global.get $~lib/memory/__stack_pointer @@ -2639,7 +2579,7 @@ end global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - i32.const 8 + i32.const 4 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2647,8 +2587,8 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store + i32.const 0 + i32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.const 15 @@ -2656,16 +2596,7 @@ local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - i32.const 8 + i32.const 4 i32.add global.set $~lib/memory/__stack_pointer local.get $1 @@ -2762,15 +2693,6 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 call $~lib/arraybuffer/ArrayBuffer#constructor local.set $2 global.get $~lib/memory/__stack_pointer @@ -3289,15 +3211,6 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 call $~lib/arraybuffer/ArrayBuffer#constructor local.set $2 global.get $~lib/memory/__stack_pointer @@ -3376,15 +3289,6 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 call $~lib/arraybuffer/ArrayBuffer#constructor local.set $2 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/infer-generic.debug.wat b/tests/compiler/infer-generic.debug.wat index e5325dead1..5e894fd0c4 100644 --- a/tests/compiler/infer-generic.debug.wat +++ b/tests/compiler/infer-generic.debug.wat @@ -2605,14 +2605,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $infer-generic/Ref#set:x - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/infer-generic.release.wat b/tests/compiler/infer-generic.release.wat index c09c4b901d..18a0f25673 100644 --- a/tests/compiler/infer-generic.release.wat +++ b/tests/compiler/infer-generic.release.wat @@ -144,7 +144,7 @@ local.get $0 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$138 + block $__inlined_func$~lib/rt/itcms/Object#unlink$137 local.get $1 i32.load offset=4 i32.const -4 @@ -168,7 +168,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$138 + br $__inlined_func$~lib/rt/itcms/Object#unlink$137 end local.get $1 i32.load offset=8 @@ -1810,12 +1810,6 @@ local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/inlining.debug.wat b/tests/compiler/inlining.debug.wat index 1478d40aca..1d06017ded 100644 --- a/tests/compiler/inlining.debug.wat +++ b/tests/compiler/inlining.debug.wat @@ -2893,14 +2893,6 @@ local.get $5 i32.const 3 call $inlining/Bar#set:d - local.get $this - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - call $inlining/Bar#set:e global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.get $this @@ -2932,14 +2924,6 @@ local.get $5 i32.store offset=4 local.get $5 - i32.const 0 - call $inlining/Baz#set:b - local.get $this|2 - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 local.get $c call $inlining/Baz#set:b local.get $this|2 diff --git a/tests/compiler/inlining.release.wat b/tests/compiler/inlining.release.wat index bb306de122..befc30cc22 100644 --- a/tests/compiler/inlining.release.wat +++ b/tests/compiler/inlining.release.wat @@ -134,7 +134,7 @@ local.get $0 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$125 + block $__inlined_func$~lib/rt/itcms/Object#unlink$123 local.get $1 i32.load offset=4 i32.const -4 @@ -158,7 +158,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$125 + br $__inlined_func$~lib/rt/itcms/Object#unlink$123 end local.get $1 i32.load offset=8 @@ -1539,217 +1539,6 @@ memory.fill local.get $1 ) - (func $start:inlining - (local $0 i32) - (local $1 i32) - (local $2 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner0 - global.get $~lib/memory/__stack_pointer - i32.const 1556 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - i32.const 2 - i32.const 1104 - i32.load - call_indirect (type $2) - drop - global.get $~lib/memory/__stack_pointer - i32.const 123 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 123 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - memory.size - i32.const 16 - i32.shl - i32.const 34324 - i32.sub - i32.const 1 - i32.shr_u - global.set $~lib/rt/itcms/threshold - i32.const 1252 - i32.const 1248 - i32.store - i32.const 1256 - i32.const 1248 - i32.store - i32.const 1248 - global.set $~lib/rt/itcms/pinSpace - i32.const 1284 - i32.const 1280 - i32.store - i32.const 1288 - i32.const 1280 - i32.store - i32.const 1280 - global.set $~lib/rt/itcms/toSpace - i32.const 1428 - i32.const 1424 - i32.store - i32.const 1432 - i32.const 1424 - i32.store - i32.const 1424 - global.set $~lib/rt/itcms/fromSpace - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1556 - i32.lt_s - br_if $folding-inner0 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 6 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 3 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 - local.get $0 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.const 7 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store offset=8 - end - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 1 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 2 - i32.store offset=4 - local.get $0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 4 - i32.store offset=12 - local.get $0 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.load - i32.const 1 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 96 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.load offset=4 - i32.const 2 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 97 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.load offset=8 - i32.const 3 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 98 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.load offset=12 - i32.const 4 - i32.ne - if - i32.const 0 - i32.const 1056 - i32.const 99 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - return - end - i32.const 34352 - i32.const 34400 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - ) (func $~lib/math/NativeMath.cbrt (param $0 f64) (result f64) (local $1 i32) (local $2 i64) @@ -1972,6 +1761,204 @@ unreachable ) (func $~start - call $start:inlining + (local $0 i32) + (local $1 i32) + (local $2 i32) + block $__inlined_func$start:inlining + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1556 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + i32.const 2 + i32.const 1104 + i32.load + call_indirect (type $2) + drop + global.get $~lib/memory/__stack_pointer + i32.const 123 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 123 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + memory.size + i32.const 16 + i32.shl + i32.const 34324 + i32.sub + i32.const 1 + i32.shr_u + global.set $~lib/rt/itcms/threshold + i32.const 1252 + i32.const 1248 + i32.store + i32.const 1256 + i32.const 1248 + i32.store + i32.const 1248 + global.set $~lib/rt/itcms/pinSpace + i32.const 1284 + i32.const 1280 + i32.store + i32.const 1288 + i32.const 1280 + i32.store + i32.const 1280 + global.set $~lib/rt/itcms/toSpace + i32.const 1428 + i32.const 1424 + i32.store + i32.const 1432 + i32.const 1424 + i32.store + i32.const 1424 + global.set $~lib/rt/itcms/fromSpace + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1556 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 6 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + local.get $0 + i32.const 3 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=8 + local.get $0 + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.const 7 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store offset=8 + end + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + local.get $0 + i32.const 1 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + local.get $0 + i32.const 2 + i32.store offset=4 + local.get $0 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + local.get $0 + i32.const 4 + i32.store offset=12 + local.get $0 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + local.get $0 + i32.load + i32.const 1 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 96 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + local.get $0 + i32.load offset=4 + i32.const 2 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 97 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + local.get $0 + i32.load offset=8 + i32.const 3 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 98 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + local.get $0 + i32.load offset=12 + i32.const 4 + i32.ne + if + i32.const 0 + i32.const 1056 + i32.const 99 + i32.const 3 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + br $__inlined_func$start:inlining + end + i32.const 34352 + i32.const 34400 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end ) ) diff --git a/tests/compiler/issues/1225.debug.wat b/tests/compiler/issues/1225.debug.wat index b87f40c3c9..ad0e33bb26 100644 --- a/tests/compiler/issues/1225.debug.wat +++ b/tests/compiler/issues/1225.debug.wat @@ -2477,22 +2477,6 @@ local.get $2 i32.store offset=4 local.get $2 - i32.const 0 - call $issues/1225/X#set:normal - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - call $issues/1225/X#set:viaThis - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 local.get $this local.set $2 global.get $~lib/memory/__stack_pointer diff --git a/tests/compiler/issues/1225.release.wat b/tests/compiler/issues/1225.release.wat index be387fc91c..ea4687ae29 100644 --- a/tests/compiler/issues/1225.release.wat +++ b/tests/compiler/issues/1225.release.wat @@ -126,7 +126,7 @@ local.get $0 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$119 + block $__inlined_func$~lib/rt/itcms/Object#unlink$117 local.get $1 i32.load offset=4 i32.const -4 @@ -150,7 +150,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$119 + br $__inlined_func$~lib/rt/itcms/Object#unlink$117 end local.get $1 i32.load offset=8 @@ -1472,18 +1472,6 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 diff --git a/tests/compiler/issues/1699.debug.wat b/tests/compiler/issues/1699.debug.wat index 168e3faaaf..11b6e1a3d6 100644 --- a/tests/compiler/issues/1699.debug.wat +++ b/tests/compiler/issues/1699.debug.wat @@ -2545,38 +2545,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -2606,7 +2574,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -2615,7 +2583,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -2628,7 +2596,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -2636,7 +2604,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -2644,7 +2612,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ diff --git a/tests/compiler/issues/1699.release.wat b/tests/compiler/issues/1699.release.wat index 80c73bc8a5..3e6ab4dff7 100644 --- a/tests/compiler/issues/1699.release.wat +++ b/tests/compiler/issues/1699.release.wat @@ -113,7 +113,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$146 + block $__inlined_func$~lib/rt/itcms/Object#unlink$143 local.get $0 i32.load offset=4 i32.const -4 @@ -137,7 +137,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$146 + br $__inlined_func$~lib/rt/itcms/Object#unlink$143 end local.get $0 i32.load offset=8 @@ -1600,6 +1600,7 @@ (local $0 i32) (local $1 i32) (local $2 i32) + (local $3 i32) memory.size i32.const 16 i32.shl @@ -1636,11 +1637,11 @@ i32.const 28 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 1740 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.const 28 @@ -1653,7 +1654,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1740 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -1667,42 +1668,14 @@ local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - local.get $0 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 1 call $~lib/rt/itcms/__new local.tee $2 - i32.store offset=8 + i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=12 @@ -1715,19 +1688,19 @@ call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 i32.const 32 i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 i32.const 3 i32.store offset=12 @@ -1780,7 +1753,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1740 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -2133,7 +2106,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store - block $__inlined_func$~lib/rt/itcms/__renew$145 + block $__inlined_func$~lib/rt/itcms/__renew$142 i32.const 1073741820 local.get $4 i32.const 1 @@ -2176,7 +2149,7 @@ i32.store offset=16 local.get $4 local.set $3 - br $__inlined_func$~lib/rt/itcms/__renew$145 + br $__inlined_func$~lib/rt/itcms/__renew$142 end local.get $5 local.get $7 diff --git a/tests/compiler/issues/2322/index.debug.wat b/tests/compiler/issues/2322/index.debug.wat index febbe4e10f..86b20889ec 100644 --- a/tests/compiler/issues/2322/index.debug.wat +++ b/tests/compiler/issues/2322/index.debug.wat @@ -2242,11 +2242,6 @@ local.get $ptr return ) - (func $issues/2322/lib/Wrapper#set:v (param $this i32) (param $v i32) - local.get $this - local.get $v - i32.store - ) (func $issues/2322/lib/test (param $t i32) ) (func $~lib/rt/__visit_globals (param $0 i32) @@ -2363,14 +2358,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $issues/2322/lib/Wrapper#set:v - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/issues/2322/index.release.wat b/tests/compiler/issues/2322/index.release.wat index 9349beea7c..46f12de6a8 100644 --- a/tests/compiler/issues/2322/index.release.wat +++ b/tests/compiler/issues/2322/index.release.wat @@ -116,7 +116,7 @@ local.get $0 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$112 + block $__inlined_func$~lib/rt/itcms/Object#unlink$111 local.get $1 i32.load offset=4 i32.const -4 @@ -140,7 +140,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$112 + br $__inlined_func$~lib/rt/itcms/Object#unlink$111 end local.get $1 i32.load offset=8 @@ -1647,12 +1647,6 @@ local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/object-literal.debug.wat b/tests/compiler/object-literal.debug.wat index f5a5c6902a..df1a074737 100644 --- a/tests/compiler/object-literal.debug.wat +++ b/tests/compiler/object-literal.debug.wat @@ -5,17 +5,14 @@ (type $3 (func)) (type $4 (func (param i32 i32) (result i32))) (type $5 (func (param i32 i32 i32))) - (type $6 (func (param i32 f64))) - (type $7 (func (param i32) (result f64))) - (type $8 (func (param i32 i64))) - (type $9 (func (param i32) (result i64))) - (type $10 (func (param i32 i32 i32 i32))) - (type $11 (func (param i32 i32 i64) (result i32))) - (type $12 (func (result i32))) - (type $13 (func (param i32 i32 i32 i32 i32) (result i32))) - (type $14 (func (param i32 f32))) - (type $15 (func (param i32) (result f32))) - (type $16 (func (param i32 i32 i32) (result i32))) + (type $6 (func (param i32) (result f64))) + (type $7 (func (param i32) (result i64))) + (type $8 (func (param i32 i32 i32 i32))) + (type $9 (func (param i32 i32 i64) (result i32))) + (type $10 (func (result i32))) + (type $11 (func (param i32 i32 i32 i32 i32) (result i32))) + (type $12 (func (param i32) (result f32))) + (type $13 (func (param i32 i32 i32) (result i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (global $~lib/rt/itcms/white (mut i32) (i32.const 0)) (global $~lib/rt/itcms/iter (mut i32) (i32.const 0)) @@ -2483,12 +2480,6 @@ local.set $this end local.get $this - i32.const 0 - call $object-literal/Unmanaged#set:bar - local.get $this - i32.const 0 - call $object-literal/Unmanaged#set:baz - local.get $this ) (func $object-literal/Unmanaged#get:bar (param $this i32) (result i32) local.get $this @@ -2498,76 +2489,6 @@ local.get $this i32.load offset=4 ) - (func $object-literal/OmittedTypes#set:int32 (param $this i32) (param $int32 i32) - local.get $this - local.get $int32 - i32.store - ) - (func $object-literal/OmittedTypes#set:uint32 (param $this i32) (param $uint32 i32) - local.get $this - local.get $uint32 - i32.store offset=4 - ) - (func $object-literal/OmittedTypes#set:int64 (param $this i32) (param $int64 i64) - local.get $this - local.get $int64 - i64.store offset=8 - ) - (func $object-literal/OmittedTypes#set:uint64 (param $this i32) (param $uint64 i64) - local.get $this - local.get $uint64 - i64.store offset=16 - ) - (func $object-literal/OmittedTypes#set:float32 (param $this i32) (param $float32 f32) - local.get $this - local.get $float32 - f32.store offset=24 - ) - (func $object-literal/OmittedTypes#set:float64 (param $this i32) (param $float64 f64) - local.get $this - local.get $float64 - f64.store offset=32 - ) - (func $object-literal/OmittedTypes#set:int8 (param $this i32) (param $int8 i32) - local.get $this - local.get $int8 - i32.store8 offset=40 - ) - (func $object-literal/OmittedTypes#set:uint8 (param $this i32) (param $uint8 i32) - local.get $this - local.get $uint8 - i32.store8 offset=41 - ) - (func $object-literal/OmittedTypes#set:int16 (param $this i32) (param $int16 i32) - local.get $this - local.get $int16 - i32.store16 offset=42 - ) - (func $object-literal/OmittedTypes#set:uint16 (param $this i32) (param $uint16 i32) - local.get $this - local.get $uint16 - i32.store16 offset=44 - ) - (func $object-literal/OmittedTypes#set:intsize (param $this i32) (param $intsize i32) - local.get $this - local.get $intsize - i32.store offset=48 - ) - (func $object-literal/OmittedTypes#set:uintsize (param $this i32) (param $uintsize i32) - local.get $this - local.get $uintsize - i32.store offset=52 - ) - (func $object-literal/OmittedTypes#set:alias (param $this i32) (param $alias f64) - local.get $this - local.get $alias - f64.store offset=56 - ) - (func $object-literal/OmittedTypes#set:isTrue (param $this i32) (param $isTrue i32) - local.get $this - local.get $isTrue - i32.store8 offset=64 - ) (func $object-literal/OmittedTypes#get:int32 (param $this i32) (result i32) local.get $this i32.load @@ -2638,11 +2559,6 @@ i32.const 0 call $~lib/rt/itcms/__link ) - (func $object-literal/MixedOmitted#set:anotherSimpleType (param $this i32) (param $anotherSimpleType f64) - local.get $this - local.get $anotherSimpleType - f64.store offset=8 - ) (func $object-literal/MixedOmitted#get:simpleType (param $this i32) (result i32) local.get $this i32.load @@ -2673,65 +2589,6 @@ i32.const 0 call $~lib/rt/itcms/__link ) - (func $object-literal/OmittedFoo#set:quux (param $this i32) (param $quux i32) - local.get $this - local.get $quux - i32.store offset=8 - local.get $this - local.get $quux - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $object-literal/OmittedFoo#set:quuz (param $this i32) (param $quuz i32) - local.get $this - local.get $quuz - i32.store offset=12 - local.get $this - local.get $quuz - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $object-literal/OmittedFoo#set:corge (param $this i32) (param $corge i32) - local.get $this - local.get $corge - i32.store offset=16 - local.get $this - local.get $corge - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $object-literal/OmittedFoo#set:grault (param $this i32) (param $grault i32) - local.get $this - local.get $grault - i32.store offset=20 - local.get $this - local.get $grault - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $object-literal/OmittedFoo#set:garply (param $this i32) (param $garply i32) - local.get $this - local.get $garply - i32.store offset=24 - local.get $this - local.get $garply - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $object-literal/OmittedFoo#set:waldo (param $this i32) (param $waldo i32) - local.get $this - local.get $waldo - i32.store offset=28 - local.get $this - local.get $waldo - i32.const 0 - call $~lib/rt/itcms/__link - ) - (func $object-literal/OmittedFoo#set:fred (param $this i32) (param $fred i32) - local.get $this - local.get $fred - i32.store offset=32 - ) (func $object-literal/OmittedFoo#set:qux (param $this i32) (param $qux i32) local.get $this local.get $qux @@ -2997,22 +2854,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/Managed#set:bar - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/Managed#set:baz - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -3400,118 +3241,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedTypes#set:int32 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedTypes#set:uint32 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i64.const 0 - call $object-literal/OmittedTypes#set:int64 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i64.const 0 - call $object-literal/OmittedTypes#set:uint64 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f32.const 0 - call $object-literal/OmittedTypes#set:float32 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f64.const 0 - call $object-literal/OmittedTypes#set:float64 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedTypes#set:int8 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedTypes#set:uint8 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedTypes#set:int16 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedTypes#set:uint16 - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedTypes#set:intsize - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedTypes#set:uintsize - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f64.const 0 - call $object-literal/OmittedTypes#set:alias - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedTypes#set:isTrue - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -3825,30 +3554,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/MixedOmitted#set:simpleType - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/MixedOmitted#set:complexType - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f64.const 0 - call $object-literal/MixedOmitted#set:anotherSimpleType - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -3980,62 +3685,6 @@ local.get $1 i32.store offset=4 local.get $1 - i32.const 0 - call $object-literal/OmittedFoo#set:quux - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedFoo#set:quuz - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedFoo#set:corge - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedFoo#set:grault - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedFoo#set:garply - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedFoo#set:waldo - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $object-literal/OmittedFoo#set:fred - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 i32.const -1 call $object-literal/OmittedFoo#set:qux local.get $this diff --git a/tests/compiler/object-literal.release.wat b/tests/compiler/object-literal.release.wat index 9070d20967..d842a0201f 100644 --- a/tests/compiler/object-literal.release.wat +++ b/tests/compiler/object-literal.release.wat @@ -71,7 +71,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$205 + block $__inlined_func$~lib/rt/itcms/Object#unlink$179 local.get $0 i32.load offset=4 i32.const -4 @@ -95,7 +95,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$205 + br $__inlined_func$~lib/rt/itcms/Object#unlink$179 end local.get $0 i32.load offset=8 @@ -1786,7 +1786,7 @@ end end end - block $__inlined_func$~lib/util/string/compareImpl$83 + block $__inlined_func$~lib/util/string/compareImpl$79 loop $while-continue|1 local.get $0 local.tee $3 @@ -1806,7 +1806,7 @@ local.get $4 local.get $5 i32.ne - br_if $__inlined_func$~lib/util/string/compareImpl$83 + br_if $__inlined_func$~lib/util/string/compareImpl$79 local.get $2 i32.const 2 i32.add @@ -2274,11 +2274,11 @@ i32.const 24 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.const 24 @@ -2323,7 +2323,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -2342,21 +2342,6 @@ local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -2387,7 +2372,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -2441,12 +2426,6 @@ i32.const 4 i32.add local.tee $1 - i32.const 0 - i32.store - local.get $1 - i32.const 0 - i32.store offset=4 - local.get $1 i32.const 123 i32.store global.get $~lib/memory/__stack_pointer @@ -2456,7 +2435,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -2482,7 +2461,7 @@ i32.const 1 i32.shl local.set $3 - block $__inlined_func$~lib/string/String#substring$210 + block $__inlined_func$~lib/string/String#substring$184 local.get $2 i32.const 0 local.get $2 @@ -2503,7 +2482,7 @@ global.set $~lib/memory/__stack_pointer i32.const 1568 local.set $0 - br $__inlined_func$~lib/string/String#substring$210 + br $__inlined_func$~lib/string/String#substring$184 end local.get $3 i32.eqz @@ -2520,7 +2499,7 @@ global.set $~lib/memory/__stack_pointer i32.const 1056 local.set $0 - br $__inlined_func$~lib/string/String#substring$210 + br $__inlined_func$~lib/string/String#substring$184 end global.get $~lib/memory/__stack_pointer local.get $2 @@ -2552,7 +2531,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store @@ -2599,7 +2578,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -2607,152 +2586,68 @@ i32.const 65 i32.const 5 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 call $~lib/object/Object#constructor - local.tee $0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i64.const 0 - i64.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - f32.const 0 - f32.store offset=24 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - f64.const 0 - f64.store offset=32 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store8 offset=40 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store8 offset=41 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store16 offset=42 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store16 offset=44 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=48 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=52 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - f64.const 0 - f64.store offset=56 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store8 offset=64 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=12 - local.get $0 + local.get $1 i32.const 0 i32.store - local.get $0 + local.get $1 i32.const 0 i32.store offset=4 - local.get $0 + local.get $1 i64.const 0 i64.store offset=8 - local.get $0 + local.get $1 i64.const 0 i64.store offset=16 - local.get $0 + local.get $1 f32.const 0 f32.store offset=24 - local.get $0 + local.get $1 f64.const 0 f64.store offset=32 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=40 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=41 - local.get $0 + local.get $1 i32.const 0 i32.store16 offset=42 - local.get $0 + local.get $1 i32.const 0 i32.store16 offset=44 - local.get $0 + local.get $1 i32.const 0 i32.store offset=48 - local.get $0 + local.get $1 i32.const 0 i32.store offset=52 - local.get $0 + local.get $1 f64.const 0 f64.store offset=56 - local.get $0 + local.get $1 i32.const 0 i32.store8 offset=64 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $object-literal/testOmittedTypes global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -2762,7 +2657,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -2781,27 +2676,6 @@ local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - f64.const 0 - f64.store offset=8 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -2835,7 +2709,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -2899,7 +2773,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -2907,131 +2781,71 @@ i32.const 40 i32.const 7 call $~lib/rt/itcms/__new - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 call $~lib/object/Object#constructor - local.tee $0 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1664 i32.store - local.get $0 + local.get $1 i32.const 1664 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1696 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1696 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=12 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=24 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=28 - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=32 - global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const -1 i32.store offset=36 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=20 - local.get $0 + local.get $1 i32.const 0 i32.store offset=8 - local.get $0 + local.get $1 i32.const 0 i32.store offset=12 - local.get $0 + local.get $1 i32.const 0 i32.store offset=16 - local.get $0 + local.get $1 i32.const 0 i32.store offset=20 - local.get $0 + local.get $1 i32.const 0 i32.store offset=24 - local.get $0 + local.get $1 i32.const 0 i32.store offset=28 - local.get $0 + local.get $1 i32.const 0 i32.store offset=32 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $object-literal/testOmittedFoo i32.const 34516 global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/resolve-access.debug.wat b/tests/compiler/resolve-access.debug.wat index 6dc9f58eb4..e2532e7221 100644 --- a/tests/compiler/resolve-access.debug.wat +++ b/tests/compiler/resolve-access.debug.wat @@ -3212,14 +3212,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i64.const 0 - call $resolve-access/Container#set:foo - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/resolve-access.release.wat b/tests/compiler/resolve-access.release.wat index 7e043af3e4..39a5ba4027 100644 --- a/tests/compiler/resolve-access.release.wat +++ b/tests/compiler/resolve-access.release.wat @@ -124,7 +124,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$143 + block $__inlined_func$~lib/rt/itcms/Object#unlink$142 local.get $0 i32.load offset=4 i32.const -4 @@ -148,7 +148,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$143 + br $__inlined_func$~lib/rt/itcms/Object#unlink$142 end local.get $0 i32.load offset=8 @@ -2221,12 +2221,6 @@ local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/resolve-elementaccess.debug.wat b/tests/compiler/resolve-elementaccess.debug.wat index 77ff64f407..cdf93fc6c9 100644 --- a/tests/compiler/resolve-elementaccess.debug.wat +++ b/tests/compiler/resolve-elementaccess.debug.wat @@ -4433,30 +4433,6 @@ local.tee $this i32.store end - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:dataStart - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:byteLength local.get $length i32.const 1073741820 local.get $alignLog2 @@ -4478,7 +4454,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -4487,7 +4463,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer local.set $4 @@ -4500,7 +4476,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer call $~lib/arraybuffer/ArrayBufferView#set:dataStart @@ -4508,7 +4484,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $length call $~lib/arraybuffer/ArrayBufferView#set:byteLength diff --git a/tests/compiler/resolve-elementaccess.release.wat b/tests/compiler/resolve-elementaccess.release.wat index 5e4a644023..3e819a281a 100644 --- a/tests/compiler/resolve-elementaccess.release.wat +++ b/tests/compiler/resolve-elementaccess.release.wat @@ -176,7 +176,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$153 + block $__inlined_func$~lib/rt/itcms/Object#unlink$151 local.get $0 i32.load offset=4 i32.const -4 @@ -200,7 +200,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$153 + br $__inlined_func$~lib/rt/itcms/Object#unlink$151 end local.get $0 i32.load offset=8 @@ -1600,61 +1600,6 @@ memory.fill local.get $1 ) - (func $~lib/arraybuffer/ArrayBufferView#set:buffer (param $0 i32) (param $1 i32) - local.get $0 - local.get $1 - i32.store - local.get $1 - if - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1232 - i32.const 295 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - end - ) (func $~lib/util/number/genDigits (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (result i32) (local $5 i32) (local $6 i32) @@ -2957,6 +2902,8 @@ ) (func $~lib/arraybuffer/ArrayBufferView#constructor (param $0 i32) (param $1 i32) (result i32) (local $2 i32) + (local $3 i32) + (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 16 i32.sub @@ -2988,24 +2935,6 @@ local.tee $0 i32.store end - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 i32.const 1073741820 local.get $1 i32.shr_u @@ -3023,31 +2952,81 @@ i32.const 2 local.get $1 i32.shl - local.tee $2 + local.tee $1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $1 - i32.store offset=8 + local.tee $3 + i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $3 i32.store offset=12 local.get $0 - local.get $1 - call $~lib/arraybuffer/ArrayBufferView#set:buffer + local.get $3 + i32.store + local.get $3 + if + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1232 + i32.const 295 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $3 + i32.const 20 + i32.sub + local.tee $4 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $2 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $4 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $2 + i32.const 3 + i32.eq + i32.and + if + local.get $4 + call $~lib/rt/itcms/Object#makeGray + end + end + end + end global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 - local.get $1 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 16 @@ -3272,7 +3251,7 @@ end end end - block $__inlined_func$~lib/util/string/compareImpl$97 + block $__inlined_func$~lib/util/string/compareImpl$95 loop $while-continue|1 local.get $0 local.tee $3 @@ -3292,7 +3271,7 @@ local.get $4 local.get $5 i32.ne - br_if $__inlined_func$~lib/util/string/compareImpl$97 + br_if $__inlined_func$~lib/util/string/compareImpl$95 local.get $2 i32.const 2 i32.add diff --git a/tests/compiler/return-unreachable.debug.wat b/tests/compiler/return-unreachable.debug.wat index f66ebe5b52..00fbb971e2 100644 --- a/tests/compiler/return-unreachable.debug.wat +++ b/tests/compiler/return-unreachable.debug.wat @@ -2481,38 +2481,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -2542,7 +2510,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -2551,7 +2519,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -2564,7 +2532,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -2572,7 +2540,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -2580,7 +2548,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ diff --git a/tests/compiler/return-unreachable.release.wat b/tests/compiler/return-unreachable.release.wat index 3e068205cc..b4e44c5db6 100644 --- a/tests/compiler/return-unreachable.release.wat +++ b/tests/compiler/return-unreachable.release.wat @@ -108,7 +108,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$121 + block $__inlined_func$~lib/rt/itcms/Object#unlink$118 local.get $0 i32.load offset=4 i32.const -4 @@ -132,7 +132,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$121 + br $__inlined_func$~lib/rt/itcms/Object#unlink$118 end local.get $0 i32.load offset=8 @@ -1532,64 +1532,11 @@ memory.fill local.get $1 ) - (func $~lib/array/Array#set:buffer (param $0 i32) (param $1 i32) - local.get $0 - local.get $1 - i32.store - local.get $1 - if - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 1216 - i32.const 295 - i32.const 14 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/itcms/white - local.get $1 - i32.const 20 - i32.sub - local.tee $1 - i32.load offset=4 - i32.const 3 - i32.and - i32.eq - if - local.get $0 - i32.const 20 - i32.sub - i32.load offset=4 - i32.const 3 - i32.and - local.tee $0 - global.get $~lib/rt/itcms/white - i32.eqz - i32.eq - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - else - global.get $~lib/rt/itcms/state - i32.const 1 - i32.eq - local.get $0 - i32.const 3 - i32.eq - i32.and - if - local.get $1 - call $~lib/rt/itcms/Object#makeGray - end - end - end - end - ) (func $return-unreachable/test (param $0 i32) (result i32) (local $1 i32) (local $2 i32) + (local $3 i32) + (local $4 i32) global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -1624,59 +1571,85 @@ local.tee $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - call $~lib/array/Array#set:buffer - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer i32.const 400 i32.const 1 call $~lib/rt/itcms/__new local.tee $1 - i32.store offset=8 + i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=12 local.get $0 local.get $1 - call $~lib/array/Array#set:buffer + i32.store + local.get $1 + if + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 1216 + i32.const 295 + i32.const 14 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/itcms/white + local.get $1 + i32.const 20 + i32.sub + local.tee $2 + i32.load offset=4 + i32.const 3 + i32.and + i32.eq + if + local.get $0 + i32.const 20 + i32.sub + i32.load offset=4 + i32.const 3 + i32.and + local.tee $4 + global.get $~lib/rt/itcms/white + i32.eqz + i32.eq + if + local.get $2 + call $~lib/rt/itcms/Object#makeGray + else + global.get $~lib/rt/itcms/state + i32.const 1 + i32.eq + local.get $4 + i32.const 3 + i32.eq + i32.and + if + local.get $2 + call $~lib/rt/itcms/Object#makeGray + end + end + end + end global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 i32.const 400 i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 i32.const 100 i32.store offset=12 diff --git a/tests/compiler/rt/issue-2719.debug.wat b/tests/compiler/rt/issue-2719.debug.wat index 2c202baebd..242203cc8f 100644 --- a/tests/compiler/rt/issue-2719.debug.wat +++ b/tests/compiler/rt/issue-2719.debug.wat @@ -2242,11 +2242,6 @@ local.get $ptr return ) - (func $rt/issue-2719/issue2719_T#set:v (param $this i32) (param $v i32) - local.get $this - local.get $v - i32.store - ) (func $~lib/rt/itcms/__collect i32.const 0 drop @@ -2293,6 +2288,11 @@ i32.const 0 drop ) + (func $rt/issue-2719/issue2719_T#set:v (param $this i32) (param $v i32) + local.get $this + local.get $v + i32.store + ) (func $rt/issue-2719/issue2719_T#get:v (param $this i32) (result i32) local.get $this i32.load @@ -2395,14 +2395,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $rt/issue-2719/issue2719_T#set:v - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/rt/issue-2719.release.wat b/tests/compiler/rt/issue-2719.release.wat index 376cd994e9..d482c7ab6f 100644 --- a/tests/compiler/rt/issue-2719.release.wat +++ b/tests/compiler/rt/issue-2719.release.wat @@ -117,7 +117,7 @@ local.get $0 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$119 + block $__inlined_func$~lib/rt/itcms/Object#unlink$118 local.get $1 i32.load offset=4 i32.const -4 @@ -141,7 +141,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$119 + br $__inlined_func$~lib/rt/itcms/Object#unlink$118 end local.get $1 i32.load offset=8 @@ -1759,12 +1759,6 @@ local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/std/array.debug.wat b/tests/compiler/std/array.debug.wat index 76974815e0..d0fa098e06 100644 --- a/tests/compiler/std/array.debug.wat +++ b/tests/compiler/std/array.debug.wat @@ -10094,38 +10094,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -10155,7 +10123,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -10164,7 +10132,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -10177,7 +10145,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -10185,7 +10153,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -10193,7 +10161,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -10265,30 +10233,6 @@ local.tee $this i32.store end - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:dataStart - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:byteLength local.get $length i32.const 1073741820 local.get $alignLog2 @@ -10310,7 +10254,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -10319,7 +10263,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer local.set $4 @@ -10332,7 +10276,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer call $~lib/arraybuffer/ArrayBufferView#set:dataStart @@ -10340,7 +10284,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $length call $~lib/arraybuffer/ArrayBufferView#set:byteLength @@ -16149,22 +16093,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $std/array/Dim#set:height - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $std/array/Dim#set:width - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -20748,38 +20676,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/array/Array>#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/array/Array>#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/array/Array>#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/array/Array>#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -20809,7 +20705,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -20818,7 +20714,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -20831,7 +20727,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array<~lib/array/Array>#set:dataStart @@ -20839,7 +20735,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array<~lib/array/Array>#set:byteLength @@ -20847,7 +20743,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array<~lib/array/Array>#set:length_ @@ -22483,38 +22379,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array>#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array>#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array>#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array>#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -22544,7 +22408,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -22553,7 +22417,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -22566,7 +22430,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array>#set:dataStart @@ -22574,7 +22438,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array>#set:byteLength @@ -22582,7 +22446,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array>#set:length_ @@ -26079,38 +25943,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -26140,7 +25972,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -26149,7 +25981,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -26162,7 +25994,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array<~lib/string/String>#set:dataStart @@ -26170,7 +26002,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array<~lib/string/String>#set:byteLength @@ -26178,7 +26010,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array<~lib/string/String>#set:length_ diff --git a/tests/compiler/std/array.release.wat b/tests/compiler/std/array.release.wat index 22943cdb01..0e2e8ebb13 100644 --- a/tests/compiler/std/array.release.wat +++ b/tests/compiler/std/array.release.wat @@ -11,9 +11,9 @@ (type $9 (func (param i32 i32 i32 i32))) (type $10 (func (param i32 i32 i32 i32 i32))) (type $11 (func)) - (type $12 (func (result f64))) - (type $13 (func (param i32 i32 i32 i32 i32 i32))) - (type $14 (func (result i32))) + (type $12 (func (result i32))) + (type $13 (func (result f64))) + (type $14 (func (param i32 i32 i32 i32 i32 i32))) (type $15 (func (param i32 i32 i32) (result f32))) (type $16 (func (param i32 f64) (result i32))) (type $17 (func (param i32 i64) (result i32))) @@ -758,7 +758,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$731 + block $__inlined_func$~lib/rt/itcms/Object#unlink$711 local.get $0 i32.load offset=4 i32.const -4 @@ -782,7 +782,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$731 + br $__inlined_func$~lib/rt/itcms/Object#unlink$711 end local.get $0 i32.load offset=8 @@ -6423,34 +6423,6 @@ call $~lib/rt/itcms/__new local.tee $1 i32.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - local.get $1 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=12 local.get $0 i32.const 268435455 i32.gt_u @@ -6475,10 +6447,10 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $2 - i32.store offset=8 + i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $1 - i32.store offset=4 + i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=12 @@ -6491,19 +6463,19 @@ call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.get $1 - i32.store offset=4 + i32.store offset=8 local.get $1 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $1 - i32.store offset=4 + i32.store offset=8 local.get $1 local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $1 - i32.store offset=4 + i32.store offset=8 local.get $1 local.get $0 i32.store offset=12 @@ -6896,7 +6868,7 @@ i32.lt_s select local.set $0 - block $__inlined_func$~lib/util/bytes/FILL$139 + block $__inlined_func$~lib/util/bytes/FILL$132 local.get $1 i32.eqz local.get $1 @@ -6921,7 +6893,7 @@ i32.shl memory.fill end - br $__inlined_func$~lib/util/bytes/FILL$139 + br $__inlined_func$~lib/util/bytes/FILL$132 end loop $for-loop|0 local.get $0 @@ -7191,7 +7163,7 @@ i32.lt_s select local.set $0 - block $__inlined_func$~lib/util/bytes/FILL$148 + block $__inlined_func$~lib/util/bytes/FILL$141 local.get $1 i32.reinterpret_f32 i32.eqz @@ -7213,7 +7185,7 @@ i32.shl memory.fill end - br $__inlined_func$~lib/util/bytes/FILL$148 + br $__inlined_func$~lib/util/bytes/FILL$141 end loop $for-loop|0 local.get $0 @@ -7593,7 +7565,7 @@ select local.set $1 end - block $__inlined_func$~lib/rt/itcms/__renew$653 + block $__inlined_func$~lib/rt/itcms/__renew$632 local.get $3 i32.const 20 i32.sub @@ -7611,7 +7583,7 @@ i32.store offset=16 local.get $3 local.set $2 - br $__inlined_func$~lib/rt/itcms/__renew$653 + br $__inlined_func$~lib/rt/itcms/__renew$632 end local.get $1 local.get $4 @@ -11032,18 +11004,6 @@ local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer @@ -13086,7 +13046,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store offset=8 - block $__inlined_func$std/array/isSorted$658 (result i32) + block $__inlined_func$std/array/isSorted$637 (result i32) global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 @@ -13154,7 +13114,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - br $__inlined_func$std/array/isSorted$658 + br $__inlined_func$std/array/isSorted$637 end local.get $0 i32.const 1 @@ -14391,7 +14351,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store offset=8 - block $__inlined_func$std/array/isSorted<~lib/array/Array>$660 (result i32) + block $__inlined_func$std/array/isSorted<~lib/array/Array>$640 (result i32) global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 @@ -14474,7 +14434,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - br $__inlined_func$std/array/isSorted<~lib/array/Array>$660 + br $__inlined_func$std/array/isSorted<~lib/array/Array>$640 end local.get $1 i32.const 1 @@ -14901,7 +14861,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store - block $__inlined_func$~lib/string/String#concat$736 + block $__inlined_func$~lib/string/String#concat$716 local.get $1 i32.const 20 i32.sub @@ -14920,7 +14880,7 @@ global.set $~lib/memory/__stack_pointer i32.const 11568 local.set $0 - br $__inlined_func$~lib/string/String#concat$736 + br $__inlined_func$~lib/string/String#concat$716 end global.get $~lib/memory/__stack_pointer local.get $0 @@ -14957,114 +14917,9 @@ call $~lib/builtins/abort unreachable ) - (func $~lib/string/String#substring (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16192 - i32.lt_s - if - i32.const 48992 - i32.const 49040 - i32.const 1 - i32.const 1 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store - local.get $1 - i32.const 0 - local.get $1 - i32.const 0 - i32.gt_s - select - local.tee $2 - local.get $0 - i32.const 20 - i32.sub - i32.load offset=16 - i32.const 1 - i32.shr_u - local.tee $1 - local.get $1 - local.get $2 - i32.gt_s - select - local.tee $2 - i32.const 0 - local.get $2 - i32.const 0 - i32.le_s - select - i32.const 1 - i32.shl - local.set $3 - local.get $2 - i32.const 0 - local.get $2 - i32.const 0 - i32.ge_s - select - i32.const 1 - i32.shl - local.tee $4 - local.get $3 - i32.sub - local.tee $2 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 11568 - return - end - local.get $3 - i32.eqz - local.get $4 - local.get $1 - i32.const 1 - i32.shl - i32.eq - i32.and - if - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - return - end - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.const 2 - call $~lib/rt/itcms/__new - local.tee $1 - i32.store offset=4 - local.get $1 - local.get $0 - local.get $3 - i32.add - local.get $2 - memory.copy - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $1 - ) - (func $~lib/array/Array#join (param $0 i32) (param $1 i32) (result i32) + (func $std/array/createRandomStringArray (result i32) + (local $0 i32) + (local $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -15072,7 +14927,7 @@ (local $6 i32) (local $7 i32) global.get $~lib/memory/__stack_pointer - i32.const 4 + i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer block $folding-inner0 @@ -15081,25 +14936,14 @@ i32.lt_s br_if $folding-inner0 global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store - local.get $0 - i32.load offset=4 - local.set $6 + i64.const 0 + i64.store global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store - local.get $0 - i32.load offset=12 - local.set $0 + i32.const 0 + i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store global.get $~lib/memory/__stack_pointer - i32.const 8 + i32.const 16 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -15109,21 +14953,374 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$738 - local.get $0 - i32.const 1 - i32.sub - local.tee $7 - i32.const 0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 16 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 1600 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $2 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=12 + local.get $0 + local.get $2 + i32.store + local.get $0 + local.get $2 + i32.const 0 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=8 + local.get $0 + local.get $2 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=8 + local.get $0 + i32.const 1600 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=8 + local.get $0 + i32.const 400 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + i32.store + loop $for-loop|0 + local.get $3 + i32.const 400 i32.lt_s if global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add + local.get $0 + i32.store offset=4 + call $~lib/math/NativeMath.random + f64.const 32 + f64.mul + i32.trunc_sat_f64_s + local.set $6 + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.sub global.set $~lib/memory/__stack_pointer - i32.const 11568 + global.get $~lib/memory/__stack_pointer + i32.const 16192 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store offset=8 + i32.const 11568 + local.set $2 + global.get $~lib/memory/__stack_pointer + i32.const 11568 + i32.store + i32.const 0 + local.set $4 + loop $for-loop|00 + local.get $4 + local.get $6 + i32.lt_s + if + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + call $~lib/math/NativeMath.random + i32.const 10028 + i32.load + i32.const 1 + i32.shr_u + f64.convert_i32_s + f64.mul + f64.floor + i32.trunc_sat_f64_s + local.set $5 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16192 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i32.const 10032 + i32.store + block $__inlined_func$~lib/string/String#charAt$717 + local.get $5 + i32.const 10028 + i32.load + i32.const 1 + i32.shr_u + i32.ge_u + if + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 11568 + local.set $1 + br $__inlined_func$~lib/string/String#charAt$717 + end + global.get $~lib/memory/__stack_pointer + i32.const 2 + i32.const 2 + call $~lib/rt/itcms/__new + local.tee $1 + i32.store offset=4 + local.get $1 + local.get $5 + i32.const 1 + i32.shl + i32.const 10032 + i32.add + i32.load16_u + i32.store16 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + end + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=8 + local.get $2 + local.get $1 + call $~lib/string/String.__concat + local.tee $2 + i32.store + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $for-loop|00 + end + end + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=8 + local.get $0 + local.get $3 + local.get $2 + call $~lib/array/Array#__set + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|0 + end + end + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + return + end + i32.const 48992 + i32.const 49040 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + ) + (func $~lib/string/String#substring (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16192 + i32.lt_s + if + i32.const 48992 + i32.const 49040 + i32.const 1 + i32.const 1 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store + local.get $1 + i32.const 0 + local.get $1 + i32.const 0 + i32.gt_s + select + local.tee $2 + local.get $0 + i32.const 20 + i32.sub + i32.load offset=16 + i32.const 1 + i32.shr_u + local.tee $1 + local.get $1 + local.get $2 + i32.gt_s + select + local.tee $2 + i32.const 0 + local.get $2 + i32.const 0 + i32.le_s + select + i32.const 1 + i32.shl + local.set $3 + local.get $2 + i32.const 0 + local.get $2 + i32.const 0 + i32.ge_s + select + i32.const 1 + i32.shl + local.tee $4 + local.get $3 + i32.sub + local.tee $2 + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 11568 + return + end + local.get $3 + i32.eqz + local.get $4 + local.get $1 + i32.const 1 + i32.shl + i32.eq + i32.and + if + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + return + end + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.const 2 + call $~lib/rt/itcms/__new + local.tee $1 + i32.store offset=4 + local.get $1 + local.get $0 + local.get $3 + i32.add + local.get $2 + memory.copy + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $1 + ) + (func $~lib/array/Array#join (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + 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 16192 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 0 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store + local.get $0 + i32.load offset=4 + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store + local.get $0 + i32.load offset=12 + local.set $0 + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16192 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + block $__inlined_func$~lib/util/string/joinIntegerArray$718 + local.get $0 + i32.const 1 + i32.sub + local.tee $7 + i32.const 0 + i32.lt_s + if + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 11568 local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray$738 + br $__inlined_func$~lib/util/string/joinIntegerArray$718 end local.get $7 i32.eqz @@ -15136,7 +15333,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$738 + br $__inlined_func$~lib/util/string/joinIntegerArray$718 end global.get $~lib/memory/__stack_pointer local.get $1 @@ -15235,7 +15432,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$738 + br $__inlined_func$~lib/util/string/joinIntegerArray$718 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -15301,7 +15498,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$739 + block $__inlined_func$~lib/util/string/joinIntegerArray$719 local.get $0 i32.const 1 i32.sub @@ -15315,7 +15512,7 @@ global.set $~lib/memory/__stack_pointer i32.const 11568 local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray$739 + br $__inlined_func$~lib/util/string/joinIntegerArray$719 end local.get $7 i32.eqz @@ -15328,7 +15525,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$739 + br $__inlined_func$~lib/util/string/joinIntegerArray$719 end global.get $~lib/memory/__stack_pointer local.get $1 @@ -15427,7 +15624,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$739 + br $__inlined_func$~lib/util/string/joinIntegerArray$719 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -16206,7 +16403,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$740 + block $__inlined_func$~lib/util/string/joinIntegerArray$720 local.get $0 i32.const 1 i32.sub @@ -16220,7 +16417,7 @@ global.set $~lib/memory/__stack_pointer i32.const 11568 local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray$740 + br $__inlined_func$~lib/util/string/joinIntegerArray$720 end local.get $6 i32.eqz @@ -16233,7 +16430,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$740 + br $__inlined_func$~lib/util/string/joinIntegerArray$720 end global.get $~lib/memory/__stack_pointer i32.const 11856 @@ -16326,7 +16523,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$740 + br $__inlined_func$~lib/util/string/joinIntegerArray$720 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -16402,7 +16599,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $__inlined_func$~lib/util/number/utoa64$485 + block $__inlined_func$~lib/util/number/utoa64$464 local.get $3 i64.eqz if @@ -16412,7 +16609,7 @@ global.set $~lib/memory/__stack_pointer i32.const 7712 local.set $1 - br $__inlined_func$~lib/util/number/utoa64$485 + br $__inlined_func$~lib/util/number/utoa64$464 end local.get $3 i64.const 4294967295 @@ -16751,7 +16948,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$743 + block $__inlined_func$~lib/util/string/joinIntegerArray$723 local.get $0 i32.const 1 i32.sub @@ -16765,7 +16962,7 @@ global.set $~lib/memory/__stack_pointer i32.const 11568 local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray$743 + br $__inlined_func$~lib/util/string/joinIntegerArray$723 end local.get $6 i32.eqz @@ -16778,7 +16975,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$743 + br $__inlined_func$~lib/util/string/joinIntegerArray$723 end global.get $~lib/memory/__stack_pointer i32.const 11856 @@ -16871,7 +17068,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$743 + br $__inlined_func$~lib/util/string/joinIntegerArray$723 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -17359,17 +17556,16 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i64) - (local $6 f64) - (local $7 f32) + (local $4 i64) + (local $5 f64) + (local $6 f32) + (local $7 i32) (local $8 i32) (local $9 i32) (local $10 i32) (local $11 i32) (local $12 i32) (local $13 i32) - (local $14 i32) global.get $~lib/memory/__stack_pointer i32.const 444 i32.sub @@ -17420,9 +17616,9 @@ global.set $std/array/arr i32.const 0 call $std/array/Ref#constructor - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 8 @@ -17439,11 +17635,11 @@ i32.const 12 i32.const 6 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 16 @@ -17459,87 +17655,65 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store offset=8 - local.get $2 + local.get $0 i32.eqz if global.get $~lib/memory/__stack_pointer i32.const 12 i32.const 3 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store end global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store - local.get $2 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer i32.const 1 i32.const 1 call $~lib/rt/itcms/__new - local.tee $9 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $2 + local.tee $8 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $0 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $8 i32.store offset=12 - local.get $2 - local.get $9 + local.get $0 + local.get $8 i32.store - local.get $2 - local.get $9 + local.get $0 + local.get $8 i32.const 0 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - local.get $9 + local.get $0 + i32.store offset=8 + local.get $0 + local.get $8 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 + local.get $0 + i32.store offset=8 + local.get $0 i32.const 1 i32.store offset=8 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.eqz if i32.const 0 @@ -17555,30 +17729,30 @@ i32.const 7 i32.const 1696 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const 1 i32.const 1 i32.const 3 call $~lib/array/Array#fill global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 0 i32.const 7 i32.const 1728 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17590,28 +17764,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const 0 i32.const 0 call $~lib/array/Array#fill@varargs global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 0 i32.const 7 i32.const 1760 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17623,27 +17797,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const 1 i32.const 0 i32.const -3 call $~lib/array/Array#fill global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 0 i32.const 7 i32.const 1792 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17655,28 +17829,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 2 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const 2 i32.const -2 call $~lib/array/Array#fill@varargs global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 0 i32.const 7 i32.const 1824 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17688,27 +17862,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 i32.const 0 call $~lib/array/Array#fill global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 0 i32.const 7 i32.const 1856 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17720,28 +17894,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const -1 i32.const 0 call $~lib/array/Array#fill@varargs global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 0 i32.const 7 i32.const 1888 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17758,30 +17932,30 @@ i32.const 8 i32.const 1920 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const 1 i32.const 1 i32.const 3 call $~lib/array/Array#fill global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 8 i32.const 1968 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17793,28 +17967,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const 0 i32.const 0 call $~lib/array/Array#fill@varargs global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 8 i32.const 2016 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17826,27 +18000,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const 1 i32.const 0 i32.const -3 call $~lib/array/Array#fill global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 8 i32.const 2064 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17858,28 +18032,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 2 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const 2 i32.const -2 call $~lib/array/Array#fill@varargs global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 8 i32.const 2112 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17891,27 +18065,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const 0 i32.const 1 i32.const 0 call $~lib/array/Array#fill global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 8 i32.const 2160 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17923,28 +18097,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const -1 i32.const 0 call $~lib/array/Array#fill@varargs global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 8 i32.const 2208 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17961,30 +18135,30 @@ i32.const 9 i32.const 2256 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=16 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 f32.const 1 i32.const 1 i32.const 3 call $~lib/array/Array#fill global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 9 i32.const 2304 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -17996,28 +18170,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $0 f32.const 0 i32.const 0 call $~lib/array/Array#fill@varargs global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 9 i32.const 2352 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -18029,27 +18203,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 f32.const 1 i32.const 0 i32.const -3 call $~lib/array/Array#fill global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 9 i32.const 2400 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -18061,28 +18235,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 2 global.set $~argumentsLength - local.get $2 + local.get $0 f32.const 2 i32.const -2 call $~lib/array/Array#fill@varargs global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 9 i32.const 2448 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -18094,27 +18268,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 f32.const 0 i32.const 1 i32.const 0 call $~lib/array/Array#fill global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 9 i32.const 2496 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -18126,28 +18300,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $0 f32.const -1 i32.const 0 call $~lib/array/Array#fill@varargs global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 9 i32.const 2544 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -18159,28 +18333,28 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $0 f32.const -0 i32.const 0 call $~lib/array/Array#fill@varargs global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 9 i32.const 2592 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $std/array/isArraysEqual i32.eqz if @@ -18193,9 +18367,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length if i32.const 0 @@ -18207,9 +18381,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -18223,16 +18397,16 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 42 call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 42 @@ -18247,9 +18421,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length i32.const 1 i32.ne @@ -18263,9 +18437,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -18279,9 +18453,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#pop i32.const 42 i32.ne @@ -18295,9 +18469,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length if i32.const 0 @@ -18309,9 +18483,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -18325,16 +18499,16 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 43 call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length i32.const 1 i32.ne @@ -18348,9 +18522,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -18364,9 +18538,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -18381,16 +18555,16 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 44 call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length i32.const 2 i32.ne @@ -18404,9 +18578,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -18420,9 +18594,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -18437,9 +18611,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -18454,16 +18628,16 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 45 call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length i32.const 3 i32.ne @@ -18477,9 +18651,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -18493,9 +18667,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -18510,9 +18684,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -18527,9 +18701,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -18549,22 +18723,22 @@ i32.const 10 i32.const 0 call $~lib/rt/__newArray - local.tee $8 + local.tee $7 i32.store offset=20 - local.get $8 + local.get $7 i32.const 0 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__set - local.get $8 + local.get $7 i32.const 1 i32.const 0 call $std/array/Ref#constructor call $~lib/array/Array#__set - local.get $8 + local.get $7 i32.store offset=24 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -18577,14 +18751,14 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $8 + local.get $7 i32.const 0 i32.const 0 call $~lib/array/ensureCapacity global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.const 0 i32.store offset=12 global.get $~lib/memory/__stack_pointer @@ -18592,9 +18766,9 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 call $~lib/array/Array#get:length if i32.const 0 @@ -18610,12 +18784,12 @@ i32.const 4 i32.const 2688 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=28 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const 0 call $~lib/array/Array#at i32.const 1 @@ -18629,9 +18803,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const 3 call $~lib/array/Array#at i32.const 4 @@ -18645,9 +18819,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const -1 call $~lib/array/Array#at i32.const 4 @@ -18661,9 +18835,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const -4 call $~lib/array/Array#at i32.const 1 @@ -18679,26 +18853,26 @@ global.get $~lib/memory/__stack_pointer i32.const 0 call $~lib/array/Array#constructor - local.tee $2 + local.tee $0 i32.store offset=32 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $8 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $8 - local.get $2 + local.get $7 + local.get $0 call $~lib/array/Array#concat - local.tee $8 + local.tee $7 i32.store offset=36 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 call $std/array/internalCapacity i32.const 8 i32.ne @@ -18712,9 +18886,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 call $~lib/array/Array#get:length i32.const 3 i32.ne @@ -18727,9 +18901,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 call $~lib/array/Array#get:length i32.const 3 i32.ne @@ -18742,26 +18916,26 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store i32.const 0 i32.const 2 i32.const 4 i32.const 2736 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 call $~lib/array/Array#concat drop global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 call $std/array/internalCapacity i32.const 8 i32.ne @@ -18774,9 +18948,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -18790,9 +18964,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -18806,9 +18980,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -18822,35 +18996,35 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const 46 call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.const 47 call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $8 + local.tee $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $8 - local.get $2 + local.get $7 + local.get $0 call $~lib/array/Array#concat - local.tee $8 + local.tee $7 i32.store offset=36 global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $9 + local.tee $8 i32.store - local.get $9 + local.get $8 call $std/array/internalCapacity i32.const 8 i32.ne @@ -18863,9 +19037,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length i32.const 2 i32.ne @@ -18878,9 +19052,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 call $~lib/array/Array#get:length i32.const 5 i32.ne @@ -18893,9 +19067,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.const 0 call $~lib/array/Array#__get i32.const 43 @@ -18909,9 +19083,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.const 1 call $~lib/array/Array#__get i32.const 44 @@ -18925,9 +19099,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.const 2 call $~lib/array/Array#__get i32.const 45 @@ -18941,9 +19115,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.const 3 call $~lib/array/Array#__get i32.const 46 @@ -18957,9 +19131,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 i32.const 4 call $~lib/array/Array#__get i32.const 47 @@ -18973,15 +19147,15 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 call $~lib/array/Array#pop drop global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 call $~lib/array/Array#get:length i32.const 4 i32.ne @@ -18999,12 +19173,12 @@ i32.const 4 i32.const 2768 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=40 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length if i32.const 0 @@ -19015,22 +19189,22 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $8 + local.tee $7 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $2 - local.get $8 + local.get $0 + local.get $7 call $~lib/array/Array#concat - local.tee $8 + local.tee $7 i32.store offset=36 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 call $~lib/array/Array#get:length i32.const 3 i32.ne @@ -19043,9 +19217,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length if i32.const 0 @@ -19061,32 +19235,32 @@ i32.const 4 i32.const 2800 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=44 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=48 i32.const 2 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const 0 i32.const 3 call $~lib/array/Array#copyWithin@varargs - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 2848 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19104,32 +19278,32 @@ i32.const 4 i32.const 2896 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=44 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=48 i32.const 2 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const 1 i32.const 3 call $~lib/array/Array#copyWithin@varargs - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 2944 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19147,32 +19321,32 @@ i32.const 4 i32.const 2992 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=44 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=48 i32.const 2 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const 1 i32.const 2 call $~lib/array/Array#copyWithin@varargs - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 3040 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19190,32 +19364,32 @@ i32.const 4 i32.const 3088 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=44 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=48 i32.const 2 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const 2 i32.const 2 call $~lib/array/Array#copyWithin@varargs - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 3136 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19233,31 +19407,31 @@ i32.const 4 i32.const 3184 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=44 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=48 - local.get $2 + local.get $0 i32.const 0 i32.const 3 i32.const 4 call $~lib/array/Array#copyWithin - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 3232 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19275,31 +19449,31 @@ i32.const 4 i32.const 3280 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=44 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=48 - local.get $2 + local.get $0 i32.const 1 i32.const 3 i32.const 4 call $~lib/array/Array#copyWithin - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 3328 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19317,31 +19491,31 @@ i32.const 4 i32.const 3376 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=44 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=48 - local.get $2 + local.get $0 i32.const 1 i32.const 2 i32.const 4 call $~lib/array/Array#copyWithin - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 3424 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19359,32 +19533,32 @@ i32.const 4 i32.const 3472 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=44 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=48 i32.const 2 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const 0 i32.const -2 call $~lib/array/Array#copyWithin@varargs - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 3520 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19402,31 +19576,31 @@ i32.const 4 i32.const 3568 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=44 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=48 - local.get $2 + local.get $0 i32.const 0 i32.const -2 i32.const -1 call $~lib/array/Array#copyWithin - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 3616 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19444,31 +19618,31 @@ i32.const 4 i32.const 3664 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=44 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=48 - local.get $2 + local.get $0 i32.const -4 i32.const -3 i32.const -2 call $~lib/array/Array#copyWithin - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 3712 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19486,31 +19660,31 @@ i32.const 4 i32.const 3760 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=44 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=48 - local.get $2 + local.get $0 i32.const -4 i32.const -3 i32.const -1 call $~lib/array/Array#copyWithin - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 3808 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19528,32 +19702,32 @@ i32.const 4 i32.const 3856 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=44 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=48 i32.const 2 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const -4 i32.const -3 call $~lib/array/Array#copyWithin@varargs - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 3904 call $~lib/rt/__newArray - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store offset=8 - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -19567,16 +19741,16 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 42 call $~lib/array/Array#unshift global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length i32.const 4 i32.ne @@ -19590,9 +19764,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -19606,9 +19780,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 42 @@ -19623,9 +19797,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 43 @@ -19640,9 +19814,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 44 @@ -19657,9 +19831,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 3 call $~lib/array/Array#__get i32.const 45 @@ -19674,16 +19848,16 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 41 call $~lib/array/Array#unshift global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length i32.const 5 i32.ne @@ -19697,9 +19871,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -19713,9 +19887,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 41 @@ -19730,9 +19904,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 42 @@ -19747,9 +19921,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 43 @@ -19764,9 +19938,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 3 call $~lib/array/Array#__get i32.const 44 @@ -19781,9 +19955,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 4 call $~lib/array/Array#__get i32.const 45 @@ -19798,7 +19972,7 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -19812,11 +19986,11 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 0 i32.le_s if @@ -19828,34 +20002,34 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.load offset=4 - local.tee $9 + local.tee $8 i32.load - local.get $9 - local.get $9 + local.get $8 + local.get $8 i32.const 4 i32.add - local.get $8 + local.get $7 i32.const 1 i32.sub - local.tee $8 + local.tee $7 i32.const 2 i32.shl - local.tee $11 + local.tee $10 memory.copy - local.get $9 - local.get $11 + local.get $8 + local.get $10 i32.add i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 - local.get $8 + local.get $0 + local.get $7 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -19875,9 +20049,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length i32.const 4 i32.ne @@ -19891,9 +20065,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -19907,9 +20081,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 42 @@ -19924,9 +20098,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 43 @@ -19941,9 +20115,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 44 @@ -19958,9 +20132,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 3 call $~lib/array/Array#__get i32.const 45 @@ -19975,9 +20149,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#pop global.set $std/array/i global.get $std/array/i @@ -19993,9 +20167,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length i32.const 3 i32.ne @@ -20009,9 +20183,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -20025,9 +20199,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 42 @@ -20042,9 +20216,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 43 @@ -20059,9 +20233,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 44 @@ -20080,33 +20254,33 @@ i32.const 4 i32.const 3952 call $~lib/rt/__newArray - local.tee $2 + local.tee $0 i32.store offset=52 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const 2 call $~lib/array/Array#slice@varargs - local.tee $8 + local.tee $7 i32.store offset=56 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store i32.const 3 i32.const 2 i32.const 4 i32.const 4000 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20119,29 +20293,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const 2 i32.const 4 call $~lib/array/Array#slice - local.tee $8 + local.tee $7 i32.store offset=56 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store i32.const 2 i32.const 2 i32.const 4 i32.const 4032 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20154,29 +20328,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const 1 i32.const 5 call $~lib/array/Array#slice - local.tee $8 + local.tee $7 i32.store offset=56 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store i32.const 4 i32.const 2 i32.const 4 i32.const 4064 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20189,24 +20363,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 0 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const 0 call $~lib/array/Array#slice@varargs - local.tee $8 + local.tee $7 i32.store offset=56 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 - local.get $8 - local.get $2 + local.get $7 + local.get $0 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20219,30 +20393,30 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store i32.const 1 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const -2 call $~lib/array/Array#slice@varargs - local.tee $8 + local.tee $7 i32.store offset=56 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store i32.const 2 i32.const 2 i32.const 4 i32.const 4112 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20255,29 +20429,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const 2 i32.const -1 call $~lib/array/Array#slice - local.tee $8 + local.tee $7 i32.store offset=56 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store i32.const 2 i32.const 2 i32.const 4 i32.const 4144 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20290,29 +20464,29 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.const -3 i32.const -1 call $~lib/array/Array#slice - local.tee $8 + local.tee $7 i32.store offset=56 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store i32.const 2 i32.const 2 i32.const 4 i32.const 4176 call $~lib/rt/__newArray - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=8 + local.get $7 local.get $8 - local.get $9 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -20325,17 +20499,17 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 - local.get $2 + local.get $0 i32.const -1 i32.const -3 call $~lib/array/Array#slice - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 call $~lib/array/Array#get:length if i32.const 0 @@ -20346,18 +20520,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store offset=8 i32.const 1 global.set $~argumentsLength - local.get $2 + local.get $0 i32.const 10 call $~lib/array/Array#slice@varargs - local.set $2 + local.set $0 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length if i32.const 0 @@ -20369,7 +20543,7 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -20383,59 +20557,59 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.load offset=4 - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 i32.load offset=12 - local.tee $2 + local.tee $0 i32.const 1 i32.gt_u if - local.get $2 + local.get $0 i32.const 1 i32.shr_u - local.set $9 - local.get $2 + local.set $8 + local.get $0 i32.const 1 i32.sub - local.set $2 + local.set $0 loop $while-continue|0 - local.get $4 - local.get $9 + local.get $3 + local.get $8 i32.lt_u if - local.get $8 - local.get $4 + local.get $7 + local.get $3 i32.const 2 i32.shl i32.add - local.tee $10 + local.tee $9 i32.load - local.set $11 - local.get $10 - local.get $8 - local.get $2 - local.get $4 + local.set $10 + local.get $9 + local.get $7 + local.get $0 + local.get $3 i32.sub i32.const 2 i32.shl i32.add - local.tee $10 + local.tee $9 i32.load i32.store + local.get $9 local.get $10 - local.get $11 i32.store - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $while-continue|0 end end @@ -20446,9 +20620,9 @@ global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length i32.const 3 i32.ne @@ -20462,9 +20636,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 call $std/array/internalCapacity i32.const 8 i32.ne @@ -20478,9 +20652,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 0 call $~lib/array/Array#__get i32.const 44 @@ -20495,9 +20669,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 1 call $~lib/array/Array#__get i32.const 43 @@ -20512,9 +20686,9 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 2 call $~lib/array/Array#__get i32.const 42 @@ -20529,16 +20703,16 @@ end global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 43 call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $0 i32.store - local.get $2 + local.get $0 i32.const 44 call $~lib/array/Array#push global.get $~lib/memory/__stack_pointer @@ -20547,37 +20721,37 @@ i32.const 7 i32.const 4208 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 call $~lib/array/Array#reverse - local.tee $2 + local.tee $0 i32.store offset=60 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length - local.set $4 + local.set $3 loop $for-loop|0 - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 local.get $0 + local.get $1 call $~lib/array/Array#__get global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 - call $~lib/array/Array#get:length local.get $0 + call $~lib/array/Array#get:length + local.get $1 i32.sub i32.const 1 i32.sub @@ -20590,10 +20764,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end @@ -20603,39 +20777,39 @@ i32.const 7 i32.const 4240 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 call $~lib/array/Array#reverse - local.tee $2 + local.tee $0 i32.store offset=64 i32.const 0 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length - local.set $4 + local.set $3 loop $for-loop|1 - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 local.get $0 + local.get $1 call $~lib/array/Array#__get global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 - call $~lib/array/Array#get:length local.get $0 + call $~lib/array/Array#get:length + local.get $1 i32.sub i32.const 1 i32.sub @@ -20648,10 +20822,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end @@ -20661,39 +20835,39 @@ i32.const 7 i32.const 4272 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 call $~lib/array/Array#reverse - local.tee $2 + local.tee $0 i32.store offset=68 i32.const 0 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length - local.set $4 + local.set $3 loop $for-loop|2 - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 local.get $0 + local.get $1 call $~lib/array/Array#__get global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 - call $~lib/array/Array#get:length local.get $0 + call $~lib/array/Array#get:length + local.get $1 i32.sub i32.const 1 i32.sub @@ -20706,10 +20880,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|2 end end @@ -20719,39 +20893,39 @@ i32.const 11 i32.const 4320 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 call $~lib/array/Array#reverse - local.tee $2 + local.tee $0 i32.store offset=72 i32.const 0 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length - local.set $4 + local.set $3 loop $for-loop|3 - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 local.get $0 + local.get $1 call $~lib/array/Array#__get global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 - call $~lib/array/Array#get:length local.get $0 + call $~lib/array/Array#get:length + local.get $1 i32.sub i32.const 1 i32.sub @@ -20764,10 +20938,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|3 end end @@ -20777,39 +20951,39 @@ i32.const 11 i32.const 4368 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 call $~lib/array/Array#reverse - local.tee $2 + local.tee $0 i32.store offset=76 i32.const 0 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length - local.set $4 + local.set $3 loop $for-loop|4 - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 local.get $0 + local.get $1 call $~lib/array/Array#__get global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 - call $~lib/array/Array#get:length local.get $0 + call $~lib/array/Array#get:length + local.get $1 i32.sub i32.const 1 i32.sub @@ -20822,10 +20996,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|4 end end @@ -20835,39 +21009,39 @@ i32.const 11 i32.const 4416 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 call $~lib/array/Array#reverse - local.tee $2 + local.tee $0 i32.store offset=80 i32.const 0 - local.set $0 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 + local.get $0 call $~lib/array/Array#get:length - local.set $4 + local.set $3 loop $for-loop|5 - local.get $0 - local.get $4 + local.get $1 + local.get $3 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 local.get $0 + local.get $1 call $~lib/array/Array#__get global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $0 i32.store - local.get $2 - call $~lib/array/Array#get:length local.get $0 + call $~lib/array/Array#get:length + local.get $1 i32.sub i32.const 1 i32.sub @@ -20880,10 +21054,10 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|5 end end @@ -21090,9 +21264,9 @@ i32.const 9 i32.const 4464 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 local.set $0 @@ -21108,14 +21282,14 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - block $__inlined_func$~lib/array/Array#indexOf$714 - local.get $2 + block $__inlined_func$~lib/array/Array#indexOf$696 + local.get $1 i32.load offset=12 - local.tee $4 + local.tee $3 i32.eqz - local.get $4 + local.get $3 i32.const 0 i32.le_s i32.or @@ -21126,20 +21300,20 @@ global.set $~lib/memory/__stack_pointer i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf$714 + br $__inlined_func$~lib/array/Array#indexOf$696 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|05 local.get $0 - local.get $4 + local.get $3 i32.lt_s if - local.get $2 + local.get $1 local.get $0 i32.const 2 i32.shl @@ -21152,7 +21326,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/array/Array#indexOf$714 + br $__inlined_func$~lib/array/Array#indexOf$696 end local.get $0 i32.const 1 @@ -21184,9 +21358,9 @@ i32.const 12 i32.const 4496 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 local.set $0 @@ -21202,14 +21376,14 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - block $__inlined_func$~lib/array/Array#indexOf$715 - local.get $2 + block $__inlined_func$~lib/array/Array#indexOf$697 + local.get $1 i32.load offset=12 - local.tee $4 + local.tee $3 i32.eqz - local.get $4 + local.get $3 i32.const 0 i32.le_s i32.or @@ -21220,20 +21394,20 @@ global.set $~lib/memory/__stack_pointer i32.const -1 local.set $0 - br $__inlined_func$~lib/array/Array#indexOf$715 + br $__inlined_func$~lib/array/Array#indexOf$697 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|07 local.get $0 - local.get $4 + local.get $3 i32.lt_s if - local.get $2 + local.get $1 local.get $0 i32.const 3 i32.shl @@ -21246,7 +21420,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/array/Array#indexOf$715 + br $__inlined_func$~lib/array/Array#indexOf$697 end local.get $0 i32.const 1 @@ -21557,15 +21731,15 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/array/Array#includes$716 (result i32) + block $__inlined_func$~lib/array/Array#includes$698 (result i32) i32.const 1 i32.const 2 i32.const 9 i32.const 4576 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 local.set $0 @@ -21581,13 +21755,13 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.load offset=12 - local.tee $4 + local.tee $3 i32.eqz - local.get $4 + local.get $3 i32.const 0 i32.le_s i32.or @@ -21597,27 +21771,27 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - br $__inlined_func$~lib/array/Array#includes$716 + br $__inlined_func$~lib/array/Array#includes$698 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|09 local.get $0 - local.get $4 + local.get $3 i32.lt_s if - local.get $2 + local.get $1 local.get $0 i32.const 2 i32.shl i32.add f32.load - local.tee $7 - local.get $7 + local.tee $6 + local.get $6 f32.ne if global.get $~lib/memory/__stack_pointer @@ -21625,7 +21799,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1 - br $__inlined_func$~lib/array/Array#includes$716 + br $__inlined_func$~lib/array/Array#includes$698 end local.get $0 i32.const 1 @@ -21649,15 +21823,15 @@ call $~lib/builtins/abort unreachable end - block $__inlined_func$~lib/array/Array#includes$717 (result i32) + block $__inlined_func$~lib/array/Array#includes$699 (result i32) i32.const 1 i32.const 3 i32.const 12 i32.const 4608 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 local.set $0 @@ -21673,13 +21847,13 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.load offset=12 - local.tee $4 + local.tee $3 i32.eqz - local.get $4 + local.get $3 i32.const 0 i32.le_s i32.or @@ -21689,27 +21863,27 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - br $__inlined_func$~lib/array/Array#includes$717 + br $__inlined_func$~lib/array/Array#includes$699 end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.load offset=4 - local.set $2 + local.set $1 loop $while-continue|011 local.get $0 - local.get $4 + local.get $3 i32.lt_s if - local.get $2 + local.get $1 local.get $0 i32.const 3 i32.shl i32.add f64.load - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 f64.ne if global.get $~lib/memory/__stack_pointer @@ -21717,7 +21891,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 1 - br $__inlined_func$~lib/array/Array#includes$717 + br $__inlined_func$~lib/array/Array#includes$699 end local.get $0 i32.const 1 @@ -21832,21 +22006,21 @@ local.get $0 i32.const 0 call $~lib/array/Array#splice@varargs - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 5 i32.const 2 i32.const 4 i32.const 4688 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -21866,12 +22040,12 @@ i32.const 4 i32.const 4736 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -21898,21 +22072,21 @@ i32.const 0 i32.const 0 call $~lib/array/Array#splice - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 i32.const 2 i32.const 4 i32.const 4816 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -21932,12 +22106,12 @@ i32.const 4 i32.const 4848 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -21965,21 +22139,21 @@ local.get $0 i32.const 2 call $~lib/array/Array#splice@varargs - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 3 i32.const 2 i32.const 4 i32.const 4944 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -21999,12 +22173,12 @@ i32.const 4 i32.const 4976 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22031,21 +22205,21 @@ i32.const 2 i32.const 2 call $~lib/array/Array#splice - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 2 i32.const 2 i32.const 4 i32.const 5056 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22065,12 +22239,12 @@ i32.const 4 i32.const 5088 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22097,21 +22271,21 @@ i32.const 0 i32.const 1 call $~lib/array/Array#splice - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 1 i32.const 2 i32.const 4 i32.const 5168 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22131,12 +22305,12 @@ i32.const 4 i32.const 5200 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22164,21 +22338,21 @@ local.get $0 i32.const -1 call $~lib/array/Array#splice@varargs - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 1 i32.const 2 i32.const 4 i32.const 5296 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22198,12 +22372,12 @@ i32.const 4 i32.const 5328 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22231,21 +22405,21 @@ local.get $0 i32.const -2 call $~lib/array/Array#splice@varargs - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 2 i32.const 2 i32.const 4 i32.const 5424 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22265,12 +22439,12 @@ i32.const 4 i32.const 5456 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22297,21 +22471,21 @@ i32.const -2 i32.const 1 call $~lib/array/Array#splice - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 1 i32.const 2 i32.const 4 i32.const 5536 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22331,12 +22505,12 @@ i32.const 4 i32.const 5568 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22363,21 +22537,21 @@ i32.const -7 i32.const 1 call $~lib/array/Array#splice - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 1 i32.const 2 i32.const 4 i32.const 5664 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22397,12 +22571,12 @@ i32.const 4 i32.const 5696 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22429,21 +22603,21 @@ i32.const -2 i32.const -1 call $~lib/array/Array#splice - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 i32.const 2 i32.const 4 i32.const 5792 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22463,12 +22637,12 @@ i32.const 4 i32.const 5824 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22495,21 +22669,21 @@ i32.const 1 i32.const -2 call $~lib/array/Array#splice - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 i32.const 2 i32.const 4 i32.const 5920 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22529,12 +22703,12 @@ i32.const 4 i32.const 5952 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22561,21 +22735,21 @@ i32.const 4 i32.const 0 call $~lib/array/Array#splice - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 i32.const 2 i32.const 4 i32.const 6048 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22595,12 +22769,12 @@ i32.const 4 i32.const 6080 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22627,21 +22801,21 @@ i32.const 7 i32.const 0 call $~lib/array/Array#splice - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 i32.const 2 i32.const 4 i32.const 6176 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22661,12 +22835,12 @@ i32.const 4 i32.const 6208 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22693,21 +22867,21 @@ i32.const 7 i32.const 5 call $~lib/array/Array#splice - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 i32.const 2 i32.const 4 i32.const 6304 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $2 - local.get $4 + local.get $1 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22727,12 +22901,12 @@ i32.const 4 i32.const 6336 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -22759,12 +22933,12 @@ local.get $0 i32.const 1 call $~lib/array/Array#splice - local.tee $2 + local.tee $1 i32.store offset=96 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 call $~lib/array/Array#get:length if i32.const 0 @@ -22794,40 +22968,40 @@ i32.const 10 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=100 - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $std/array/Ref#constructor call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 2 call $std/array/Ref#constructor call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.const 2 i32.const 3 call $std/array/Ref#constructor call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.const 3 i32.const 4 call $std/array/Ref#constructor call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.const 4 i32.const 5 call $std/array/Ref#constructor call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.store offset=92 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 2 call $~lib/array/Array#splice local.tee $0 @@ -22853,11 +23027,11 @@ local.get $0 i32.const 0 call $~lib/array/Array#__get - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 i32.load i32.const 3 i32.ne @@ -22892,9 +23066,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 call $~lib/array/Array#get:length i32.const 3 i32.ne @@ -22907,9 +23081,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 - local.get $2 + local.get $1 i32.const 0 call $~lib/array/Array#__get local.set $0 @@ -22929,9 +23103,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 - local.get $2 + local.get $1 i32.const 1 call $~lib/array/Array#__get local.set $0 @@ -22951,9 +23125,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 - local.get $2 + local.get $1 i32.const 2 call $~lib/array/Array#__get local.set $0 @@ -22979,27 +23153,27 @@ i32.const 13 i32.const 0 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=104 - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $std/array/Ref#constructor call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.const 1 i32.const 0 call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.const 2 i32.const 2 call $std/array/Ref#constructor call $~lib/array/Array#__set - local.get $2 + local.get $1 i32.store offset=108 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 8 @@ -23013,98 +23187,98 @@ i64.const 0 i64.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.load offset=12 - local.tee $4 + local.tee $3 i32.const 0 - local.get $4 + local.get $3 i32.const 0 i32.le_s select - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer i32.const 1 - local.get $4 - local.get $8 + local.get $3 + local.get $7 i32.sub - local.tee $9 - local.get $9 + local.tee $8 + local.get $8 i32.const 1 i32.gt_s select - local.tee $9 + local.tee $8 i32.const 0 - local.get $9 + local.get $8 i32.const 0 i32.gt_s select - local.tee $9 + local.tee $8 i32.const 2 i32.const 13 i32.const 0 call $~lib/rt/__newArray - local.tee $10 + local.tee $9 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.store - local.get $10 + local.get $9 i32.load offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.load offset=4 - local.tee $11 - local.get $8 + local.tee $10 + local.get $7 i32.const 2 i32.shl i32.add - local.tee $12 - local.get $9 + local.tee $11 + local.get $8 i32.const 2 i32.shl memory.copy + local.get $7 local.get $8 - local.get $9 i32.add - local.tee $8 - local.get $4 + local.tee $7 + local.get $3 i32.ne if - local.get $12 local.get $11 - local.get $8 + local.get $10 + local.get $7 i32.const 2 i32.shl i32.add - local.get $4 - local.get $8 + local.get $3 + local.get $7 i32.sub i32.const 2 i32.shl memory.copy end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 - local.get $4 - local.get $9 + local.get $1 + local.get $3 + local.get $8 i32.sub i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.store offset=112 global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.store - local.get $10 + local.get $9 call $~lib/array/Array#get:length i32.const 1 i32.ne @@ -23117,10 +23291,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.const 0 call $~lib/array/Array#__get local.tee $0 @@ -23151,9 +23325,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 call $~lib/array/Array#get:length i32.const 2 i32.ne @@ -23166,9 +23340,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 0 call $~lib/array/Array#__get if @@ -23180,10 +23354,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.const 1 call $~lib/array/Array#__get local.tee $0 @@ -24078,9 +24252,9 @@ if global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store - local.get $2 + local.get $1 call $~lib/array/Array#pop drop local.get $0 @@ -24121,7 +24295,7 @@ global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 9296 @@ -24141,80 +24315,80 @@ i64.const 0 i64.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 2 i32.const 16 i32.const 0 call $~lib/rt/__newArray - local.tee $9 + local.tee $8 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store - local.get $9 + local.get $8 i32.load offset=4 - local.set $10 + local.set $9 i32.const 0 - local.set $4 + local.set $3 loop $for-loop|012 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $4 - local.get $8 - local.get $2 + local.get $3 + local.get $7 + local.get $1 i32.load offset=12 - local.tee $11 - local.get $8 - local.get $11 + local.tee $10 + local.get $7 + local.get $10 i32.lt_s select i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 - local.get $4 + local.get $3 i32.const 2 i32.shl - local.tee $11 - local.get $2 + local.tee $10 + local.get $1 i32.load offset=4 i32.add i32.load - local.set $12 + local.set $11 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 3 global.set $~argumentsLength global.get $~lib/memory/__stack_pointer - local.get $12 - local.get $4 - local.get $2 + local.get $11 + local.get $3 + local.get $1 i32.const 9296 i32.load call_indirect (type $1) - local.tee $12 + local.tee $11 i32.store offset=12 + local.get $9 local.get $10 - local.get $11 i32.add - local.get $12 + local.get $11 i32.store - local.get $9 - local.get $12 + local.get $8 + local.get $11 i32.const 1 call $~lib/rt/itcms/__link - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|012 end end @@ -24222,12 +24396,12 @@ i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=128 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer global.get $std/array/arr - local.tee $2 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer i32.const 9328 @@ -24247,72 +24421,72 @@ i32.const 0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.load offset=12 - local.tee $8 + local.tee $7 i32.const 2 i32.const 9 i32.const 0 call $~lib/rt/__newArray - local.tee $9 + local.tee $8 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store - local.get $9 + local.get $8 i32.load offset=4 - local.set $10 + local.set $9 i32.const 0 - local.set $4 + local.set $3 loop $for-loop|013 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $4 - local.get $8 - local.get $2 + local.get $3 + local.get $7 + local.get $1 i32.load offset=12 - local.tee $11 - local.get $8 - local.get $11 + local.tee $10 + local.get $7 + local.get $10 i32.lt_s select i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 - local.get $4 + local.get $3 i32.const 2 i32.shl - local.tee $11 - local.get $2 + local.tee $10 + local.get $1 i32.load offset=4 i32.add i32.load - local.set $12 + local.set $11 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 3 global.set $~argumentsLength + local.get $9 local.get $10 - local.get $11 i32.add - local.get $12 - local.get $4 - local.get $2 + local.get $11 + local.get $3 + local.get $1 i32.const 9328 i32.load call_indirect (type $15) f32.store - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 + local.set $3 br $for-loop|013 end end @@ -24320,12 +24494,12 @@ i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store offset=132 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store - local.get $9 + local.get $8 call $~lib/array/Array#get:length i32.const 4 i32.ne @@ -24338,9 +24512,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store - local.get $9 + local.get $8 i32.const 0 call $~lib/array/Array#__get global.get $~lib/memory/__stack_pointer @@ -25148,26 +25322,26 @@ i64.const -7046029254386353131 call $~lib/bindings/dom/Math.random i64.reinterpret_f64 - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.eqz select - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.const 33 i64.shr_u i64.xor i64.const -49064778989728563 i64.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.const 33 i64.shr_u i64.xor i64.const -4265267296055464877 i64.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.const 33 i64.shr_u i64.xor @@ -25175,22 +25349,22 @@ global.get $~lib/math/random_state0_64 i64.const -1 i64.xor - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.const 33 i64.shr_u i64.xor i64.const -49064778989728563 i64.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.const 33 i64.shr_u i64.xor i64.const -4265267296055464877 i64.mul - local.tee $5 - local.get $5 + local.tee $4 + local.get $4 i64.const 33 i64.shr_u i64.xor @@ -25207,243 +25381,243 @@ i32.store offset=140 global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=144 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 100 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 80 i32.store offset=4 local.get $0 i32.const 0 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=148 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 90 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 90 i32.store offset=4 local.get $0 i32.const 1 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=152 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 70 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 95 i32.store offset=4 local.get $0 i32.const 2 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=156 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 100 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 100 i32.store offset=4 local.get $0 i32.const 3 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=160 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 80 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 110 i32.store offset=4 local.get $0 i32.const 4 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=164 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 110 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 115 i32.store offset=4 local.get $0 i32.const 5 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=168 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 100 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 120 i32.store offset=4 local.get $0 i32.const 6 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=172 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 70 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 125 i32.store offset=4 local.get $0 i32.const 7 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=176 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 70 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 130 i32.store offset=4 local.get $0 i32.const 8 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=180 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 100 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 135 i32.store offset=4 local.get $0 i32.const 9 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=184 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 75 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 140 i32.store offset=4 local.get $0 i32.const 10 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=188 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 70 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 140 i32.store offset=4 local.get $0 i32.const 11 - local.get $2 + local.get $1 call $~lib/array/Array#__set local.get $0 global.set $std/array/inputStabArr @@ -25457,243 +25631,243 @@ i32.store offset=192 global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=196 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 70 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 95 i32.store offset=4 local.get $0 i32.const 0 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=200 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 70 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 125 i32.store offset=4 local.get $0 i32.const 1 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=204 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 70 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 130 i32.store offset=4 local.get $0 i32.const 2 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=208 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 70 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 140 i32.store offset=4 local.get $0 i32.const 3 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=212 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 75 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 140 i32.store offset=4 local.get $0 i32.const 4 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=216 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 80 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 110 i32.store offset=4 local.get $0 i32.const 5 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=220 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 90 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 90 i32.store offset=4 local.get $0 i32.const 6 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=224 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 100 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 80 i32.store offset=4 local.get $0 i32.const 7 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=228 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 100 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 100 i32.store offset=4 local.get $0 i32.const 8 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=232 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 100 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 120 i32.store offset=4 local.get $0 i32.const 9 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=236 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 100 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 135 i32.store offset=4 local.get $0 i32.const 10 - local.get $2 + local.get $1 call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer call $std/array/Dim#constructor - local.tee $2 + local.tee $1 i32.store offset=240 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 110 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 i32.const 115 i32.store offset=4 local.get $0 i32.const 11 - local.get $2 + local.get $1 call $~lib/array/Array#__set local.get $0 global.set $std/array/outputStabArr @@ -25720,12 +25894,12 @@ i32.const 9 i32.const 10288 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -25759,12 +25933,12 @@ i32.const 9 i32.const 10384 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -25781,10 +25955,10 @@ i32.const 12 i32.const 10448 call $~lib/rt/__newArray - local.tee $2 + local.tee $1 i32.store offset=252 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 0 global.set $~argumentsLength @@ -25806,7 +25980,7 @@ i32.const 10544 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 10544 @@ -25823,14 +25997,14 @@ i64.const 0 i64.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=4 - local.get $2 + local.get $1 i32.load offset=12 global.get $~lib/memory/__stack_pointer i32.const 10544 @@ -25845,18 +26019,18 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store i32.const 8 i32.const 3 i32.const 12 i32.const 10576 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - block $__inlined_func$std/array/isArraysEqual$7 (result i32) + block $__inlined_func$std/array/isArraysEqual$6 (result i32) i32.const 0 local.set $0 global.get $~lib/memory/__stack_pointer @@ -25871,48 +26045,48 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 call $~lib/array/Array#get:length - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store block $folding-inner1 - block $folding-inner01 - local.get $4 + block $folding-inner00 + local.get $3 call $~lib/array/Array#get:length - local.get $8 + local.get $7 i32.ne - br_if $folding-inner01 - local.get $2 - local.get $4 + br_if $folding-inner00 + local.get $1 + local.get $3 i32.eq br_if $folding-inner1 - loop $for-loop|02 + loop $for-loop|01 local.get $0 - local.get $8 + local.get $7 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 local.get $0 call $~lib/array/Array#__get - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 f64.ne if (result i32) global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 local.get $0 call $~lib/array/Array#__get - local.tee $6 - local.get $6 + local.tee $5 + local.get $5 f64.ne else i32.const 0 @@ -25920,9 +26094,9 @@ i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 local.get $0 call $~lib/array/Array#__get i64.reinterpret_f64 @@ -25930,9 +26104,9 @@ i64.shr_u i32.wrap_i64 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 local.get $0 call $~lib/array/Array#__get i64.reinterpret_f64 @@ -25940,29 +26114,29 @@ i64.shr_u i32.wrap_i64 i32.ne - br_if $folding-inner01 + br_if $folding-inner00 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store - local.get $2 + local.get $1 local.get $0 call $~lib/array/Array#__get - local.set $6 + local.set $5 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 local.get $0 call $~lib/array/Array#__get - local.get $6 + local.get $5 f64.ne - br_if $folding-inner01 + br_if $folding-inner00 end local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|02 + br $for-loop|01 end end br $folding-inner1 @@ -25972,7 +26146,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - br $__inlined_func$std/array/isArraysEqual$7 + br $__inlined_func$std/array/isArraysEqual$6 end global.get $~lib/memory/__stack_pointer i32.const 4 @@ -26041,12 +26215,12 @@ i32.const 4 i32.const 10752 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -26135,12 +26309,12 @@ i32.const 8 i32.const 10880 call $~lib/rt/__newArray - local.set $2 + local.set $1 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $1 i32.store offset=8 local.get $0 - local.get $2 + local.get $1 call $std/array/isArraysEqual i32.eqz if @@ -26157,7 +26331,7 @@ i32.const 4 i32.const 10928 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store offset=264 global.get $~lib/memory/__stack_pointer i32.const 1 @@ -26165,7 +26339,7 @@ i32.const 4 i32.const 10960 call $~lib/rt/__newArray - local.tee $8 + local.tee $7 i32.store offset=268 global.get $~lib/memory/__stack_pointer i32.const 2 @@ -26173,7 +26347,7 @@ i32.const 4 i32.const 10992 call $~lib/rt/__newArray - local.tee $9 + local.tee $8 i32.store offset=272 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -26181,7 +26355,7 @@ i32.const 4 i32.const 11024 call $~lib/rt/__newArray - local.tee $10 + local.tee $9 i32.store offset=276 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -26189,57 +26363,57 @@ i32.const 4 i32.const 11072 call $~lib/rt/__newArray - local.tee $11 + local.tee $10 i32.store offset=280 global.get $~lib/memory/__stack_pointer i32.const 64 call $std/array/createReverseOrderedArray - local.tee $12 + local.tee $11 i32.store offset=284 global.get $~lib/memory/__stack_pointer i32.const 128 call $std/array/createReverseOrderedArray - local.tee $13 + local.tee $12 i32.store offset=288 global.get $~lib/memory/__stack_pointer i32.const 1024 call $std/array/createReverseOrderedArray - local.tee $14 + local.tee $0 i32.store offset=292 global.get $~lib/memory/__stack_pointer i32.const 10000 call $std/array/createReverseOrderedArray - local.tee $0 + local.tee $1 i32.store offset=296 global.get $~lib/memory/__stack_pointer i32.const 512 call $std/array/createRandomOrderedArray - local.tee $2 + local.tee $13 i32.store offset=300 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 call $std/array/assertSortedDefault global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store - local.get $8 + local.get $7 call $std/array/assertSortedDefault global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $7 i32.store i32.const 1 i32.const 2 i32.const 4 i32.const 11152 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $8 - local.get $4 + local.get $7 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -26252,24 +26426,24 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store - local.get $9 + local.get $8 call $std/array/assertSortedDefault global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store i32.const 2 i32.const 2 i32.const 4 i32.const 11184 call $~lib/rt/__newArray - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $9 - local.get $4 + local.get $8 + local.get $3 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -26282,18 +26456,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.store - local.get $10 + local.get $9 call $std/array/assertSortedDefault global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.store global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $10 i32.store offset=8 + local.get $9 local.get $10 - local.get $11 i32.const 0 call $std/array/isArraysEqual i32.eqz @@ -26306,18 +26480,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $12 + local.get $11 i32.store - local.get $12 + local.get $11 call $std/array/assertSortedDefault global.get $~lib/memory/__stack_pointer - local.get $12 + local.get $11 i32.store global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $10 i32.store offset=8 - local.get $12 local.get $11 + local.get $10 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -26330,18 +26504,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $13 + local.get $12 i32.store - local.get $13 + local.get $12 call $std/array/assertSortedDefault global.get $~lib/memory/__stack_pointer - local.get $13 + local.get $12 i32.store global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $10 i32.store offset=8 - local.get $13 - local.get $11 + local.get $12 + local.get $10 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -26354,18 +26528,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $14 + local.get $0 i32.store - local.get $14 + local.get $0 call $std/array/assertSortedDefault global.get $~lib/memory/__stack_pointer - local.get $14 + local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $10 i32.store offset=8 - local.get $14 - local.get $11 + local.get $0 + local.get $10 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -26378,18 +26552,18 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 call $std/array/assertSortedDefault global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $11 + local.get $10 i32.store offset=8 - local.get $0 - local.get $11 + local.get $1 + local.get $10 i32.const 4 call $std/array/isArraysEqual i32.eqz @@ -26402,9 +26576,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $13 i32.store - local.get $2 + local.get $13 call $std/array/assertSortedDefault global.get $~lib/memory/__stack_pointer i32.const 24 @@ -26455,75 +26629,75 @@ i32.store local.get $0 i32.load offset=12 - local.tee $4 + local.tee $3 i32.const 0 - local.get $4 + local.get $3 i32.const 0 i32.le_s select - local.set $8 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $4 - local.get $8 + local.get $3 + local.get $7 i32.sub - local.tee $4 + local.tee $3 i32.const 0 - local.get $4 + local.get $3 i32.const 0 i32.gt_s select - local.tee $4 + local.tee $3 i32.const 2 i32.const 23 i32.const 0 call $~lib/rt/__newArray - local.tee $9 + local.tee $8 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store - local.get $9 + local.get $8 i32.load offset=4 - local.set $10 + local.set $9 global.get $~lib/memory/__stack_pointer local.get $0 i32.store local.get $0 i32.load offset=4 - local.get $8 + local.get $7 i32.const 2 i32.shl i32.add - local.set $8 + local.set $7 i32.const 0 local.set $0 - local.get $4 + local.get $3 i32.const 2 i32.shl - local.set $4 - loop $while-continue|06 + local.set $3 + loop $while-continue|04 local.get $0 - local.get $4 + local.get $3 i32.lt_u if local.get $0 - local.get $10 + local.get $9 i32.add local.get $0 - local.get $8 + local.get $7 i32.add i32.load - local.tee $11 + local.tee $10 i32.store - local.get $9 - local.get $11 + local.get $8 + local.get $10 i32.const 1 call $~lib/rt/itcms/__link local.get $0 i32.const 4 i32.add local.set $0 - br $while-continue|06 + br $while-continue|04 end end global.get $~lib/memory/__stack_pointer @@ -26535,28 +26709,30 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store global.get $~lib/memory/__stack_pointer i32.const 11216 i32.store offset=4 - local.get $9 + local.get $8 i32.const 11216 call $~lib/array/Array#sort local.tee $0 i32.store offset=12 i32.const 1 - local.set $4 + local.set $3 + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer global.get $std/array/inputStabArr - local.tee $2 + local.tee $7 i32.store - local.get $2 + local.get $7 call $~lib/array/Array#get:length - local.set $2 + local.set $7 loop $for-loop|014 local.get $1 - local.get $2 + local.get $7 i32.lt_s if block $for-break0 @@ -26607,7 +26783,7 @@ end if i32.const 0 - local.set $4 + local.set $3 br $for-break0 end local.get $1 @@ -26618,7 +26794,7 @@ end end end - local.get $4 + local.get $3 i32.eqz if i32.const 0 @@ -26679,6 +26855,8 @@ i32.const 11344 call $std/array/assertSorted global.get $~lib/memory/__stack_pointer + i32.const 0 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 16 i32.sub @@ -26712,82 +26890,52 @@ i32.const 16 i32.const 29 call $~lib/rt/itcms/__new - local.tee $2 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 + local.tee $7 i32.store - local.get $2 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 32 i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $2 + local.tee $8 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $7 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $8 i32.store offset=12 - local.get $2 - local.get $4 + local.get $7 + local.get $8 i32.store - local.get $2 - local.get $4 + local.get $7 + local.get $8 i32.const 0 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - local.get $4 + local.get $7 + i32.store offset=8 + local.get $7 + local.get $8 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 + local.get $7 + i32.store offset=8 + local.get $7 i32.const 32 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 + local.get $7 + i32.store offset=8 + local.get $7 i32.const 2 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.store - i32.const 0 - local.set $0 - loop $for-loop|015 + loop $for-loop|06 local.get $0 i32.const 2 i32.lt_s @@ -26795,47 +26943,47 @@ global.get $~lib/memory/__stack_pointer i32.const 1 call $~lib/array/Array#constructor - local.tee $4 + local.tee $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 i32.const 0 i32.const 1 local.get $0 i32.sub call $~lib/array/Array#__set global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=12 - local.get $2 + local.get $7 local.get $0 - local.get $4 + local.get $3 call $~lib/array/Array#__set local.get $0 i32.const 1 i32.add local.set $0 - br $for-loop|015 + br $for-loop|06 end end global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.store offset=312 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $7 i32.store global.get $~lib/memory/__stack_pointer i32.const 11376 i32.store offset=8 - local.get $2 + local.get $7 i32.const 11376 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer @@ -26872,88 +27020,58 @@ i32.const 16 i32.const 32 call $~lib/rt/itcms/__new - local.tee $2 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 + local.tee $3 i32.store - local.get $2 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 2048 i32.const 1 call $~lib/rt/itcms/__new - local.tee $4 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $2 + local.tee $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $7 i32.store offset=12 - local.get $2 - local.get $4 + local.get $3 + local.get $7 i32.store - local.get $2 - local.get $4 + local.get $3 + local.get $7 i32.const 0 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - local.get $4 + local.get $3 + i32.store offset=8 + local.get $3 + local.get $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 + local.get $3 + i32.store offset=8 + local.get $3 i32.const 2048 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 + local.get $3 + i32.store offset=8 + local.get $3 i32.const 512 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store - i32.const 0 - local.set $0 - loop $for-loop|06 - local.get $0 + loop $for-loop|08 + local.get $2 i32.const 512 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -26970,14 +27088,14 @@ i32.const 4 i32.const 31 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $1 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=4 - local.get $4 + local.get $1 i32.const 511 - local.get $0 + local.get $2 i32.sub i32.store global.get $~lib/memory/__stack_pointer @@ -26985,32 +27103,32 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $1 i32.store offset=8 + local.get $3 local.get $2 - local.get $0 - local.get $4 + local.get $1 call $~lib/array/Array#__set - local.get $0 + local.get $2 i32.const 1 i32.add - local.set $0 - br $for-loop|06 + local.set $2 + br $for-loop|08 end end global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store offset=316 global.get $~lib/memory/__stack_pointer - local.get $2 + local.get $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 11408 i32.store offset=8 - local.get $2 + local.get $3 i32.const 11408 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer @@ -27071,7 +27189,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store offset=8 - block $__inlined_func$std/array/isSorted<~lib/string/String|null>$662 (result i32) + block $__inlined_func$std/array/isSorted<~lib/string/String|null>$643 (result i32) global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=8 @@ -27081,9 +27199,9 @@ local.get $0 i32.const 11696 call $~lib/array/Array#sort - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store global.get $~lib/memory/__stack_pointer i32.const 11696 @@ -27105,42 +27223,42 @@ i32.const 1 local.set $1 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store - local.get $4 + local.get $3 call $~lib/array/Array#get:length - local.set $8 - loop $for-loop|07 + local.set $7 + loop $for-loop|069 local.get $1 - local.get $8 + local.get $7 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 local.get $1 i32.const 1 i32.sub call $~lib/array/Array#__get - local.set $9 + local.set $8 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $8 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 local.get $1 call $~lib/array/Array#__get - local.set $10 + local.set $9 global.get $~lib/memory/__stack_pointer - local.get $10 + local.get $9 i32.store offset=4 i32.const 2 global.set $~argumentsLength + local.get $8 local.get $9 - local.get $10 i32.const 11696 i32.load call_indirect (type $0) @@ -27152,13 +27270,13 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 0 - br $__inlined_func$std/array/isSorted<~lib/string/String|null>$662 + br $__inlined_func$std/array/isSorted<~lib/string/String|null>$643 end local.get $1 i32.const 1 i32.add local.set $1 - br $for-loop|07 + br $for-loop|069 end end global.get $~lib/memory/__stack_pointer @@ -27184,7 +27302,7 @@ i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - block $__inlined_func$std/array/isArraysEqual<~lib/string/String|null>$748 (result i32) + block $__inlined_func$std/array/isArraysEqual<~lib/string/String|null>$728 (result i32) global.get $~lib/memory/__stack_pointer local.get $0 i32.store @@ -27210,367 +27328,121 @@ i32.store local.get $0 call $~lib/array/Array#get:length - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer local.get $2 i32.store local.get $2 call $~lib/array/Array#get:length - local.get $4 + local.get $3 i32.ne if global.get $~lib/memory/__stack_pointer i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 0 - br $__inlined_func$std/array/isArraysEqual<~lib/string/String|null>$748 - end - local.get $0 - local.get $2 - i32.eq - if - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 1 - br $__inlined_func$std/array/isArraysEqual<~lib/string/String|null>$748 - end - i32.const 0 - local.set $1 - loop $for-loop|08 - local.get $1 - local.get $4 - i32.lt_s - if - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 - local.get $0 - local.get $1 - call $~lib/array/Array#__get - local.set $8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=8 - local.get $2 - local.get $1 - call $~lib/array/Array#__get - local.set $9 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16192 - i32.lt_s - br_if $folding-inner2 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $8 - local.get $9 - call $~lib/string/String.__eq - i32.eqz - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - if - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 0 - br $__inlined_func$std/array/isArraysEqual<~lib/string/String|null>$748 - end - local.get $1 - i32.const 1 - i32.add - local.set $1 - br $for-loop|08 - end - end - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 1 - end - i32.eqz - if - i32.const 0 - i32.const 1552 - i32.const 1184 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16192 - i32.lt_s - br_if $folding-inner2 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16192 - i32.lt_s - br_if $folding-inner2 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 16 - call $~lib/rt/itcms/__new - local.tee $9 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $9 - i32.const 0 - i32.store - local.get $9 - i32.const 0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $9 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $9 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $9 - i32.const 0 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 1600 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $1 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=12 - local.get $9 - local.get $1 - i32.store - local.get $9 - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $9 - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $9 - i32.const 1600 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - local.get $9 - i32.const 400 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $9 - i32.store - i32.const 0 - local.set $4 - loop $for-loop|019 - local.get $4 - i32.const 400 - i32.lt_s - if - global.get $~lib/memory/__stack_pointer - local.get $9 - i32.store offset=4 - call $~lib/math/NativeMath.random - f64.const 32 - f64.mul - i32.trunc_sat_f64_s - local.set $10 - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub + i32.add global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16192 - i32.lt_s - br_if $folding-inner2 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer i32.const 0 - i32.store offset=8 - i32.const 11568 - local.set $0 + br $__inlined_func$std/array/isArraysEqual<~lib/string/String|null>$728 + end + local.get $0 + local.get $2 + i32.eq + if global.get $~lib/memory/__stack_pointer - i32.const 11568 - i32.store - i32.const 0 - local.set $1 - loop $for-loop|00 + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 1 + br $__inlined_func$std/array/isArraysEqual<~lib/string/String|null>$728 + end + i32.const 0 + local.set $1 + loop $for-loop|07 + local.get $1 + local.get $3 + i32.lt_s + if + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=8 + local.get $0 local.get $1 - local.get $10 + call $~lib/array/Array#__get + local.set $7 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=8 + local.get $2 + local.get $1 + call $~lib/array/Array#__get + local.set $8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 16192 i32.lt_s + br_if $folding-inner2 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=4 + local.get $7 + local.get $8 + call $~lib/string/String.__eq + i32.eqz + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer if global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - call $~lib/math/NativeMath.random - i32.const 10028 - i32.load - i32.const 1 - i32.shr_u - f64.convert_i32_s - f64.mul - f64.floor - i32.trunc_sat_f64_s - local.set $12 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16192 - i32.lt_s - br_if $folding-inner2 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i32.const 10032 - i32.store - block $__inlined_func$~lib/string/String#charAt$737 - local.get $12 - i32.const 10028 - i32.load - i32.const 1 - i32.shr_u - i32.ge_u - if - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - i32.const 11568 - local.set $2 - br $__inlined_func$~lib/string/String#charAt$737 - end - global.get $~lib/memory/__stack_pointer - i32.const 2 - i32.const 2 - call $~lib/rt/itcms/__new - local.tee $2 - i32.store offset=4 - local.get $2 - local.get $12 - i32.const 1 - i32.shl - i32.const 10032 - i32.add - i32.load16_u - i32.store16 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - end - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=8 - local.get $0 - local.get $2 - call $~lib/string/String.__concat - local.tee $0 - i32.store - local.get $1 - i32.const 1 + i32.const 12 i32.add - local.set $1 - br $for-loop|00 + global.set $~lib/memory/__stack_pointer + i32.const 0 + br $__inlined_func$std/array/isArraysEqual<~lib/string/String|null>$728 end + local.get $1 + i32.const 1 + i32.add + local.set $1 + br $for-loop|07 end - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=8 - local.get $9 - local.get $4 - local.get $0 - call $~lib/array/Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $for-loop|019 end + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.add + global.set $~lib/memory/__stack_pointer + i32.const 1 + end + i32.eqz + if + i32.const 0 + i32.const 1552 + i32.const 1184 + i32.const 3 + call $~lib/builtins/abort + unreachable end global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $9 + call $std/array/createRandomStringArray + local.tee $0 i32.store offset=328 global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $0 i32.store i32.const 1 global.set $~argumentsLength @@ -27592,12 +27464,12 @@ i32.const 11728 i32.store global.get $~lib/memory/__stack_pointer - local.get $9 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 11728 i32.store offset=8 - local.get $9 + local.get $0 i32.const 11728 call $std/array/assertSorted<~lib/array/Array> global.get $~lib/memory/__stack_pointer @@ -27629,20 +27501,20 @@ i32.store local.get $0 i32.load offset=4 - local.set $8 + local.set $3 global.get $~lib/memory/__stack_pointer local.get $0 i32.store local.get $0 i32.load offset=12 - local.set $0 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 11856 i32.store i32.const 0 local.set $1 i32.const 0 - local.set $4 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -27654,11 +27526,11 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinBooleanArray$12 - local.get $0 + block $__inlined_func$~lib/util/string/joinBooleanArray$10 + local.get $2 i32.const 1 i32.sub - local.tee $0 + local.tee $7 i32.const 0 i32.lt_s if @@ -27668,19 +27540,19 @@ global.set $~lib/memory/__stack_pointer i32.const 11568 local.set $2 - br $__inlined_func$~lib/util/string/joinBooleanArray$12 + br $__inlined_func$~lib/util/string/joinBooleanArray$10 end - block $folding-inner07 - local.get $0 + block $folding-inner010 + local.get $7 i32.eqz if i32.const 11792 i32.const 11824 - local.get $8 + local.get $3 i32.load8_u select local.set $2 - br $folding-inner07 + br $folding-inner010 end global.get $~lib/memory/__stack_pointer i32.const 11856 @@ -27690,34 +27562,34 @@ i32.load i32.const 1 i32.shr_u - local.tee $9 + local.tee $8 i32.const 5 i32.add - local.get $0 + local.get $7 i32.mul i32.const 5 i32.add - local.tee $10 + local.tee $9 i32.const 1 i32.shl i32.const 2 call $~lib/rt/itcms/__new local.tee $2 i32.store offset=4 - loop $for-loop|18 + loop $for-loop|111 local.get $0 - local.get $4 - i32.gt_s + local.get $7 + i32.lt_s if - local.get $4 - local.get $8 + local.get $0 + local.get $3 i32.add i32.load8_u - local.tee $11 + local.tee $10 i32.eqz i32.const 4 i32.add - local.set $12 + local.set $11 local.get $2 local.get $1 i32.const 1 @@ -27725,17 +27597,17 @@ i32.add i32.const 11792 i32.const 11824 - local.get $11 + local.get $10 select - local.get $12 + local.get $11 i32.const 1 i32.shl memory.copy local.get $1 - local.get $12 + local.get $11 i32.add local.set $1 - local.get $9 + local.get $8 if local.get $2 local.get $1 @@ -27743,31 +27615,31 @@ i32.shl i32.add i32.const 11856 - local.get $9 + local.get $8 i32.const 1 i32.shl memory.copy local.get $1 - local.get $9 + local.get $8 i32.add local.set $1 end - local.get $4 + local.get $0 i32.const 1 i32.add - local.set $4 - br $for-loop|18 + local.set $0 + br $for-loop|111 end end - local.get $0 - local.get $8 + local.get $3 + local.get $7 i32.add i32.load8_u local.tee $0 i32.eqz i32.const 4 i32.add - local.set $4 + local.set $3 local.get $2 local.get $1 i32.const 1 @@ -27777,15 +27649,15 @@ i32.const 11824 local.get $0 select - local.get $4 + local.get $3 i32.const 1 i32.shl memory.copy local.get $1 - local.get $4 + local.get $3 i32.add local.tee $0 - local.get $10 + local.get $9 i32.lt_s if global.get $~lib/memory/__stack_pointer @@ -27795,13 +27667,13 @@ local.get $0 call $~lib/string/String#substring local.set $2 - br $folding-inner07 + br $folding-inner010 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinBooleanArray$12 + br $__inlined_func$~lib/util/string/joinBooleanArray$10 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -28111,7 +27983,7 @@ i32.const 4 i32.const 13984 call $~lib/rt/__newArray - local.tee $4 + local.tee $3 i32.store offset=360 global.get $~lib/memory/__stack_pointer local.get $0 @@ -28177,9 +28049,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.store offset=8 - local.get $4 + local.get $3 call $~lib/array/Array#toString local.set $0 global.get $~lib/memory/__stack_pointer @@ -28256,12 +28128,14 @@ i32.const 11 i32.const 14256 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=8 i32.const 0 local.set $0 + i32.const 0 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -28274,7 +28148,7 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -28288,17 +28162,17 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 i32.load offset=4 - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 i32.load offset=12 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 11856 i32.store @@ -28313,11 +28187,11 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$741 - local.get $1 + block $__inlined_func$~lib/util/string/joinIntegerArray$721 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $7 i32.const 0 i32.lt_s if @@ -28327,12 +28201,12 @@ global.set $~lib/memory/__stack_pointer i32.const 11568 local.set $2 - br $__inlined_func$~lib/util/string/joinIntegerArray$741 + br $__inlined_func$~lib/util/string/joinIntegerArray$721 end - local.get $1 + local.get $7 i32.eqz if - local.get $4 + local.get $3 i32.load16_u call $~lib/util/number/utoa32 local.set $2 @@ -28340,7 +28214,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$741 + br $__inlined_func$~lib/util/string/joinIntegerArray$721 end global.get $~lib/memory/__stack_pointer i32.const 11856 @@ -28353,7 +28227,7 @@ local.tee $8 i32.const 10 i32.add - local.get $1 + local.get $7 i32.mul i32.const 10 i32.add @@ -28364,18 +28238,18 @@ call $~lib/rt/itcms/__new local.tee $2 i32.store offset=4 - loop $for-loop|03 + loop $for-loop|02 local.get $1 - local.get $3 - i32.gt_s + local.get $7 + i32.lt_s if local.get $2 local.get $0 i32.const 1 i32.shl i32.add - local.get $4 local.get $3 + local.get $1 i32.const 1 i32.shl i32.add @@ -28401,21 +28275,20 @@ i32.add local.set $0 end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|03 + local.set $1 + br $for-loop|02 end end - local.get $9 local.get $2 local.get $0 i32.const 1 i32.shl i32.add - local.get $4 - local.get $1 + local.get $3 + local.get $7 i32.const 1 i32.shl i32.add @@ -28424,7 +28297,8 @@ local.get $0 i32.add local.tee $0 - i32.gt_s + local.get $9 + i32.lt_s if global.get $~lib/memory/__stack_pointer local.get $2 @@ -28437,7 +28311,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$741 + br $__inlined_func$~lib/util/string/joinIntegerArray$721 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -28472,14 +28346,14 @@ i32.const 39 i32.const 14336 call $~lib/rt/__newArray - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=8 i32.const 0 local.set $0 i32.const 0 - local.set $3 + local.set $1 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -28492,7 +28366,7 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store global.get $~lib/memory/__stack_pointer i32.const 4 @@ -28506,17 +28380,17 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 i32.load offset=4 - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store - local.get $1 + local.get $2 i32.load offset=12 - local.set $1 + local.set $2 global.get $~lib/memory/__stack_pointer i32.const 11856 i32.store @@ -28531,11 +28405,11 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$742 - local.get $1 + block $__inlined_func$~lib/util/string/joinIntegerArray$722 + local.get $2 i32.const 1 i32.sub - local.tee $1 + local.tee $7 i32.const 0 i32.lt_s if @@ -28545,12 +28419,12 @@ global.set $~lib/memory/__stack_pointer i32.const 11568 local.set $2 - br $__inlined_func$~lib/util/string/joinIntegerArray$742 + br $__inlined_func$~lib/util/string/joinIntegerArray$722 end - local.get $1 + local.get $7 i32.eqz if - local.get $4 + local.get $3 i32.load16_s call $~lib/util/number/itoa32 local.set $2 @@ -28558,7 +28432,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$742 + br $__inlined_func$~lib/util/string/joinIntegerArray$722 end global.get $~lib/memory/__stack_pointer i32.const 11856 @@ -28571,7 +28445,7 @@ local.tee $8 i32.const 11 i32.add - local.get $1 + local.get $7 i32.mul i32.const 11 i32.add @@ -28582,18 +28456,18 @@ call $~lib/rt/itcms/__new local.tee $2 i32.store offset=4 - loop $for-loop|05 + loop $for-loop|04 local.get $1 - local.get $3 - i32.gt_s + local.get $7 + i32.lt_s if local.get $2 local.get $0 i32.const 1 i32.shl i32.add - local.get $4 local.get $3 + local.get $1 i32.const 1 i32.shl i32.add @@ -28619,21 +28493,20 @@ i32.add local.set $0 end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|05 + local.set $1 + br $for-loop|04 end end - local.get $9 local.get $2 local.get $0 i32.const 1 i32.shl i32.add - local.get $4 - local.get $1 + local.get $3 + local.get $7 i32.const 1 i32.shl i32.add @@ -28642,7 +28515,8 @@ local.get $0 i32.add local.tee $0 - i32.gt_s + local.get $9 + i32.lt_s if global.get $~lib/memory/__stack_pointer local.get $2 @@ -28655,7 +28529,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$742 + br $__inlined_func$~lib/util/string/joinIntegerArray$722 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -28823,7 +28697,7 @@ i32.store local.get $0 i32.load offset=4 - local.set $1 + local.set $3 global.get $~lib/memory/__stack_pointer local.get $0 i32.store @@ -28834,9 +28708,9 @@ i32.const 11856 i32.store i32.const 0 - local.set $0 + local.set $1 i32.const 0 - local.set $3 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.sub @@ -28848,11 +28722,11 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$13 + block $__inlined_func$~lib/util/string/joinIntegerArray$11 local.get $2 i32.const 1 i32.sub - local.tee $4 + local.tee $7 i32.const 0 i32.lt_s if @@ -28862,17 +28736,17 @@ global.set $~lib/memory/__stack_pointer i32.const 11568 local.set $2 - br $__inlined_func$~lib/util/string/joinIntegerArray$13 + br $__inlined_func$~lib/util/string/joinIntegerArray$11 end - block $folding-inner09 - local.get $4 + block $folding-inner012 + local.get $7 i32.eqz if block $__inlined_func$~lib/util/number/itoa64$4 (result i32) - local.get $1 + local.get $3 i64.load i64.extend32_s - local.set $5 + local.set $4 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -28884,7 +28758,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - local.get $5 + local.get $4 i64.eqz if global.get $~lib/memory/__stack_pointer @@ -28895,65 +28769,65 @@ br $__inlined_func$~lib/util/number/itoa64$4 end i64.const 0 - local.get $5 + local.get $4 i64.sub - local.get $5 - local.get $5 + local.get $4 + local.get $4 i64.const 63 i64.shr_u i32.wrap_i64 i32.const 1 i32.shl - local.tee $0 + local.tee $1 select - local.tee $5 + local.tee $4 i64.const 4294967295 i64.le_u if global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i32.wrap_i64 - local.tee $1 + local.tee $2 i32.const 100000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 100 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 10 i32.ge_u i32.const 1 i32.add else - local.get $1 + local.get $2 i32.const 10000 i32.ge_u i32.const 3 i32.add - local.get $1 + local.get $2 i32.const 1000 i32.ge_u i32.add end else - local.get $1 + local.get $2 i32.const 10000000 i32.lt_u if (result i32) - local.get $1 + local.get $2 i32.const 1000000 i32.ge_u i32.const 6 i32.add else - local.get $1 + local.get $2 i32.const 1000000000 i32.ge_u i32.const 8 i32.add - local.get $1 + local.get $2 i32.const 100000000 i32.ge_u i32.add @@ -28962,89 +28836,89 @@ local.tee $3 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add i32.const 2 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store local.get $0 - local.get $2 - i32.add local.get $1 + i32.add + local.get $2 local.get $3 call $~lib/util/number/utoa32_dec_lut else global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $4 i64.const 1000000000000000 i64.lt_u if (result i32) - local.get $5 + local.get $4 i64.const 1000000000000 i64.lt_u if (result i32) - local.get $5 + local.get $4 i64.const 100000000000 i64.ge_u i32.const 10 i32.add - local.get $5 + local.get $4 i64.const 10000000000 i64.ge_u i32.add else - local.get $5 + local.get $4 i64.const 100000000000000 i64.ge_u i32.const 13 i32.add - local.get $5 + local.get $4 i64.const 10000000000000 i64.ge_u i32.add end else - local.get $5 + local.get $4 i64.const 100000000000000000 i64.lt_u if (result i32) - local.get $5 + local.get $4 i64.const 10000000000000000 i64.ge_u i32.const 16 i32.add else - local.get $5 + local.get $4 i64.const -8446744073709551616 i64.ge_u i32.const 18 i32.add - local.get $5 + local.get $4 i64.const 1000000000000000000 i64.ge_u i32.add end end - local.tee $1 + local.tee $2 i32.const 1 i32.shl - local.get $0 + local.get $1 i32.add i32.const 2 call $~lib/rt/itcms/__new - local.tee $2 + local.tee $0 i32.store local.get $0 - local.get $2 - i32.add - local.get $5 local.get $1 + i32.add + local.get $4 + local.get $2 call $~lib/util/number/utoa64_dec_lut end - local.get $0 + local.get $1 if - local.get $2 + local.get $0 i32.const 45 i32.store16 end @@ -29052,10 +28926,10 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - local.get $2 + local.get $0 end local.set $2 - br $folding-inner09 + br $folding-inner012 end global.get $~lib/memory/__stack_pointer i32.const 11856 @@ -29068,7 +28942,7 @@ local.tee $8 i32.const 21 i32.add - local.get $4 + local.get $7 i32.mul i32.const 21 i32.add @@ -29079,30 +28953,30 @@ call $~lib/rt/itcms/__new local.tee $2 i32.store offset=4 - loop $for-loop|010 - local.get $3 - local.get $4 + loop $for-loop|015 + local.get $0 + local.get $7 i32.lt_s if local.get $2 - local.get $0 + local.get $1 i32.const 1 i32.shl i32.add - local.get $1 local.get $3 + local.get $0 i32.const 3 i32.shl i32.add i64.load call $~lib/util/number/itoa_buffered - local.get $0 + local.get $1 i32.add - local.set $0 + local.set $1 local.get $8 if local.get $2 - local.get $0 + local.get $1 i32.const 1 i32.shl i32.add @@ -29111,35 +28985,35 @@ i32.const 1 i32.shl memory.copy - local.get $0 + local.get $1 local.get $8 i32.add - local.set $0 + local.set $1 end - local.get $3 + local.get $0 i32.const 1 i32.add - local.set $3 - br $for-loop|010 + local.set $0 + br $for-loop|015 end end - local.get $9 local.get $2 - local.get $0 + local.get $1 i32.const 1 i32.shl i32.add - local.get $1 - local.get $4 + local.get $3 + local.get $7 i32.const 3 i32.shl i32.add i64.load call $~lib/util/number/itoa_buffered - local.get $0 + local.get $1 i32.add local.tee $0 - i32.gt_s + local.get $9 + i32.lt_s if global.get $~lib/memory/__stack_pointer local.get $2 @@ -29148,13 +29022,13 @@ local.get $0 call $~lib/string/String#substring local.set $2 - br $folding-inner09 + br $folding-inner012 end global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$13 + br $__inlined_func$~lib/util/string/joinIntegerArray$11 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -29324,7 +29198,7 @@ i32.const 0 i32.const 20 memory.fill - block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array>$14 + block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array>$12 local.get $1 i32.const 1 i32.sub @@ -29338,7 +29212,7 @@ global.set $~lib/memory/__stack_pointer i32.const 11568 local.set $2 - br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array>$14 + br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array>$12 end local.get $1 i32.eqz @@ -29363,7 +29237,7 @@ i32.const 20 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array>$14 + br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array>$12 end i32.const 11568 local.set $2 @@ -29377,8 +29251,8 @@ i32.load i32.const 1 i32.shr_u - local.set $4 - loop $for-loop|011 + local.set $7 + loop $for-loop|016 local.get $0 local.get $1 i32.lt_s @@ -29413,7 +29287,7 @@ local.tee $2 i32.store offset=8 end - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer local.get $2 @@ -29432,7 +29306,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|011 + br $for-loop|016 end end global.get $~lib/memory/__stack_pointer @@ -29577,7 +29451,7 @@ i32.const 0 i32.const 20 memory.fill - block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array>$15 + block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array>$13 local.get $1 i32.const 1 i32.sub @@ -29591,7 +29465,7 @@ global.set $~lib/memory/__stack_pointer i32.const 11568 local.set $2 - br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array>$15 + br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array>$13 end local.get $1 i32.eqz @@ -29616,7 +29490,7 @@ i32.const 20 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array>$15 + br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array>$13 end i32.const 11568 local.set $2 @@ -29630,8 +29504,8 @@ i32.load i32.const 1 i32.shr_u - local.set $4 - loop $for-loop|016 + local.set $7 + loop $for-loop|017 local.get $0 local.get $1 i32.lt_s @@ -29666,7 +29540,7 @@ local.tee $2 i32.store offset=8 end - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer local.get $2 @@ -29685,7 +29559,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|016 + br $for-loop|017 end end global.get $~lib/memory/__stack_pointer @@ -29834,7 +29708,7 @@ i32.const 0 i32.const 20 memory.fill - block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>>$16 + block $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>>$14 local.get $1 i32.const 1 i32.sub @@ -29848,7 +29722,7 @@ global.set $~lib/memory/__stack_pointer i32.const 11568 local.set $2 - br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>>$16 + br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>>$14 end local.get $1 i32.eqz @@ -29873,7 +29747,7 @@ i32.const 20 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>>$16 + br $__inlined_func$~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>>$14 end i32.const 11568 local.set $2 @@ -29887,8 +29761,8 @@ i32.load i32.const 1 i32.shr_u - local.set $4 - loop $for-loop|017 + local.set $7 + loop $for-loop|018 local.get $0 local.get $1 i32.lt_s @@ -29923,7 +29797,7 @@ local.tee $2 i32.store offset=8 end - local.get $4 + local.get $7 if global.get $~lib/memory/__stack_pointer local.get $2 @@ -29942,7 +29816,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|017 + br $for-loop|018 end end global.get $~lib/memory/__stack_pointer @@ -30165,7 +30039,7 @@ i32.store local.get $1 i32.load offset=4 - local.set $3 + local.set $7 global.get $~lib/memory/__stack_pointer local.get $1 i32.store @@ -30176,20 +30050,20 @@ local.set $1 i32.const 0 local.set $0 - loop $for-loop|023 + loop $for-loop|021 local.get $0 local.get $8 i32.lt_s if - local.get $3 + local.get $7 local.get $0 i32.const 2 i32.shl i32.add i32.load - local.tee $4 + local.tee $3 if (result i32) - local.get $4 + local.get $3 i32.load offset=12 else i32.const 0 @@ -30201,7 +30075,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|023 + br $for-loop|021 end end global.get $~lib/memory/__stack_pointer @@ -30238,14 +30112,14 @@ i32.const 0 local.set $0 i32.const 0 - local.set $4 - loop $for-loop|124 - local.get $4 + local.set $3 + loop $for-loop|122 + local.get $3 local.get $8 i32.lt_s if + local.get $7 local.get $3 - local.get $4 i32.const 2 i32.shl i32.add @@ -30268,16 +30142,16 @@ i32.add local.set $0 end - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 - br $for-loop|124 + local.set $3 + br $for-loop|122 end end i32.const 0 local.set $0 - loop $for-loop|225 + loop $for-loop|223 local.get $0 local.get $1 i32.lt_s @@ -30295,7 +30169,7 @@ i32.const 1 i32.add local.set $0 - br $for-loop|225 + br $for-loop|223 end end global.get $~lib/memory/__stack_pointer @@ -30480,21 +30354,21 @@ i32.const 29 i32.const 0 call $~lib/rt/__newArray - local.tee $3 + local.tee $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store - local.get $3 + local.get $7 i32.load offset=4 local.set $8 i32.const 0 - local.set $4 - loop $for-loop|026 + local.set $3 + loop $for-loop|024 global.get $~lib/memory/__stack_pointer local.get $1 i32.store - local.get $4 + local.get $3 local.get $2 local.get $1 i32.load offset=12 @@ -30509,7 +30383,7 @@ local.get $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $3 i32.const 2 i32.shl local.tee $9 @@ -30526,7 +30400,7 @@ global.set $~argumentsLength global.get $~lib/memory/__stack_pointer local.get $10 - local.get $4 + local.get $3 local.get $1 i32.const 15984 i32.load @@ -30538,15 +30412,15 @@ i32.add local.get $10 i32.store - local.get $3 + local.get $7 local.get $10 i32.const 1 call $~lib/rt/itcms/__link - local.get $4 + local.get $3 i32.const 1 i32.add - local.set $4 - br $for-loop|026 + local.set $3 + br $for-loop|024 end end global.get $~lib/memory/__stack_pointer @@ -30554,9 +30428,9 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $3 + local.get $7 i32.store - local.get $3 + local.get $7 call $~lib/array/Array<~lib/array/Array>#flat local.tee $0 i32.store offset=440 @@ -30651,12 +30525,12 @@ i32.const 0 i32.gt_s if - loop $while-continue|028 + loop $while-continue|026 global.get $~lib/rt/itcms/state if call $~lib/rt/itcms/step drop - br $while-continue|028 + br $while-continue|026 end end end diff --git a/tests/compiler/std/arraybuffer.debug.wat b/tests/compiler/std/arraybuffer.debug.wat index ed31bd6c6a..e849478fb8 100644 --- a/tests/compiler/std/arraybuffer.debug.wat +++ b/tests/compiler/std/arraybuffer.debug.wat @@ -3024,30 +3024,6 @@ local.tee $this i32.store end - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:dataStart - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:byteLength local.get $length i32.const 1073741820 local.get $alignLog2 @@ -3069,7 +3045,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -3078,7 +3054,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer local.set $4 @@ -3091,7 +3067,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer call $~lib/arraybuffer/ArrayBufferView#set:dataStart @@ -3099,7 +3075,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $length call $~lib/arraybuffer/ArrayBufferView#set:byteLength @@ -3215,30 +3191,6 @@ local.tee $this i32.store end - local.get $this - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - call $~lib/dataview/DataView#set:buffer - local.get $this - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - call $~lib/dataview/DataView#set:dataStart - local.get $this - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - call $~lib/dataview/DataView#set:byteLength local.get $byteLength i32.const 1073741820 i32.gt_u diff --git a/tests/compiler/std/arraybuffer.release.wat b/tests/compiler/std/arraybuffer.release.wat index 19c0a0192a..8418550f29 100644 --- a/tests/compiler/std/arraybuffer.release.wat +++ b/tests/compiler/std/arraybuffer.release.wat @@ -113,7 +113,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$185 + block $__inlined_func$~lib/rt/itcms/Object#unlink$179 local.get $0 i32.load offset=4 i32.const -4 @@ -137,7 +137,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$185 + br $__inlined_func$~lib/rt/itcms/Object#unlink$179 end local.get $0 i32.load offset=8 @@ -1779,27 +1779,6 @@ local.tee $0 i32.store end - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 i32.const 1073741820 local.get $1 i32.shr_u @@ -1820,10 +1799,10 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $1 - i32.store offset=8 + i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=12 @@ -1835,13 +1814,13 @@ call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 local.get $2 i32.store offset=8 @@ -2347,27 +2326,6 @@ local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store - local.get $2 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 local.get $0 diff --git a/tests/compiler/std/dataview.debug.wat b/tests/compiler/std/dataview.debug.wat index 9b9e4e7e62..0a9c2964f8 100644 --- a/tests/compiler/std/dataview.debug.wat +++ b/tests/compiler/std/dataview.debug.wat @@ -2671,30 +2671,6 @@ local.tee $this i32.store end - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:dataStart - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:byteLength local.get $length i32.const 1073741820 local.get $alignLog2 @@ -2716,7 +2692,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -2725,7 +2701,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer local.set $4 @@ -2738,7 +2714,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer call $~lib/arraybuffer/ArrayBufferView#set:dataStart @@ -2746,7 +2722,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $length call $~lib/arraybuffer/ArrayBufferView#set:byteLength @@ -2865,30 +2841,6 @@ local.tee $this i32.store end - local.get $this - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - call $~lib/dataview/DataView#set:buffer - local.get $this - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - call $~lib/dataview/DataView#set:dataStart - local.get $this - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=4 - local.get $5 - i32.const 0 - call $~lib/dataview/DataView#set:byteLength local.get $byteLength i32.const 1073741820 i32.gt_u diff --git a/tests/compiler/std/dataview.release.wat b/tests/compiler/std/dataview.release.wat index d1290df97c..d19ffaa90e 100644 --- a/tests/compiler/std/dataview.release.wat +++ b/tests/compiler/std/dataview.release.wat @@ -121,7 +121,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$221 + block $__inlined_func$~lib/rt/itcms/Object#unlink$217 local.get $0 i32.load offset=4 i32.const -4 @@ -145,7 +145,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$221 + br $__inlined_func$~lib/rt/itcms/Object#unlink$217 end local.get $0 i32.load offset=8 @@ -1705,24 +1705,6 @@ local.tee $3 i32.store global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=4 - local.get $3 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=4 - local.get $3 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $3 - i32.store offset=4 - local.get $3 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer local.get $0 i32.store offset=4 local.get $0 @@ -3039,11 +3021,11 @@ i32.const 16 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -3083,200 +3065,175 @@ i32.const 1456 global.set $~lib/rt/itcms/fromSpace global.get $~lib/memory/__stack_pointer - block $__inlined_func$~lib/typedarray/Uint8Array#constructor (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1772 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i32.const 12 + i32.const 4 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1772 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + local.get $0 + i32.eqz + if global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - block $folding-inner00 - global.get $~lib/memory/__stack_pointer - i32.const 1772 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.const 4 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1772 - i32.lt_s - br_if $folding-inner00 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - local.get $0 - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.const 3 - call $~lib/rt/itcms/__new - local.tee $0 - i32.store - end - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $2 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=12 - local.get $0 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - local.get $2 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 8 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - i32.store - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $0 - br $__inlined_func$~lib/typedarray/Uint8Array#constructor - end - br $folding-inner1 + i32.const 12 + i32.const 3 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store end - local.tee $1 + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $3 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $3 + i32.store offset=12 + local.get $0 + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#set:buffer + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=8 + local.get $0 + local.get $3 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=8 + local.get $0 + i32.const 8 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $0 + i32.store + global.get $~lib/memory/__stack_pointer + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 i32.const 246 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 1 i32.const 224 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 2 i32.const 88 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 3 i32.const 159 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 4 i32.const 130 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 5 i32.const 101 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 6 i32.const 67 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 7 i32.const 95 call $~lib/typedarray/Uint8Array#__set global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load - local.tee $2 + local.tee $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.set $3 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 - local.get $2 - local.get $3 local.get $1 + local.get $3 + local.get $0 i32.load offset=8 call $~lib/dataview/DataView#constructor - local.tee $0 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -3291,9 +3248,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -3308,9 +3265,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -3325,9 +3282,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -3342,9 +3299,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -3359,9 +3316,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -3376,9 +3333,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -3393,9 +3350,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -3410,9 +3367,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -3427,9 +3384,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -3444,9 +3401,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getFloat64 f64.const 7936550095674706383278551e126 @@ -3460,9 +3417,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getFloat64 f64.const -411777475818852546741639e241 @@ -3476,9 +3433,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt8 i32.const -10 @@ -3492,9 +3449,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getInt8 i32.const -32 @@ -3508,9 +3465,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 2 call $~lib/dataview/DataView#getInt8 i32.const 88 @@ -3524,9 +3481,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 3 call $~lib/dataview/DataView#getInt8 i32.const -97 @@ -3540,9 +3497,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 4 call $~lib/dataview/DataView#getInt8 i32.const -126 @@ -3556,9 +3513,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 5 call $~lib/dataview/DataView#getInt8 i32.const 101 @@ -3572,9 +3529,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 6 call $~lib/dataview/DataView#getInt8 i32.const 67 @@ -3588,9 +3545,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 7 call $~lib/dataview/DataView#getInt8 i32.const 95 @@ -3604,9 +3561,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3623,9 +3580,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3642,9 +3599,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3661,9 +3618,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3680,9 +3637,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3699,9 +3656,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 5 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3718,9 +3675,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 6 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -3737,9 +3694,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3756,9 +3713,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3775,9 +3732,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3794,9 +3751,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3813,9 +3770,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3832,9 +3789,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 5 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3851,9 +3808,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 6 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -3870,9 +3827,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3887,9 +3844,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3904,9 +3861,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3921,9 +3878,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3938,9 +3895,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -3955,9 +3912,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3972,9 +3929,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -3989,9 +3946,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -4006,9 +3963,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -4023,9 +3980,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -4040,9 +3997,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getInt64 i64.const 6864441868736323830 @@ -4056,9 +4013,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt64 i64.const -657428103485373601 @@ -4072,9 +4029,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint8 i32.const 246 @@ -4088,9 +4045,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getUint8 i32.const 224 @@ -4104,9 +4061,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 2 call $~lib/dataview/DataView#getUint8 i32.const 88 @@ -4120,9 +4077,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 3 call $~lib/dataview/DataView#getUint8 i32.const 159 @@ -4136,9 +4093,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 4 call $~lib/dataview/DataView#getUint8 i32.const 130 @@ -4152,9 +4109,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 5 call $~lib/dataview/DataView#getUint8 i32.const 101 @@ -4168,9 +4125,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 6 call $~lib/dataview/DataView#getUint8 i32.const 67 @@ -4184,9 +4141,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 7 call $~lib/dataview/DataView#getUint8 i32.const 95 @@ -4200,9 +4157,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -4219,9 +4176,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -4238,9 +4195,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -4257,9 +4214,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -4276,9 +4233,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -4295,9 +4252,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 5 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -4314,9 +4271,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 6 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -4333,9 +4290,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -4352,9 +4309,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -4371,9 +4328,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -4390,9 +4347,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -4409,9 +4366,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -4428,9 +4385,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 5 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -4447,9 +4404,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 6 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -4466,9 +4423,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -4483,9 +4440,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -4500,9 +4457,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -4517,9 +4474,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -4534,9 +4491,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -4551,9 +4508,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -4568,9 +4525,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -4585,9 +4542,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -4602,9 +4559,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -4619,9 +4576,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -4636,9 +4593,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getUint64 i64.const 6864441868736323830 @@ -4652,9 +4609,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint64 i64.const -657428103485373601 @@ -4668,16 +4625,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 f32.const 1.5976661625240943e-18 i32.const 1 call $~lib/dataview/DataView#setFloat32 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -4692,16 +4649,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 f32.const 1976281973381696323584 i32.const 0 call $~lib/dataview/DataView#setFloat32 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -4716,16 +4673,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 f64.const -1094252199637739024055454e124 i32.const 1 call $~lib/dataview/DataView#setFloat64 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getFloat64 f64.const -1094252199637739024055454e124 @@ -4739,16 +4696,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 f64.const 6.022586634778589e-103 i32.const 0 call $~lib/dataview/DataView#setFloat64 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getFloat64 f64.const 6.022586634778589e-103 @@ -4762,7 +4719,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -4771,14 +4728,14 @@ global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load offset=8 i32.eqz if @@ -4790,9 +4747,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load offset=4 i32.const 108 i32.store8 @@ -4801,9 +4758,9 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt8 i32.const 108 @@ -4817,16 +4774,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const -13360 i32.const 1 call $~lib/dataview/DataView#setInt16 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -4843,16 +4800,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 14689 i32.const 0 call $~lib/dataview/DataView#setInt16 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -4869,16 +4826,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1204680201 i32.const 1 call $~lib/dataview/DataView#setInt32 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -4893,16 +4850,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 660673230 i32.const 0 call $~lib/dataview/DataView#setInt32 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -4917,16 +4874,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i64.const -3290739641816099749 i32.const 1 call $~lib/dataview/DataView#setInt64 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getInt64 i64.const -3290739641816099749 @@ -4940,16 +4897,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i64.const 8178932412950708047 i32.const 0 call $~lib/dataview/DataView#setInt64 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt64 i64.const 8178932412950708047 @@ -4963,7 +4920,7 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -4972,14 +4929,14 @@ global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load offset=8 i32.eqz if @@ -4991,9 +4948,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store - local.get $0 + local.get $1 i32.load offset=4 i32.const 238 i32.store8 @@ -5002,9 +4959,9 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint8 i32.const 238 @@ -5018,16 +4975,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 58856 i32.const 1 call $~lib/dataview/DataView#setUint16 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -5044,16 +5001,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 60400 i32.const 0 call $~lib/dataview/DataView#setUint16 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -5070,16 +5027,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const -846805744 i32.const 1 call $~lib/dataview/DataView#setUint32 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -5094,16 +5051,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const -1510791631 i32.const 0 call $~lib/dataview/DataView#setUint32 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -5118,16 +5075,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i64.const 2334704782995986958 i32.const 1 call $~lib/dataview/DataView#setUint64 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getUint64 i64.const 2334704782995986958 @@ -5141,16 +5098,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i64.const -7123186897289856329 i32.const 0 call $~lib/dataview/DataView#setUint64 global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint64 i64.const -7123186897289856329 @@ -5165,12 +5122,12 @@ end global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.load - local.tee $1 + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 8 @@ -5179,14 +5136,14 @@ global.get $~lib/memory/__stack_pointer i32.const 1772 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store - local.get $1 + local.get $0 i32.const 20 i32.sub i32.load offset=16 @@ -5195,23 +5152,23 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.const 0 local.get $2 call $~lib/dataview/DataView#constructor - local.set $1 + local.set $0 global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset if i32.const 0 @@ -5222,9 +5179,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $0 i32.store offset=4 - local.get $1 + local.get $0 i32.load offset=8 i32.const 8 i32.ne diff --git a/tests/compiler/std/date.debug.wat b/tests/compiler/std/date.debug.wat index f67503e5e9..1f7888e9e8 100644 --- a/tests/compiler/std/date.debug.wat +++ b/tests/compiler/std/date.debug.wat @@ -3854,30 +3854,6 @@ local.get $2 local.get $epochMillis call $~lib/date/Date#set:epochMillis - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - call $~lib/date/Date#set:year - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - call $~lib/date/Date#set:month - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 - i32.const 0 - call $~lib/date/Date#set:day local.get $epochMillis call $~lib/date/invalidDate if diff --git a/tests/compiler/std/date.release.wat b/tests/compiler/std/date.release.wat index 4b706f0de3..8000608a6e 100644 --- a/tests/compiler/std/date.release.wat +++ b/tests/compiler/std/date.release.wat @@ -504,7 +504,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$376 + block $__inlined_func$~lib/rt/itcms/Object#unlink$373 local.get $0 i32.load offset=4 i32.const -4 @@ -528,7 +528,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$376 + br $__inlined_func$~lib/rt/itcms/Object#unlink$373 end local.get $0 i32.load offset=8 @@ -2548,24 +2548,6 @@ local.get $1 local.get $0 i64.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=8 local.get $0 i64.const -8640000000000000 i64.lt_s @@ -3310,7 +3292,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store - block $__inlined_func$~lib/string/String#padStart$384 + block $__inlined_func$~lib/string/String#padStart$381 i32.const 1868 i32.load i32.const -2 @@ -3329,7 +3311,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/string/String#padStart$384 + br $__inlined_func$~lib/string/String#padStart$381 end global.get $~lib/memory/__stack_pointer local.get $5 @@ -3766,7 +3748,7 @@ global.get $~lib/memory/__stack_pointer local.get $4 i32.store - block $__inlined_func$~lib/string/String#concat$385 + block $__inlined_func$~lib/string/String#concat$382 local.get $4 i32.const 20 i32.sub @@ -3785,7 +3767,7 @@ global.set $~lib/memory/__stack_pointer i32.const 3456 local.set $1 - br $__inlined_func$~lib/string/String#concat$385 + br $__inlined_func$~lib/string/String#concat$382 end global.get $~lib/memory/__stack_pointer local.get $1 @@ -5120,7 +5102,7 @@ i32.load16_u local.set $0 loop $while-continue|0 - block $__inlined_func$~lib/util/string/isSpace$164 (result i32) + block $__inlined_func$~lib/util/string/isSpace$161 (result i32) local.get $0 i32.const 128 i32.or @@ -5135,7 +5117,7 @@ local.get $0 i32.const 5760 i32.lt_u - br_if $__inlined_func$~lib/util/string/isSpace$164 + br_if $__inlined_func$~lib/util/string/isSpace$161 drop i32.const 1 local.get $0 @@ -5143,7 +5125,7 @@ i32.add i32.const 10 i32.le_u - br_if $__inlined_func$~lib/util/string/isSpace$164 + br_if $__inlined_func$~lib/util/string/isSpace$161 drop block $break|0 block $case0|0 @@ -5178,7 +5160,7 @@ br $break|0 end i32.const 1 - br $__inlined_func$~lib/util/string/isSpace$164 + br $__inlined_func$~lib/util/string/isSpace$161 end i32.const 0 end @@ -5426,7 +5408,7 @@ global.get $~lib/memory/__stack_pointer local.get $0 i32.store - block $__inlined_func$~lib/rt/itcms/__renew$363 + block $__inlined_func$~lib/rt/itcms/__renew$360 i32.const 1073741820 local.get $2 i32.const 1 @@ -5469,7 +5451,7 @@ i32.store offset=16 local.get $2 local.set $1 - br $__inlined_func$~lib/rt/itcms/__renew$363 + br $__inlined_func$~lib/rt/itcms/__renew$360 end local.get $3 local.get $4 @@ -6173,7 +6155,7 @@ global.get $~lib/memory/__stack_pointer local.get $2 i32.store - block $__inlined_func$~lib/string/String#charCodeAt$386 + block $__inlined_func$~lib/string/String#charCodeAt$383 local.get $3 local.get $2 i32.const 20 @@ -6189,7 +6171,7 @@ global.set $~lib/memory/__stack_pointer i32.const -1 local.set $0 - br $__inlined_func$~lib/string/String#charCodeAt$386 + br $__inlined_func$~lib/string/String#charCodeAt$383 end local.get $2 local.get $3 @@ -6440,7 +6422,7 @@ call $~lib/util/string/strtol local.set $6 global.get $~lib/memory/__stack_pointer - block $__inlined_func$~lib/string/String#substr$387 (result i32) + block $__inlined_func$~lib/string/String#substr$384 (result i32) global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=44 @@ -6503,7 +6485,7 @@ i32.add global.set $~lib/memory/__stack_pointer i32.const 3456 - br $__inlined_func$~lib/string/String#substr$387 + br $__inlined_func$~lib/string/String#substr$384 end global.get $~lib/memory/__stack_pointer local.get $8 @@ -6553,7 +6535,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1872 i32.store - block $__inlined_func$~lib/string/String#padEnd$388 + block $__inlined_func$~lib/string/String#padEnd$385 i32.const 1868 i32.load i32.const -2 @@ -6569,7 +6551,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/string/String#padEnd$388 + br $__inlined_func$~lib/string/String#padEnd$385 end global.get $~lib/memory/__stack_pointer i32.const 6 diff --git a/tests/compiler/std/map.debug.wat b/tests/compiler/std/map.debug.wat index da8784b71b..88ecea767b 100644 --- a/tests/compiler/std/map.debug.wat +++ b/tests/compiler/std/map.debug.wat @@ -2369,16 +2369,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -2499,6 +2489,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -2649,16 +2649,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $"~lib/map/Map#set:buckets" (param $this i32) (param $buckets i32) local.get $this local.get $buckets @@ -2687,16 +2677,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $"~lib/map/Map#get:buckets" (param $this i32) (result i32) local.get $this i32.load @@ -2748,6 +2728,16 @@ local.get $taggedNext i32.store offset=4 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -2867,6 +2857,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $"~lib/map/Map#set:buckets" (param $this i32) (param $buckets i32) local.get $this local.get $buckets @@ -2895,16 +2895,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -3026,6 +3016,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -3086,16 +3086,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $"~lib/map/Map#get:buckets" (param $this i32) (result i32) local.get $this i32.load @@ -3147,6 +3137,16 @@ local.get $taggedNext i32.store offset=4 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $"~lib/map/Map#set:buckets" (param $this i32) (param $buckets i32) local.get $this local.get $buckets @@ -3175,16 +3175,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -3305,6 +3295,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -3365,16 +3365,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $"~lib/map/Map#get:buckets" (param $this i32) (result i32) local.get $this i32.load @@ -3426,6 +3416,16 @@ local.get $taggedNext i32.store offset=4 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $"~lib/map/Map#set:buckets" (param $this i32) (param $buckets i32) local.get $this local.get $buckets @@ -3454,16 +3454,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -3585,6 +3575,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -3645,16 +3645,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $"~lib/map/Map#get:buckets" (param $this i32) (result i32) local.get $this i32.load @@ -3706,6 +3696,16 @@ local.get $taggedNext i32.store offset=4 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $"~lib/map/Map#set:buckets" (param $this i32) (param $buckets i32) local.get $this local.get $buckets @@ -3734,16 +3734,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -3863,6 +3853,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -3923,16 +3923,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $"~lib/map/Map#get:buckets" (param $this i32) (result i32) local.get $this i32.load @@ -3984,6 +3974,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $"~lib/map/Map#set:buckets" (param $this i32) (param $buckets i32) local.get $this local.get $buckets @@ -4012,16 +4012,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i64) (result i32) (local $key|1 i64) (local $h i32) @@ -4158,6 +4148,16 @@ local.get $taggedNext i32.store offset=12 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -4218,16 +4218,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $"~lib/map/Map#get:buckets" (param $this i32) (result i32) local.get $this i32.load @@ -4279,6 +4269,16 @@ local.get $taggedNext i32.store offset=16 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $"~lib/map/Map#set:buckets" (param $this i32) (param $buckets i32) local.get $this local.get $buckets @@ -4307,16 +4307,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i64) (result i32) (local $key|1 i64) (local $h i32) @@ -4453,6 +4443,16 @@ local.get $taggedNext i32.store offset=12 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -4513,16 +4513,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $"~lib/map/Map#get:buckets" (param $this i32) (result i32) local.get $this i32.load @@ -4574,6 +4564,16 @@ local.get $taggedNext i32.store offset=16 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $"~lib/map/Map#set:buckets" (param $this i32) (param $buckets i32) local.get $this local.get $buckets @@ -4602,16 +4602,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key f32) (result i32) (local $key|1 i32) (local $len i32) @@ -4732,6 +4722,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -4792,16 +4792,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $"~lib/map/Map#get:buckets" (param $this i32) (result i32) local.get $this i32.load @@ -4853,6 +4843,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $"~lib/map/Map#set:buckets" (param $this i32) (param $buckets i32) local.get $this local.get $buckets @@ -4881,16 +4881,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key f64) (result i32) (local $key|1 i64) (local $h i32) @@ -5028,6 +5018,16 @@ local.get $taggedNext i32.store offset=12 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -5088,16 +5088,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $"~lib/map/Map#get:buckets" (param $this i32) (result i32) local.get $this i32.load @@ -5149,6 +5139,16 @@ local.get $taggedNext i32.store offset=16 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/rt/itcms/__collect i32.const 0 drop @@ -5820,22 +5820,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -6449,38 +6433,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 0 @@ -6510,7 +6462,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -6519,7 +6471,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -6532,7 +6484,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -6540,7 +6492,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -6548,7 +6500,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -6906,38 +6858,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -6967,7 +6887,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -6976,7 +6896,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -6989,7 +6909,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -6997,7 +6917,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -7005,7 +6925,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -7298,22 +7218,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -7400,22 +7304,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -9507,22 +9395,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -10138,38 +10010,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 0 @@ -10199,7 +10039,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -10208,7 +10048,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -10221,7 +10061,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -10229,7 +10069,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -10237,7 +10077,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -10633,22 +10473,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -12183,22 +12007,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -12797,53 +12605,21 @@ global.set $~lib/memory/__stack_pointer call $~stack_check global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - local.get $this - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 13 - call $~lib/rt/itcms/__new - local.tee $this - i32.store - end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 + i64.const 0 + i64.store global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength + i64.const 0 + i64.store offset=8 local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 13 + call $~lib/rt/itcms/__new + local.tee $this + i32.store + end local.get $length i32.const 1073741820 i32.const 1 @@ -12873,7 +12649,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -12882,7 +12658,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -12895,7 +12671,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -12903,7 +12679,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -12911,7 +12687,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -13307,22 +13083,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -14855,22 +14615,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -15486,38 +15230,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 1 @@ -15547,7 +15259,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -15556,7 +15268,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -15569,7 +15281,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -15577,7 +15289,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -15585,7 +15297,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -15981,22 +15693,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -18694,22 +18390,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -19321,38 +19001,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -19382,7 +19030,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -19391,7 +19039,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -19404,7 +19052,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -19412,7 +19060,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -19420,7 +19068,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -19816,22 +19464,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -21362,22 +20994,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -21977,50 +21593,18 @@ i64.const 0 i64.store global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - local.get $this - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 22 - call $~lib/rt/itcms/__new - local.tee $this - i32.store - end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ + i64.const 0 + i64.store offset=8 + local.get $this + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 22 + call $~lib/rt/itcms/__new + local.tee $this + i32.store + end local.get $length i32.const 1073741820 i32.const 3 @@ -22050,7 +21634,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -22059,7 +21643,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -22072,7 +21656,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -22080,7 +21664,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -22088,7 +21672,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -22484,22 +22068,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -24039,22 +23607,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -24666,38 +24218,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 3 @@ -24727,7 +24247,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -24736,7 +24256,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -24749,7 +24269,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -24757,7 +24277,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -24765,7 +24285,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -25161,22 +24681,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -26716,22 +26220,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -27343,38 +26831,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -27404,7 +26860,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -27413,7 +26869,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -27426,7 +26882,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -27434,7 +26890,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -27442,7 +26898,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -27838,22 +27294,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -29393,22 +28833,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -30020,38 +29444,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 3 @@ -30081,7 +29473,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -30090,7 +29482,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -30103,7 +29495,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -30111,7 +29503,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -30119,7 +29511,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -30515,22 +29907,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/std/map.release.wat b/tests/compiler/std/map.release.wat index 4148a7ac94..9c3ea4e7c8 100644 --- a/tests/compiler/std/map.release.wat +++ b/tests/compiler/std/map.release.wat @@ -134,7 +134,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$1422 + block $__inlined_func$~lib/rt/itcms/Object#unlink$1346 local.get $0 i32.load offset=4 i32.const -4 @@ -158,7 +158,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$1422 + br $__inlined_func$~lib/rt/itcms/Object#unlink$1346 end local.get $0 i32.load offset=8 @@ -2478,7 +2478,7 @@ select local.set $1 end - block $__inlined_func$~lib/rt/itcms/__renew$1377 + block $__inlined_func$~lib/rt/itcms/__renew$1299 local.get $4 i32.const 20 i32.sub @@ -2496,7 +2496,7 @@ i32.store offset=16 local.get $4 local.set $2 - br $__inlined_func$~lib/rt/itcms/__renew$1377 + br $__inlined_func$~lib/rt/itcms/__renew$1299 end local.get $1 local.get $3 @@ -2671,33 +2671,6 @@ call $~lib/rt/itcms/__new local.tee $1 i32.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store - local.get $1 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=12 local.get $0 i32.const 268435455 i32.gt_u @@ -2722,10 +2695,10 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $2 - i32.store offset=8 + i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $1 - i32.store offset=4 + i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=12 @@ -2737,19 +2710,19 @@ call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.get $1 - i32.store offset=4 + i32.store offset=8 local.get $1 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $1 - i32.store offset=4 + i32.store offset=8 local.get $1 local.get $3 i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $1 - i32.store offset=4 + i32.store offset=8 local.get $1 local.get $0 i32.store offset=12 @@ -3025,18 +2998,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -3207,7 +3168,7 @@ i32.add i32.load local.set $3 - block $"__inlined_func$~lib/map/Map#find$1378" + block $"__inlined_func$~lib/map/Map#find$1301" loop $while-continue|0 local.get $3 if @@ -3231,7 +3192,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $"__inlined_func$~lib/map/Map#find$1378" + br $"__inlined_func$~lib/map/Map#find$1301" end local.get $4 i32.const -2 @@ -4246,6 +4207,7 @@ (local $6 i32) (local $7 i32) (local $8 i32) + (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 24 i32.sub @@ -4278,78 +4240,66 @@ i32.const 24 i32.const 4 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 i32.store - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 100 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -4360,19 +4310,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 10 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -4384,12 +4334,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 10 i32.add i32.ne @@ -4401,17 +4351,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -4424,17 +4374,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 100 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -4446,12 +4396,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 10 i32.add i32.ne @@ -4464,19 +4414,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 20 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -4488,12 +4438,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 20 i32.add i32.ne @@ -4505,17 +4455,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -4528,196 +4478,174 @@ unreachable end global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=16 - local.set $6 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 5 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store - local.get $7 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $2 i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=12 - local.get $6 - i32.const 1073741820 - i32.gt_u - if - i32.const 1456 - i32.const 1728 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $6 - local.get $6 - i32.const 8 - i32.le_u - select - local.tee $0 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $8 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=12 - local.get $7 - local.get $8 - i32.store - local.get $7 - local.get $8 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - local.get $8 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - local.get $0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - i32.const 0 - local.set $0 - loop $for-loop|00 - local.get $3 - local.get $6 - i32.lt_s - if - local.get $5 - local.get $3 - i32.const 12 - i32.mul - i32.add - local.tee $8 + block $"__inlined_func$~lib/map/Map#keys$3" (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner00 + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store + local.get $2 i32.load offset=8 - i32.const 1 - i32.and - i32.eqz + local.set $6 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store + local.get $2 + i32.load offset=16 + local.set $8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 5 + call $~lib/rt/itcms/__new + local.tee $9 + i32.store + local.get $8 + i32.const 1073741820 + i32.gt_u if - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store - local.get $7 - local.get $0 - local.get $8 - i32.load8_s - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 + i32.const 1456 + i32.const 1728 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable end - local.get $3 + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $8 + local.get $8 + i32.const 8 + i32.le_u + select + local.tee $1 i32.const 1 + call $~lib/rt/itcms/__new + local.tee $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $5 + i32.store offset=12 + local.get $9 + local.get $5 + i32.store + local.get $9 + local.get $5 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $1 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $8 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 i32.add - local.set $3 - br $for-loop|00 + global.set $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=4 + loop $for-loop|01 + local.get $3 + local.get $8 + i32.lt_s + if + local.get $6 + local.get $3 + i32.const 12 + i32.mul + i32.add + local.tee $1 + i32.load offset=8 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store + local.get $9 + local.get $0 + local.get $1 + i32.load8_s + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|01 + end + end + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store + local.get $9 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $9 + br $"__inlined_func$~lib/map/Map#keys$3" end + br $folding-inner1 end - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store - local.get $7 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $7 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $"~lib/map/Map#values" - local.tee $0 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -4738,67 +4666,55 @@ i32.const 24 i32.const 7 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $4 local.get $5 + local.get $6 i32.store - local.get $4 local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 i32.const 3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $4 local.get $5 + local.get $6 i32.store offset=8 - local.get $4 local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=16 global.get $~lib/memory/__stack_pointer call $"~lib/map/Map#constructor" @@ -4806,15 +4722,15 @@ i32.store offset=20 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=4 - local.get $7 + local.get $0 call $~lib/array/Array#get:length - local.get $2 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -4828,10 +4744,10 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store - local.get $2 - local.get $7 + local.get $4 + local.get $0 i32.load offset=12 i32.ge_u if @@ -4843,30 +4759,30 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store - local.get $2 - local.get $7 + local.get $4 + local.get $0 i32.load offset=4 i32.add i32.load8_s - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $4 call $~lib/array/Array#__get - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $"~lib/map/Map#has" i32.eqz if @@ -4878,10 +4794,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 - local.get $6 + local.get $2 + local.get $7 i32.const 20 i32.sub call $"~lib/map/Map#has" @@ -4895,33 +4811,33 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 local.get $5 + i32.store offset=4 local.get $5 + local.get $6 + local.get $6 call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer local.get $3 i32.store offset=4 local.get $3 - local.get $6 + local.get $7 i32.const 20 i32.sub - local.tee $5 - local.get $5 + local.tee $6 + local.get $6 call $"~lib/map/Map#set" - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -4949,17 +4865,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|3 - local.get $0 + local.get $1 i32.const 50 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -4971,12 +4887,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 20 i32.add i32.ne @@ -4989,16 +4905,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#delete" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -5008,17 +4924,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|3 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 50 i32.ne @@ -5031,17 +4947,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|4 - local.get $0 + local.get $1 i32.const 50 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -5052,19 +4968,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 10 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -5076,16 +4992,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#delete" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -5095,17 +5011,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|4 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 50 i32.ne @@ -5118,14 +5034,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#clear" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" if i32.const 0 @@ -5757,7 +5673,7 @@ i32.add i32.load local.set $3 - block $"__inlined_func$~lib/map/Map#find$1383" + block $"__inlined_func$~lib/map/Map#find$1306" loop $while-continue|0 local.get $3 if @@ -5781,7 +5697,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $"__inlined_func$~lib/map/Map#find$1383" + br $"__inlined_func$~lib/map/Map#find$1306" end local.get $4 i32.const -2 @@ -6259,6 +6175,7 @@ (local $6 i32) (local $7 i32) (local $8 i32) + (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 24 i32.sub @@ -6291,78 +6208,66 @@ i32.const 24 i32.const 9 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 i32.store - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 100 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -6373,19 +6278,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 10 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -6397,12 +6302,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 10 i32.add i32.ne @@ -6414,17 +6319,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -6437,17 +6342,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 100 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -6459,12 +6364,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 10 i32.add i32.ne @@ -6477,19 +6382,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 20 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -6501,12 +6406,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 20 i32.add i32.ne @@ -6518,17 +6423,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -6541,35 +6446,178 @@ unreachable end global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store + block $"__inlined_func$~lib/map/Map#keys$5" (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner00 + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store + local.get $2 + i32.load offset=8 + local.set $6 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store + local.get $2 + i32.load offset=16 + local.set $8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 10 + call $~lib/rt/itcms/__new + local.tee $9 + i32.store + local.get $8 + i32.const 1073741820 + i32.gt_u + if + i32.const 1456 + i32.const 1728 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $8 + local.get $8 + i32.const 8 + i32.le_u + select + local.tee $1 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $5 + i32.store offset=12 + local.get $9 + local.get $5 + i32.store + local.get $9 + local.get $5 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $1 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $8 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=4 + loop $for-loop|01 + local.get $3 + local.get $8 + i32.lt_s + if + local.get $6 + local.get $3 + i32.const 12 + i32.mul + i32.add + local.tee $1 + i32.load offset=8 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store + local.get $9 + local.get $0 + local.get $1 + i32.load8_u + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|01 + end + end + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store + local.get $9 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $9 + br $"__inlined_func$~lib/map/Map#keys$5" + end + br $folding-inner1 + end + local.tee $0 + i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $5 + local.get $2 + i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=16 - local.set $6 + local.get $2 + call $"~lib/map/Map#values" + local.tee $1 + i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - i32.const 16 + i32.const 12 i32.sub global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -6580,238 +6628,61 @@ i64.const 0 i64.store global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 + i32.const 0 + i32.store offset=8 global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 10 + i32.const 24 + i32.const 11 call $~lib/rt/itcms/__new - local.tee $7 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $5 i32.store offset=4 - local.get $7 - i32.const 0 + i32.const 16 + call $~lib/arraybuffer/ArrayBuffer#constructor + local.set $6 + global.get $~lib/memory/__stack_pointer + local.get $6 + i32.store offset=8 + local.get $5 + local.get $6 i32.store - local.get $7 - i32.const 0 + local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 + local.get $5 i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $5 + i32.const 3 i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $5 i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=12 - local.get $6 - i32.const 1073741820 - i32.gt_u - if - i32.const 1456 - i32.const 1728 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end + i32.const 32 + call $~lib/arraybuffer/ArrayBuffer#constructor + local.set $6 global.get $~lib/memory/__stack_pointer - i32.const 8 local.get $6 + i32.store offset=8 + local.get $5 local.get $6 - i32.const 8 - i32.le_u - select - local.tee $0 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $8 i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=12 - local.get $7 - local.get $8 - i32.store - local.get $7 - local.get $8 + local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - local.get $8 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - local.get $0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $5 i32.store offset=4 - local.get $7 - local.get $6 + local.get $5 + i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - i32.const 16 + i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - i32.const 0 - local.set $0 - loop $for-loop|00 - local.get $3 - local.get $6 - i32.lt_s - if - local.get $5 - local.get $3 - i32.const 12 - i32.mul - i32.add - local.tee $8 - i32.load offset=8 - i32.const 1 - i32.and - i32.eqz - if - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store - local.get $7 - local.get $0 - local.get $8 - i32.load8_u - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $for-loop|00 - end - end - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store - local.get $7 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $1 - call $"~lib/map/Map#values" - local.tee $0 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 24 - i32.const 11 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - i32.const 16 - call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=8 - local.get $4 - local.get $5 - i32.store - local.get $4 - local.get $5 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 3 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - i32.const 32 - call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $5 - i32.store offset=8 - local.get $4 - local.get $5 - i32.store offset=8 - local.get $4 local.get $5 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 4 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer - i32.const 12 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $4 i32.store offset=16 global.get $~lib/memory/__stack_pointer call $"~lib/map/Map#constructor" @@ -6819,15 +6690,15 @@ i32.store offset=20 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=4 - local.get $7 + local.get $0 call $~lib/array/Array#get:length - local.get $2 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -6841,10 +6712,10 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store - local.get $2 - local.get $7 + local.get $4 + local.get $0 i32.load offset=12 i32.ge_u if @@ -6856,30 +6727,30 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store - local.get $2 - local.get $7 + local.get $4 + local.get $0 i32.load offset=4 i32.add i32.load8_u - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $4 call $~lib/array/Array#__get - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $"~lib/map/Map#has" i32.eqz if @@ -6891,10 +6762,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 - local.get $6 + local.get $2 + local.get $7 i32.const 20 i32.sub call $"~lib/map/Map#has" @@ -6908,33 +6779,33 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 local.get $5 + i32.store offset=4 local.get $5 + local.get $6 + local.get $6 call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer local.get $3 i32.store offset=4 local.get $3 - local.get $6 + local.get $7 i32.const 20 i32.sub - local.tee $5 - local.get $5 + local.tee $6 + local.get $6 call $"~lib/map/Map#set" - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -6962,17 +6833,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|3 - local.get $0 + local.get $1 i32.const 50 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -6984,12 +6855,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 20 i32.add i32.ne @@ -7002,16 +6873,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#delete" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -7021,17 +6892,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|3 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 50 i32.ne @@ -7044,17 +6915,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|4 - local.get $0 + local.get $1 i32.const 50 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -7065,19 +6936,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 10 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -7089,16 +6960,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#delete" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -7108,17 +6979,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|4 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 50 i32.ne @@ -7131,14 +7002,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#clear" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" if i32.const 0 @@ -7947,7 +7818,7 @@ i32.add i32.load local.set $3 - block $"__inlined_func$~lib/map/Map#find$1388" + block $"__inlined_func$~lib/map/Map#find$1311" loop $while-continue|0 local.get $3 if @@ -7971,7 +7842,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $"__inlined_func$~lib/map/Map#find$1388" + br $"__inlined_func$~lib/map/Map#find$1311" end local.get $4 i32.const -2 @@ -8448,6 +8319,7 @@ (local $6 i32) (local $7 i32) (local $8 i32) + (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 24 i32.sub @@ -8480,78 +8352,66 @@ i32.const 24 i32.const 12 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 i32.store - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 100 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -8562,19 +8422,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 10 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -8586,12 +8446,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 10 i32.add i32.ne @@ -8603,17 +8463,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -8626,17 +8486,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 100 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -8648,12 +8508,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 10 i32.add i32.ne @@ -8666,19 +8526,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 20 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -8690,12 +8550,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 20 i32.add i32.ne @@ -8707,17 +8567,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -8730,198 +8590,176 @@ unreachable end global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=16 - local.set $6 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 13 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store - local.get $7 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=12 - local.get $6 - i32.const 536870910 - i32.gt_u - if - i32.const 1456 - i32.const 1728 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $6 - local.get $6 - i32.const 8 - i32.le_u - select - i32.const 1 - i32.shl - local.tee $0 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $8 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=12 - local.get $7 - local.get $8 - i32.store - local.get $7 - local.get $8 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - local.get $8 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $2 i32.store offset=4 - local.get $7 - local.get $0 - i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - i32.const 0 - local.set $0 - loop $for-loop|00 - local.get $3 - local.get $6 - i32.lt_s - if - local.get $5 - local.get $3 - i32.const 12 - i32.mul - i32.add - local.tee $8 + block $"__inlined_func$~lib/map/Map#keys$7" (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner00 + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store + local.get $2 i32.load offset=8 - i32.const 1 - i32.and - i32.eqz + local.set $6 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store + local.get $2 + i32.load offset=16 + local.set $8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 13 + call $~lib/rt/itcms/__new + local.tee $9 + i32.store + local.get $8 + i32.const 536870910 + i32.gt_u if - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store - local.get $7 - local.get $0 - local.get $8 - i32.load16_s - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 + i32.const 1456 + i32.const 1728 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable end - local.get $3 + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $8 + local.get $8 + i32.const 8 + i32.le_u + select + i32.const 1 + i32.shl + local.tee $1 i32.const 1 + call $~lib/rt/itcms/__new + local.tee $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $5 + i32.store offset=12 + local.get $9 + local.get $5 + i32.store + local.get $9 + local.get $5 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $1 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $8 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 i32.add - local.set $3 - br $for-loop|00 + global.set $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=4 + loop $for-loop|01 + local.get $3 + local.get $8 + i32.lt_s + if + local.get $6 + local.get $3 + i32.const 12 + i32.mul + i32.add + local.tee $1 + i32.load offset=8 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store + local.get $9 + local.get $0 + local.get $1 + i32.load16_s + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|01 + end + end + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store + local.get $9 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $9 + br $"__inlined_func$~lib/map/Map#keys$7" end + br $folding-inner1 end - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store - local.get $7 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $7 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $"~lib/map/Map#values" - local.tee $0 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -8942,67 +8780,55 @@ i32.const 24 i32.const 14 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $4 local.get $5 + local.get $6 i32.store - local.get $4 local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 i32.const 3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $4 local.get $5 + local.get $6 i32.store offset=8 - local.get $4 local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=16 global.get $~lib/memory/__stack_pointer call $"~lib/map/Map#constructor" @@ -9010,15 +8836,15 @@ i32.store offset=20 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=4 - local.get $7 + local.get $0 call $~lib/array/Array#get:length - local.get $2 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -9032,10 +8858,10 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store - local.get $2 - local.get $7 + local.get $4 + local.get $0 i32.load offset=12 i32.ge_u if @@ -9047,32 +8873,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store - local.get $7 + local.get $0 i32.load offset=4 - local.get $2 + local.get $4 i32.const 1 i32.shl i32.add i32.load16_s - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $4 call $~lib/array/Array#__get - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $"~lib/map/Map#has" i32.eqz if @@ -9084,10 +8910,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 - local.get $6 + local.get $2 + local.get $7 i32.const 20 i32.sub call $"~lib/map/Map#has" @@ -9101,33 +8927,33 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 local.get $5 + i32.store offset=4 local.get $5 + local.get $6 + local.get $6 call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer local.get $3 i32.store offset=4 local.get $3 - local.get $6 + local.get $7 i32.const 20 i32.sub - local.tee $5 - local.get $5 + local.tee $6 + local.get $6 call $"~lib/map/Map#set" - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -9155,17 +8981,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|3 - local.get $0 + local.get $1 i32.const 50 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -9177,12 +9003,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 20 i32.add i32.ne @@ -9195,16 +9021,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#delete" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -9214,17 +9040,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|3 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 50 i32.ne @@ -9237,17 +9063,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|4 - local.get $0 + local.get $1 i32.const 50 i32.lt_s if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -9258,19 +9084,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 10 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -9282,16 +9108,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#delete" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -9301,17 +9127,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|4 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 50 i32.ne @@ -9324,14 +9150,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#clear" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" if i32.const 0 @@ -9963,7 +9789,7 @@ i32.add i32.load local.set $3 - block $"__inlined_func$~lib/map/Map#find$1393" + block $"__inlined_func$~lib/map/Map#find$1316" loop $while-continue|0 local.get $3 if @@ -9987,7 +9813,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $"__inlined_func$~lib/map/Map#find$1393" + br $"__inlined_func$~lib/map/Map#find$1316" end local.get $4 i32.const -2 @@ -10465,6 +10291,7 @@ (local $6 i32) (local $7 i32) (local $8 i32) + (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 24 i32.sub @@ -10497,78 +10324,66 @@ i32.const 24 i32.const 15 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 i32.store - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 100 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -10579,19 +10394,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 10 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -10603,12 +10418,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 10 i32.add i32.ne @@ -10620,17 +10435,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -10643,17 +10458,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 100 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -10665,12 +10480,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 10 i32.add i32.ne @@ -10683,19 +10498,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 20 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -10707,12 +10522,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 20 i32.add i32.ne @@ -10724,17 +10539,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|1 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -10747,198 +10562,176 @@ unreachable end global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=16 - local.set $6 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 16 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store - local.get $7 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=12 - local.get $6 - i32.const 536870910 - i32.gt_u - if - i32.const 1456 - i32.const 1728 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $6 - local.get $6 - i32.const 8 - i32.le_u - select - i32.const 1 - i32.shl - local.tee $0 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $8 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=12 - local.get $7 - local.get $8 - i32.store - local.get $7 - local.get $8 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - local.get $8 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - local.get $0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $2 i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=12 global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - i32.const 0 - local.set $0 - loop $for-loop|00 - local.get $3 - local.get $6 - i32.lt_s - if - local.get $5 - local.get $3 - i32.const 12 - i32.mul - i32.add - local.tee $8 + block $"__inlined_func$~lib/map/Map#keys$9" (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner00 + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store + local.get $2 i32.load offset=8 - i32.const 1 - i32.and - i32.eqz + local.set $6 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store + local.get $2 + i32.load offset=16 + local.set $8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 16 + call $~lib/rt/itcms/__new + local.tee $9 + i32.store + local.get $8 + i32.const 536870910 + i32.gt_u if - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store - local.get $7 - local.get $0 - local.get $8 - i32.load16_u - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 + i32.const 1456 + i32.const 1728 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable end - local.get $3 + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $8 + local.get $8 + i32.const 8 + i32.le_u + select + i32.const 1 + i32.shl + local.tee $1 i32.const 1 + call $~lib/rt/itcms/__new + local.tee $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $5 + i32.store offset=12 + local.get $9 + local.get $5 + i32.store + local.get $9 + local.get $5 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $1 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $8 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=4 + loop $for-loop|01 + local.get $3 + local.get $8 + i32.lt_s + if + local.get $6 + local.get $3 + i32.const 12 + i32.mul + i32.add + local.tee $1 + i32.load offset=8 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store + local.get $9 + local.get $0 + local.get $1 + i32.load16_u + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|01 + end + end + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store + local.get $9 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 i32.add - local.set $3 - br $for-loop|00 + global.set $~lib/memory/__stack_pointer + local.get $9 + br $"__inlined_func$~lib/map/Map#keys$9" end + br $folding-inner1 end - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store - local.get $7 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $7 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $"~lib/map/Map#values" - local.tee $0 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -10959,67 +10752,55 @@ i32.const 24 i32.const 17 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $4 local.get $5 + local.get $6 i32.store - local.get $4 local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 i32.const 3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 i32.const 32 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $4 local.get $5 + local.get $6 i32.store offset=8 - local.get $4 local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=16 global.get $~lib/memory/__stack_pointer call $"~lib/map/Map#constructor" @@ -11027,15 +10808,15 @@ i32.store offset=20 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=4 - local.get $7 + local.get $0 call $~lib/array/Array#get:length - local.get $2 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -11049,10 +10830,10 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store - local.get $2 - local.get $7 + local.get $4 + local.get $0 i32.load offset=12 i32.ge_u if @@ -11064,32 +10845,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store - local.get $7 + local.get $0 i32.load offset=4 - local.get $2 + local.get $4 i32.const 1 i32.shl i32.add i32.load16_u - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $4 call $~lib/array/Array#__get - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $"~lib/map/Map#has" i32.eqz if @@ -11101,10 +10882,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 - local.get $6 + local.get $2 + local.get $7 i32.const 20 i32.sub call $"~lib/map/Map#has" @@ -11118,33 +10899,33 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 local.get $5 + i32.store offset=4 local.get $5 + local.get $6 + local.get $6 call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer local.get $3 i32.store offset=4 local.get $3 - local.get $6 + local.get $7 i32.const 20 i32.sub - local.tee $5 - local.get $5 + local.tee $6 + local.get $6 call $"~lib/map/Map#set" - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -11172,17 +10953,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|3 - local.get $0 + local.get $1 i32.const 50 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -11194,12 +10975,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 20 i32.add i32.ne @@ -11212,16 +10993,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#delete" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -11231,17 +11012,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|3 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 50 i32.ne @@ -11254,17 +11035,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|4 - local.get $0 + local.get $1 i32.const 50 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -11275,19 +11056,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 10 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -11299,16 +11080,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#delete" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -11318,17 +11099,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|4 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 50 i32.ne @@ -11341,14 +11122,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#clear" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" if i32.const 0 @@ -13367,6 +13148,7 @@ (local $6 i32) (local $7 i32) (local $8 i32) + (local $9 i32) global.get $~lib/memory/__stack_pointer i32.const 24 i32.sub @@ -13399,78 +13181,66 @@ i32.const 24 i32.const 18 call $~lib/rt/itcms/__new - local.tee $1 + local.tee $2 i32.store global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 i32.store - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 i32.const 3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 i32.store offset=8 - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 4 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=20 + local.get $2 + i32.store offset=4 + local.get $2 + i32.const 4 + i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store loop $for-loop|0 - local.get $0 + local.get $1 i32.const 100 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -13481,19 +13251,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 10 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -13505,12 +13275,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 10 i32.add i32.ne @@ -13522,17 +13292,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -13545,17 +13315,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|1 - local.get $0 + local.get $1 i32.const 100 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -13567,12 +13337,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 10 i32.add i32.ne @@ -13585,19 +13355,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 20 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -13609,12 +13379,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 20 i32.add i32.ne @@ -13626,221 +13396,199 @@ call $~lib/builtins/abort unreachable end - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $for-loop|1 - end - end - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - call $"~lib/map/Map#get:size" - i32.const 100 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 21 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=16 - local.set $6 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 19 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store - local.get $7 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - i32.const 0 - i32.store offset=12 - local.get $6 - i32.const 268435455 - i32.gt_u - if - i32.const 1456 - i32.const 1728 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $6 - local.get $6 - i32.const 8 - i32.le_u - select - i32.const 2 - i32.shl - local.tee $0 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $8 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=12 - local.get $7 - local.get $8 - i32.store - local.get $7 - local.get $8 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - local.get $8 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - local.get $0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=4 - i32.const 0 - local.set $0 - loop $for-loop|00 - local.get $3 - local.get $6 - i32.lt_s - if - local.get $5 - local.get $3 - i32.const 12 - i32.mul - i32.add - local.tee $8 - i32.load offset=8 - i32.const 1 - i32.and - i32.eqz - if - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store - local.get $7 - local.get $0 - local.get $8 - i32.load - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 - end - local.get $3 + local.get $1 i32.const 1 i32.add - local.set $3 - br $for-loop|00 + local.set $1 + br $for-loop|1 end end global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store - local.get $7 - local.get $0 - call $~lib/array/Array#set:length + local.get $2 + i32.store offset=4 + local.get $2 + call $"~lib/map/Map#get:size" + i32.const 100 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 21 + i32.const 3 + call $~lib/builtins/abort + unreachable + end global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $7 + local.get $2 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + block $"__inlined_func$~lib/map/Map#keys$11" (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner00 + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store + local.get $2 + i32.load offset=8 + local.set $6 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store + local.get $2 + i32.load offset=16 + local.set $8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 19 + call $~lib/rt/itcms/__new + local.tee $9 + i32.store + local.get $8 + i32.const 268435455 + i32.gt_u + if + i32.const 1456 + i32.const 1728 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $8 + local.get $8 + i32.const 8 + i32.le_u + select + i32.const 2 + i32.shl + local.tee $1 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $5 + i32.store offset=12 + local.get $9 + local.get $5 + i32.store + local.get $9 + local.get $5 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $5 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $1 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=8 + local.get $9 + local.get $8 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $9 + i32.store offset=4 + loop $for-loop|01 + local.get $3 + local.get $8 + i32.lt_s + if + local.get $6 + local.get $3 + i32.const 12 + i32.mul + i32.add + local.tee $1 + i32.load offset=8 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store + local.get $9 + local.get $0 + local.get $1 + i32.load + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|01 + end + end + global.get $~lib/memory/__stack_pointer + local.get $9 + i32.store + local.get $9 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $9 + br $"__inlined_func$~lib/map/Map#keys$11" + end + br $folding-inner1 + end + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 call $"~lib/map/Map#values" - local.tee $0 + local.tee $1 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -13861,67 +13609,55 @@ i32.const 24 i32.const 20 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $5 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $4 local.get $5 + local.get $6 i32.store - local.get $4 local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 i32.const 3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 i32.const 48 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 - local.get $4 local.get $5 + local.get $6 i32.store offset=8 - local.get $4 local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=16 global.get $~lib/memory/__stack_pointer call $"~lib/map/Map#constructor" @@ -13929,15 +13665,15 @@ i32.store offset=20 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=4 - local.get $7 + local.get $0 call $~lib/array/Array#get:length - local.get $2 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -13951,10 +13687,10 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store - local.get $2 - local.get $7 + local.get $4 + local.get $0 i32.load offset=12 i32.ge_u if @@ -13966,32 +13702,32 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $7 + local.get $0 i32.store - local.get $7 + local.get $0 i32.load offset=4 - local.get $2 + local.get $4 i32.const 2 i32.shl i32.add i32.load - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $1 i32.store offset=4 - local.get $0 - local.get $2 + local.get $1 + local.get $4 call $~lib/array/Array#__get - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 - local.get $5 + local.get $2 + local.get $6 call $"~lib/map/Map#has" i32.eqz if @@ -14003,10 +13739,10 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 - local.get $6 + local.get $2 + local.get $7 i32.const 20 i32.sub call $"~lib/map/Map#has" @@ -14019,34 +13755,34 @@ call $~lib/builtins/abort unreachable end - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 + global.get $~lib/memory/__stack_pointer local.get $5 + i32.store offset=4 local.get $5 + local.get $6 + local.get $6 call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer local.get $3 i32.store offset=4 local.get $3 - local.get $6 + local.get $7 i32.const 20 i32.sub - local.tee $5 - local.get $5 + local.tee $6 + local.get $6 call $"~lib/map/Map#set" - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $5 i32.store offset=4 - local.get $4 + local.get $5 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -14074,17 +13810,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|3 - local.get $0 + local.get $1 i32.const 50 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -14096,12 +13832,12 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#get" - local.get $0 + local.get $1 i32.const 20 i32.add i32.ne @@ -14114,16 +13850,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#delete" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -14133,17 +13869,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|3 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 50 i32.ne @@ -14156,17 +13892,17 @@ unreachable end i32.const 0 - local.set $0 + local.set $1 loop $for-loop|4 - local.get $0 + local.get $1 i32.const 50 i32.lt_u if global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -14177,19 +13913,19 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 + local.get $1 local.get $1 - local.get $0 - local.get $0 i32.const 10 i32.add call $"~lib/map/Map#set" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" i32.eqz if @@ -14201,16 +13937,16 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#delete" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 + local.get $2 local.get $1 - local.get $0 call $"~lib/map/Map#has" if i32.const 0 @@ -14220,17 +13956,17 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $for-loop|4 end end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" i32.const 50 i32.ne @@ -14243,14 +13979,14 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#clear" global.get $~lib/memory/__stack_pointer - local.get $1 + local.get $2 i32.store offset=4 - local.get $1 + local.get $2 call $"~lib/map/Map#get:size" if i32.const 0 @@ -15201,7 +14937,7 @@ i32.add i32.load local.set $3 - block $"__inlined_func$~lib/map/Map#find$1403" + block $"__inlined_func$~lib/map/Map#find$1326" loop $while-continue|0 local.get $3 if @@ -15223,7 +14959,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $"__inlined_func$~lib/map/Map#find$1403" + br $"__inlined_func$~lib/map/Map#find$1326" end local.get $4 i32.const -2 @@ -15804,6 +15540,7 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 24 i32.sub @@ -15843,15 +15580,15 @@ i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 local.get $1 - local.get $5 + local.get $6 i32.store local.get $1 - local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.get $1 @@ -15864,15 +15601,15 @@ i32.store offset=4 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 local.get $1 - local.get $5 + local.get $6 i32.store offset=8 local.get $1 - local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.get $1 @@ -15881,18 +15618,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -16068,211 +15793,191 @@ call $~lib/builtins/abort unreachable end - local.get $2 - i64.const 1 - i64.add - local.set $2 - br $for-loop|1 - end - end - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - call $"~lib/map/Map#get:size" - i32.const 100 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 21 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=16 - local.set $7 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 22 - call $~lib/rt/itcms/__new - local.tee $8 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store - local.get $8 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store offset=12 - local.get $7 - i32.const 134217727 - i32.gt_u - if - i32.const 1456 - i32.const 1728 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $7 - local.get $7 - i32.const 8 - i32.le_u - select - i32.const 3 - i32.shl - local.tee $9 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=12 - local.get $8 - local.get $4 - i32.store - local.get $8 - local.get $4 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - local.get $4 - i32.store offset=4 + local.get $2 + i64.const 1 + i64.add + local.set $2 + br $for-loop|1 + end + end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $1 i32.store offset=4 - local.get $8 - local.get $9 - i32.store offset=8 + local.get $1 + call $"~lib/map/Map#get:size" + i32.const 100 + i32.ne + if + i32.const 0 + i32.const 1568 + i32.const 21 + i32.const 3 + call $~lib/builtins/abort + unreachable + end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $1 i32.store offset=4 - local.get $8 - local.get $7 - i32.store offset=12 global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - loop $for-loop|00 - local.get $3 - local.get $7 - i32.lt_s - if - local.get $6 - local.get $3 - i32.const 4 - i32.shl - i32.add - local.tee $4 - i32.load offset=12 - i32.const 1 - i32.and - i32.eqz + block $"__inlined_func$~lib/map/Map#keys$19" (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner00 + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=8 + local.set $8 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=16 + local.set $5 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 22 + call $~lib/rt/itcms/__new + local.tee $10 + i32.store + local.get $5 + i32.const 134217727 + i32.gt_u if - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store - local.get $8 - local.get $0 - local.get $4 - i64.load - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 + i32.const 1456 + i32.const 1728 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable end - local.get $3 + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $5 + local.get $5 + i32.const 8 + i32.le_u + select + i32.const 3 + i32.shl + local.tee $6 i32.const 1 + call $~lib/rt/itcms/__new + local.tee $7 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=12 + local.get $10 + local.get $7 + i32.store + local.get $10 + local.get $7 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + local.get $10 + local.get $7 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + local.get $10 + local.get $6 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + local.get $10 + local.get $5 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 i32.add - local.set $3 - br $for-loop|00 + global.set $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=4 + loop $for-loop|01 + local.get $3 + local.get $5 + i32.lt_s + if + local.get $8 + local.get $3 + i32.const 4 + i32.shl + i32.add + local.tee $6 + i32.load offset=12 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store + local.get $10 + local.get $0 + local.get $6 + i64.load + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|01 + end + end + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store + local.get $10 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $10 + br $"__inlined_func$~lib/map/Map#keys$19" end + br $folding-inner1 end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store - local.get $8 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $8 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $1 @@ -16280,7 +15985,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 call $"~lib/map/Map#values" - local.tee $0 + local.tee $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -16301,85 +16006,71 @@ i32.const 24 i32.const 23 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.store offset=8 - local.get $4 - local.get $5 + local.get $6 + local.get $7 i32.store - local.get $4 - local.get $5 + local.get $6 + local.get $7 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=4 - local.get $4 + local.get $6 i32.const 3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=4 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.store offset=8 - local.get $4 - local.get $5 + local.get $6 + local.get $7 i32.store offset=8 - local.get $4 - local.get $5 + local.get $6 + local.get $7 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=4 - local.get $4 + local.get $6 i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=16 global.get $~lib/memory/__stack_pointer call $"~lib/map/Map#constructor" local.tee $5 i32.store offset=20 - i32.const 0 - local.set $3 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=4 - local.get $8 + local.get $0 call $~lib/array/Array#get:length - local.get $3 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -16393,10 +16084,10 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store - local.get $3 - local.get $8 + local.get $4 + local.get $0 i32.load offset=12 i32.ge_u if @@ -16408,11 +16099,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store - local.get $8 + local.get $0 i32.load offset=4 - local.get $3 + local.get $4 i32.const 3 i32.shl i32.add @@ -16423,12 +16114,12 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=4 - local.get $0 local.get $3 + local.get $4 call $~lib/array/Array#__get - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 @@ -16448,7 +16139,7 @@ local.get $1 i32.store offset=4 local.get $1 - local.get $6 + local.get $7 i32.const 20 i32.sub i64.extend_i32_s @@ -16463,9 +16154,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=4 - local.get $4 + local.get $6 local.get $2 local.get $2 call $"~lib/map/Map#set" @@ -16473,23 +16164,23 @@ local.get $5 i32.store offset=4 local.get $5 - local.get $6 + local.get $7 i32.const 20 i32.sub - local.tee $6 - local.get $6 + local.tee $7 + local.get $7 call $"~lib/map/Map#set" - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=4 - local.get $4 + local.get $6 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -17453,7 +17144,7 @@ i32.add i32.load local.set $3 - block $"__inlined_func$~lib/map/Map#find$1408" + block $"__inlined_func$~lib/map/Map#find$1331" loop $while-continue|0 local.get $3 if @@ -17475,7 +17166,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $"__inlined_func$~lib/map/Map#find$1408" + br $"__inlined_func$~lib/map/Map#find$1331" end local.get $4 i32.const -2 @@ -17977,6 +17668,7 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 24 i32.sub @@ -18016,15 +17708,15 @@ i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 local.get $1 - local.get $5 + local.get $6 i32.store local.get $1 - local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.get $1 @@ -18037,15 +17729,15 @@ i32.store offset=4 i32.const 64 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $6 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $6 i32.store offset=8 local.get $1 - local.get $5 + local.get $6 i32.store offset=8 local.get $1 - local.get $5 + local.get $6 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.get $1 @@ -18054,18 +17746,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -18264,188 +17944,168 @@ unreachable end global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store local.get $1 - i32.load offset=16 - local.set $7 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1896 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 25 - call $~lib/rt/itcms/__new - local.tee $8 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store - local.get $8 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store offset=12 - local.get $7 - i32.const 134217727 - i32.gt_u - if - i32.const 1456 - i32.const 1728 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $7 - local.get $7 - i32.const 8 - i32.le_u - select - i32.const 3 - i32.shl - local.tee $9 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $4 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=12 - local.get $8 - local.get $4 - i32.store - local.get $8 - local.get $4 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - local.get $4 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $8 i32.store offset=4 - local.get $8 - local.get $9 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - local.get $7 - i32.store offset=12 global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - loop $for-loop|00 - local.get $3 - local.get $7 - i32.lt_s - if + block $"__inlined_func$~lib/map/Map#keys$27" (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner00 + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=8 + local.set $8 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=16 + local.set $5 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1896 + i32.lt_s + br_if $folding-inner00 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 25 + call $~lib/rt/itcms/__new + local.tee $10 + i32.store + local.get $5 + i32.const 134217727 + i32.gt_u + if + i32.const 1456 + i32.const 1728 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $5 + local.get $5 + i32.const 8 + i32.le_u + select + i32.const 3 + i32.shl + local.tee $6 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $7 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=12 + local.get $10 + local.get $7 + i32.store + local.get $10 + local.get $7 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + local.get $10 + local.get $7 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + local.get $10 local.get $6 - local.get $3 - i32.const 4 - i32.shl + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + local.get $10 + local.get $5 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 i32.add - local.tee $4 - i32.load offset=12 - i32.const 1 - i32.and - i32.eqz - if - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store - local.get $8 - local.get $0 - local.get $4 - i64.load - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 + global.set $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=4 + loop $for-loop|01 + local.get $3 + local.get $5 + i32.lt_s + if + local.get $8 + local.get $3 + i32.const 4 + i32.shl + i32.add + local.tee $6 + i32.load offset=12 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store + local.get $10 + local.get $0 + local.get $6 + i64.load + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|01 + end end - local.get $3 - i32.const 1 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store + local.get $10 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 i32.add - local.set $3 - br $for-loop|00 + global.set $~lib/memory/__stack_pointer + local.get $10 + br $"__inlined_func$~lib/map/Map#keys$27" end + br $folding-inner1 end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store - local.get $8 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $8 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $1 @@ -18453,7 +18113,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 call $"~lib/map/Map#values" - local.tee $0 + local.tee $3 i32.store offset=12 global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer @@ -18474,85 +18134,71 @@ i32.const 24 i32.const 26 call $~lib/rt/itcms/__new - local.tee $4 + local.tee $6 i32.store global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=4 i32.const 16 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.store offset=8 - local.get $4 - local.get $5 + local.get $6 + local.get $7 i32.store - local.get $4 - local.get $5 + local.get $6 + local.get $7 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=4 - local.get $4 + local.get $6 i32.const 3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=4 i32.const 96 call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $5 + local.set $7 global.get $~lib/memory/__stack_pointer - local.get $5 + local.get $7 i32.store offset=8 - local.get $4 - local.get $5 + local.get $6 + local.get $7 i32.store offset=8 - local.get $4 - local.get $5 + local.get $6 + local.get $7 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=4 - local.get $4 + local.get $6 i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=16 global.get $~lib/memory/__stack_pointer call $"~lib/map/Map#constructor" local.tee $5 i32.store offset=20 - i32.const 0 - local.set $3 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=4 - local.get $8 + local.get $0 call $~lib/array/Array#get:length - local.get $3 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer i32.const 4 @@ -18566,10 +18212,10 @@ i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store - local.get $3 - local.get $8 + local.get $4 + local.get $0 i32.load offset=12 i32.ge_u if @@ -18581,11 +18227,11 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store - local.get $8 + local.get $0 i32.load offset=4 - local.get $3 + local.get $4 i32.const 3 i32.shl i32.add @@ -18596,12 +18242,12 @@ i32.add global.set $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=4 - local.get $0 local.get $3 + local.get $4 call $~lib/array/Array#__get - local.set $6 + local.set $7 global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 @@ -18621,7 +18267,7 @@ local.get $1 i32.store offset=4 local.get $1 - local.get $6 + local.get $7 i32.const 20 i32.sub i64.extend_i32_s @@ -18636,9 +18282,9 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=4 - local.get $4 + local.get $6 local.get $2 local.get $2 call $"~lib/map/Map#set" @@ -18646,23 +18292,23 @@ local.get $5 i32.store offset=4 local.get $5 - local.get $6 + local.get $7 i32.const 20 i32.sub - local.tee $6 - local.get $6 + local.tee $7 + local.get $7 call $"~lib/map/Map#set" - local.get $3 + local.get $4 i32.const 1 i32.add - local.set $3 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $4 + local.get $6 i32.store offset=4 - local.get $4 + local.get $6 call $"~lib/map/Map#get:size" i32.const 100 i32.ne @@ -19488,8 +19134,8 @@ (func $"~lib/map/Map#keys" (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 f32) + (local $3 f32) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) @@ -19497,11 +19143,11 @@ i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 1896 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -19510,14 +19156,14 @@ i32.store local.get $0 i32.load offset=8 - local.set $3 + local.set $4 + global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.get $0 i32.store local.get $0 i32.load offset=16 - local.set $5 - global.get $~lib/memory/__stack_pointer + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 16 i32.sub @@ -19525,7 +19171,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1896 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -19536,36 +19182,9 @@ i32.const 16 i32.const 28 call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 + local.tee $2 i32.store local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $5 i32.const 268435455 i32.gt_u if @@ -19578,8 +19197,8 @@ end global.get $~lib/memory/__stack_pointer i32.const 8 - local.get $5 - local.get $5 + local.get $6 + local.get $6 i32.const 8 i32.le_u select @@ -19587,52 +19206,54 @@ i32.shl local.tee $0 i32.const 1 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 + call $~lib/rt/itcms/__new + local.tee $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer local.get $7 i32.store offset=12 - local.get $6 + local.get $2 local.get $7 i32.store - local.get $6 + local.get $2 local.get $7 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 + local.get $2 + i32.store offset=8 + local.get $2 local.get $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 + local.get $2 + i32.store offset=8 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=8 + local.get $2 local.get $6 - i32.store offset=4 - local.get $6 - local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store offset=4 + i32.const 0 + local.set $0 loop $for-loop|0 - local.get $2 local.get $5 + local.get $6 i32.lt_s if - local.get $3 - local.get $2 + local.get $4 + local.get $5 i32.const 12 i32.mul i32.add @@ -19643,16 +19264,16 @@ i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $7 f32.load - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -19660,19 +19281,19 @@ global.get $~lib/memory/__stack_pointer i32.const 1896 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $0 - local.get $6 + local.get $1 + local.get $2 i32.load offset=12 i32.ge_u if - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -19683,8 +19304,8 @@ call $~lib/builtins/abort unreachable end - local.get $6 - local.get $0 + local.get $2 + local.get $1 i32.const 1 i32.add local.tee $7 @@ -19692,46 +19313,46 @@ i32.const 1 call $~lib/array/ensureCapacity global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 + local.get $2 local.get $7 i32.store offset=12 end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add - local.get $4 + local.get $3 f32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer end - local.get $2 + local.get $5 i32.const 1 i32.add - local.set $2 + local.set $5 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 - local.get $1 + local.get $2 + local.get $0 call $~lib/array/Array#set:length global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 return end i32.const 34688 @@ -20342,18 +19963,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -20631,18 +20240,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -21654,8 +21251,8 @@ (func $"~lib/map/Map#keys" (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 f64) + (local $3 f64) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) @@ -21663,11 +21260,11 @@ i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 1896 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -21676,14 +21273,14 @@ i32.store local.get $0 i32.load offset=8 - local.set $3 + local.set $4 + global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.get $0 i32.store local.get $0 i32.load offset=16 - local.set $5 - global.get $~lib/memory/__stack_pointer + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 16 i32.sub @@ -21691,7 +21288,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1896 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -21702,36 +21299,9 @@ i32.const 16 i32.const 31 call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 + local.tee $2 i32.store local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $5 i32.const 134217727 i32.gt_u if @@ -21744,8 +21314,8 @@ end global.get $~lib/memory/__stack_pointer i32.const 8 - local.get $5 - local.get $5 + local.get $6 + local.get $6 i32.const 8 i32.le_u select @@ -21755,50 +21325,52 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer local.get $7 i32.store offset=12 - local.get $6 + local.get $2 local.get $7 i32.store - local.get $6 + local.get $2 local.get $7 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 + local.get $2 + i32.store offset=8 + local.get $2 local.get $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 + local.get $2 + i32.store offset=8 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=8 + local.get $2 local.get $6 - i32.store offset=4 - local.get $6 - local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store offset=4 + i32.const 0 + local.set $0 loop $for-loop|0 - local.get $2 local.get $5 + local.get $6 i32.lt_s if - local.get $3 - local.get $2 + local.get $4 + local.get $5 i32.const 4 i32.shl i32.add @@ -21809,16 +21381,16 @@ i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $7 f64.load - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -21826,19 +21398,19 @@ global.get $~lib/memory/__stack_pointer i32.const 1896 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $0 - local.get $6 + local.get $1 + local.get $2 i32.load offset=12 i32.ge_u if - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -21849,8 +21421,8 @@ call $~lib/builtins/abort unreachable end - local.get $6 - local.get $0 + local.get $2 + local.get $1 i32.const 1 i32.add local.tee $7 @@ -21858,46 +21430,46 @@ i32.const 1 call $~lib/array/ensureCapacity global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 + local.get $2 local.get $7 i32.store offset=12 end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 3 i32.shl i32.add - local.get $4 + local.get $3 f64.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer end - local.get $2 + local.get $5 i32.const 1 i32.add - local.set $2 + local.set $5 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 - local.get $1 + local.get $2 + local.get $0 call $~lib/array/Array#set:length global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 return end i32.const 34688 @@ -22007,7 +21579,7 @@ i32.add i32.load local.set $3 - block $"__inlined_func$~lib/map/Map#find$1418" + block $"__inlined_func$~lib/map/Map#find$1342" loop $while-continue|0 local.get $3 if @@ -22029,7 +21601,7 @@ i32.const 4 i32.add global.set $~lib/memory/__stack_pointer - br $"__inlined_func$~lib/map/Map#find$1418" + br $"__inlined_func$~lib/map/Map#find$1342" end local.get $4 i32.const -2 @@ -22611,18 +22183,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -22900,18 +22460,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/std/set.debug.wat b/tests/compiler/std/set.debug.wat index b643b683f8..ab082ec36f 100644 --- a/tests/compiler/std/set.debug.wat +++ b/tests/compiler/std/set.debug.wat @@ -2364,16 +2364,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -2485,6 +2475,16 @@ local.get $taggedNext i32.store offset=4 ) + (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -2603,16 +2603,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -2725,6 +2715,16 @@ local.get $taggedNext i32.store offset=4 ) + (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -2785,16 +2785,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -2906,6 +2896,16 @@ local.get $taggedNext i32.store offset=4 ) + (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -2966,16 +2966,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -3088,6 +3078,16 @@ local.get $taggedNext i32.store offset=4 ) + (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -3148,16 +3148,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -3268,6 +3258,16 @@ local.get $taggedNext i32.store offset=4 ) + (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -3328,16 +3328,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -3448,6 +3438,16 @@ local.get $taggedNext i32.store offset=4 ) + (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -3508,16 +3508,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i64) (result i32) (local $key|1 i64) (local $h i32) @@ -3645,6 +3635,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -3705,16 +3705,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i64) (result i32) (local $key|1 i64) (local $h i32) @@ -3842,6 +3832,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -3902,16 +3902,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key f32) (result i32) (local $key|1 i32) (local $len i32) @@ -4023,6 +4013,16 @@ local.get $taggedNext i32.store offset=4 ) + (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -4083,16 +4083,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key f64) (result i32) (local $key|1 i64) (local $h i32) @@ -4221,6 +4211,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $~lib/set/Set#set:entriesOffset (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $~lib/set/Set#set:entriesCount (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/array/Array#set:buffer (param $this i32) (param $buffer i32) local.get $this local.get $buffer @@ -4795,22 +4795,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesOffset - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesCount - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -5360,38 +5344,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 0 @@ -5421,7 +5373,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -5430,7 +5382,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -5443,7 +5395,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -5451,7 +5403,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -5459,7 +5411,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -6646,22 +6598,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesOffset - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesCount - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -7203,48 +7139,16 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store offset=8 - local.get $this - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 7 - call $~lib/rt/itcms/__new - local.tee $this - i32.store - end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ + local.get $this + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 7 + call $~lib/rt/itcms/__new + local.tee $this + i32.store + end local.get $length i32.const 1073741820 i32.const 0 @@ -7274,7 +7178,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -7283,7 +7187,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -7296,7 +7200,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -7304,7 +7208,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -7312,7 +7216,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -8380,22 +8284,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesOffset - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesCount - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -8945,38 +8833,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 1 @@ -9006,7 +8862,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -9015,7 +8871,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -9028,7 +8884,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -9036,7 +8892,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -9044,7 +8900,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -10112,22 +9968,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesOffset - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesCount - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -10679,38 +10519,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 1 @@ -10740,7 +10548,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -10749,7 +10557,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -10762,7 +10570,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -10770,7 +10578,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -10778,7 +10586,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -11846,22 +11654,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesOffset - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesCount - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -12409,38 +12201,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -12470,7 +12230,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -12479,7 +12239,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -12492,7 +12252,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -12500,7 +12260,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -12508,7 +12268,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -13576,22 +13336,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesOffset - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesCount - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -14125,52 +13869,20 @@ call $~stack_check global.get $~lib/memory/__stack_pointer i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - local.get $this - i32.eqz - if - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 15 - call $~lib/rt/itcms/__new - local.tee $this - i32.store - end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + local.get $this + i32.eqz + if + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 15 + call $~lib/rt/itcms/__new + local.tee $this + i32.store + end local.get $length i32.const 1073741820 i32.const 2 @@ -14200,7 +13912,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -14209,7 +13921,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -14222,7 +13934,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -14230,7 +13942,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -14238,7 +13950,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -15306,22 +15018,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesOffset - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesCount - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -15869,38 +15565,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 3 @@ -15930,7 +15594,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -15939,7 +15603,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -15952,7 +15616,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -15960,7 +15624,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -15968,7 +15632,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -17037,22 +16701,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesOffset - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesCount - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -17600,38 +17248,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 3 @@ -17661,7 +17277,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -17670,7 +17286,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -17683,7 +17299,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -17691,7 +17307,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -17699,7 +17315,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -18768,22 +18384,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesOffset - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesCount - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -19331,38 +18931,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 2 @@ -19392,7 +18960,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -19401,7 +18969,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -19414,7 +18982,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -19422,7 +18990,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -19430,7 +18998,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ @@ -20499,22 +20067,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesOffset - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $~lib/set/Set#set:entriesCount - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -21062,38 +20614,6 @@ local.tee $this i32.store end - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:buffer - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:dataStart - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:byteLength - local.get $this - local.set $6 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - call $~lib/array/Array#set:length_ local.get $length i32.const 1073741820 i32.const 3 @@ -21123,7 +20643,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -21132,7 +20652,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer local.set $6 @@ -21145,7 +20665,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $buffer call $~lib/array/Array#set:dataStart @@ -21153,7 +20673,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $bufferSize call $~lib/array/Array#set:byteLength @@ -21161,7 +20681,7 @@ local.set $6 global.get $~lib/memory/__stack_pointer local.get $6 - i32.store offset=4 + i32.store offset=8 local.get $6 local.get $length call $~lib/array/Array#set:length_ diff --git a/tests/compiler/std/set.release.wat b/tests/compiler/std/set.release.wat index 2a2f9d8ff2..2574d56619 100644 --- a/tests/compiler/std/set.release.wat +++ b/tests/compiler/std/set.release.wat @@ -125,7 +125,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$904 + block $__inlined_func$~lib/rt/itcms/Object#unlink$846 local.get $0 i32.load offset=4 i32.const -4 @@ -149,7 +149,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$904 + br $__inlined_func$~lib/rt/itcms/Object#unlink$846 end local.get $0 i32.load offset=8 @@ -1840,18 +1840,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -2470,7 +2458,7 @@ select local.set $1 end - block $__inlined_func$~lib/rt/itcms/__renew$893 + block $__inlined_func$~lib/rt/itcms/__renew$833 local.get $4 i32.const 20 i32.sub @@ -2488,7 +2476,7 @@ i32.store offset=16 local.get $4 local.set $2 - br $__inlined_func$~lib/rt/itcms/__renew$893 + br $__inlined_func$~lib/rt/itcms/__renew$833 end local.get $1 local.get $3 @@ -2933,6 +2921,7 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -3078,246 +3067,224 @@ unreachable end global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store local.get $1 - i32.load offset=16 - local.set $5 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 5 - call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $5 - i32.const 1073741820 - i32.gt_u - if - i32.const 1456 - i32.const 1616 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $5 - local.get $5 - i32.const 8 - i32.le_u - select - local.tee $0 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=12 - local.get $6 - local.get $7 - i32.store - local.get $6 - local.get $7 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 i32.store offset=4 - local.get $6 - local.get $0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $5 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - i32.const 0 - local.set $0 - loop $for-loop|00 - local.get $2 - local.get $5 - i32.lt_s - if - local.get $4 - local.get $2 - i32.const 3 - i32.shl - i32.add - local.tee $7 - i32.load offset=4 - i32.const 1 - i32.and - i32.eqz - if - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store - local.get $6 - local.get $0 - local.get $7 - i32.load8_s - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $for-loop|00 - end - end - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store - local.get $6 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=8 global.get $~lib/memory/__stack_pointer - call $~lib/set/Set#constructor - local.tee $0 - i32.store offset=12 - i32.const 0 - local.set $2 - loop $for-loop|2 + block $__inlined_func$~lib/set/Set#values$2 (result i32) global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - call $~lib/array/Array#get:length - local.get $2 - i32.gt_s - if + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store global.get $~lib/memory/__stack_pointer local.get $1 - i32.store offset=4 + i32.store + local.get $1 + i32.load offset=8 + local.set $5 + global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=16 local.get $1 - local.get $6 - local.get $2 - call $~lib/array/Array#__get - call $~lib/set/Set#has - i32.eqz + i32.store + local.get $1 + i32.load offset=16 + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 5 + call $~lib/rt/itcms/__new + local.tee $7 + i32.store + local.get $3 + i32.const 1073741820 + i32.gt_u if - i32.const 0 - i32.const 1568 - i32.const 24 - i32.const 5 + i32.const 1456 + i32.const 1616 + i32.const 70 + i32.const 60 call $~lib/builtins/abort unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + i32.const 8 + local.get $3 + local.get $3 + i32.const 8 + i32.le_u + select + local.tee $8 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $0 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=16 + local.get $7 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer local.get $0 - local.get $6 - local.get $2 - call $~lib/array/Array#__get - call $~lib/set/Set#add - local.get $2 + i32.store offset=12 + local.get $7 + local.get $0 + i32.store + local.get $7 + local.get $0 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $8 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $3 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + i32.const 0 + local.set $0 + loop $for-loop|00 + local.get $2 + local.get $3 + i32.lt_s + if + local.get $5 + local.get $2 + i32.const 3 + i32.shl + i32.add + local.tee $6 + i32.load offset=4 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + local.get $7 + local.get $0 + local.get $6 + i32.load8_s + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|00 + end + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + local.get $7 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $7 + br $__inlined_func$~lib/set/Set#values$2 + end + br $folding-inner1 + end + local.tee $0 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + call $~lib/set/Set#constructor + local.tee $2 + i32.store offset=12 + loop $for-loop|2 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=4 + local.get $0 + call $~lib/array/Array#get:length + local.get $4 + i32.gt_s + if + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=16 + local.get $1 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + call $~lib/set/Set#has + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 24 + i32.const 5 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=16 + local.get $2 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + call $~lib/set/Set#add + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 - local.get $0 + local.get $2 call $~lib/set/Set#get:size local.set $0 global.get $~lib/memory/__stack_pointer @@ -3587,18 +3554,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -4229,6 +4184,7 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -4374,213 +4330,191 @@ unreachable end global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=16 - local.set $5 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 7 - call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $5 - i32.const 1073741820 - i32.gt_u - if - i32.const 1456 - i32.const 1616 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $5 - local.get $5 - i32.const 8 - i32.le_u - select - local.tee $0 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=12 - local.get $6 - local.get $7 - i32.store - local.get $6 - local.get $7 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $5 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - i32.const 0 - local.set $0 - loop $for-loop|00 - local.get $2 - local.get $5 - i32.lt_s - if - local.get $4 - local.get $2 - i32.const 3 - i32.shl - i32.add - local.tee $7 - i32.load offset=4 - i32.const 1 - i32.and - i32.eqz - if - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store - local.get $6 - local.get $0 - local.get $7 - i32.load8_u - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $for-loop|00 - end - end - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store - local.get $6 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=8 + block $__inlined_func$~lib/set/Set#values$3 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=8 + local.set $5 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=16 + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 7 + call $~lib/rt/itcms/__new + local.tee $7 + i32.store + local.get $3 + i32.const 1073741820 + i32.gt_u + if + i32.const 1456 + i32.const 1616 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $3 + local.get $3 + i32.const 8 + i32.le_u + select + local.tee $8 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=12 + local.get $7 + local.get $0 + i32.store + local.get $7 + local.get $0 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $8 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $3 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + i32.const 0 + local.set $0 + loop $for-loop|00 + local.get $2 + local.get $3 + i32.lt_s + if + local.get $5 + local.get $2 + i32.const 3 + i32.shl + i32.add + local.tee $6 + i32.load offset=4 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + local.get $7 + local.get $0 + local.get $6 + i32.load8_u + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|00 + end + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + local.get $7 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $7 + br $__inlined_func$~lib/set/Set#values$3 + end + br $folding-inner1 + end + local.tee $0 + i32.store offset=8 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $0 + local.tee $2 i32.store offset=12 - i32.const 0 - local.set $2 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 - local.get $6 + local.get $0 call $~lib/array/Array#get:length - local.get $2 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=16 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -4593,27 +4527,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=16 local.get $0 - local.get $6 + i32.store offset=16 local.get $2 + local.get $0 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 - local.get $0 + local.get $2 call $~lib/set/Set#get:size local.set $0 global.get $~lib/memory/__stack_pointer @@ -4883,18 +4817,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -5705,6 +5627,7 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -5850,215 +5773,193 @@ unreachable end global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $4 - global.get $~lib/memory/__stack_pointer local.get $1 - i32.store - local.get $1 - i32.load offset=16 - local.set $5 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 9 - call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=8 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $5 - i32.const 536870910 - i32.gt_u - if - i32.const 1456 - i32.const 1616 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $5 - local.get $5 - i32.const 8 - i32.le_u - select - i32.const 1 - i32.shl - local.tee $0 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=12 - local.get $6 - local.get $7 - i32.store - local.get $6 - local.get $7 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $5 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - i32.const 0 - local.set $0 - loop $for-loop|00 - local.get $2 - local.get $5 - i32.lt_s - if - local.get $4 - local.get $2 - i32.const 3 - i32.shl - i32.add + block $__inlined_func$~lib/set/Set#values$4 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=8 + local.set $5 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=16 + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 9 + call $~lib/rt/itcms/__new local.tee $7 - i32.load offset=4 - i32.const 1 - i32.and - i32.eqz + i32.store + local.get $3 + i32.const 536870910 + i32.gt_u if - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store - local.get $6 - local.get $0 - local.get $7 - i32.load16_s - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 + i32.const 1456 + i32.const 1616 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable end - local.get $2 + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $3 + local.get $3 + i32.const 8 + i32.le_u + select i32.const 1 + i32.shl + local.tee $8 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=12 + local.get $7 + local.get $0 + i32.store + local.get $7 + local.get $0 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $8 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $3 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 i32.add - local.set $2 - br $for-loop|00 + global.set $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + i32.const 0 + local.set $0 + loop $for-loop|00 + local.get $2 + local.get $3 + i32.lt_s + if + local.get $5 + local.get $2 + i32.const 3 + i32.shl + i32.add + local.tee $6 + i32.load offset=4 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + local.get $7 + local.get $0 + local.get $6 + i32.load16_s + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|00 + end + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + local.get $7 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $7 + br $__inlined_func$~lib/set/Set#values$4 end + br $folding-inner1 end - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store - local.get $6 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $0 + local.tee $2 i32.store offset=12 - i32.const 0 - local.set $2 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 - local.get $6 + local.get $0 call $~lib/array/Array#get:length - local.get $2 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=16 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -6071,27 +5972,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=16 local.get $0 - local.get $6 + i32.store offset=16 local.get $2 + local.get $0 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 - local.get $0 + local.get $2 call $~lib/set/Set#get:size local.set $0 global.get $~lib/memory/__stack_pointer @@ -6361,18 +6262,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -7005,6 +6894,7 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -7150,215 +7040,193 @@ unreachable end global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=16 - local.set $5 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 11 - call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $5 - i32.const 536870910 - i32.gt_u - if - i32.const 1456 - i32.const 1616 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $5 - local.get $5 - i32.const 8 - i32.le_u - select - i32.const 1 - i32.shl - local.tee $0 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=12 - local.get $6 - local.get $7 - i32.store - local.get $6 - local.get $7 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $5 - i32.store offset=12 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - i32.const 0 - local.set $0 - loop $for-loop|00 - local.get $2 - local.get $5 - i32.lt_s - if - local.get $4 - local.get $2 - i32.const 3 - i32.shl - i32.add + block $__inlined_func$~lib/set/Set#values$5 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=8 + local.set $5 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=16 + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 11 + call $~lib/rt/itcms/__new local.tee $7 - i32.load offset=4 - i32.const 1 - i32.and - i32.eqz + i32.store + local.get $3 + i32.const 536870910 + i32.gt_u if - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store - local.get $6 - local.get $0 - local.get $7 - i32.load16_u - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 + i32.const 1456 + i32.const 1616 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable end - local.get $2 + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $3 + local.get $3 + i32.const 8 + i32.le_u + select i32.const 1 + i32.shl + local.tee $8 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=12 + local.get $7 + local.get $0 + i32.store + local.get $7 + local.get $0 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $8 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $3 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 i32.add - local.set $2 - br $for-loop|00 + global.set $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + i32.const 0 + local.set $0 + loop $for-loop|00 + local.get $2 + local.get $3 + i32.lt_s + if + local.get $5 + local.get $2 + i32.const 3 + i32.shl + i32.add + local.tee $6 + i32.load offset=4 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + local.get $7 + local.get $0 + local.get $6 + i32.load16_u + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|00 + end + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + local.get $7 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $7 + br $__inlined_func$~lib/set/Set#values$5 end + br $folding-inner1 end - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store - local.get $6 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $0 + local.tee $2 i32.store offset=12 - i32.const 0 - local.set $2 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 - local.get $6 + local.get $0 call $~lib/array/Array#get:length - local.get $2 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=16 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -7371,27 +7239,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=16 local.get $0 - local.get $6 + i32.store offset=16 local.get $2 + local.get $0 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 - local.get $0 + local.get $2 call $~lib/set/Set#get:size local.set $0 global.get $~lib/memory/__stack_pointer @@ -7661,18 +7529,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -8478,6 +8334,7 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -8623,215 +8480,193 @@ unreachable end global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store local.get $1 - i32.load offset=16 - local.set $5 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 13 - call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 i32.store offset=4 - local.get $6 - i32.const 0 - i32.store - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $5 - i32.const 268435455 - i32.gt_u - if - i32.const 1456 - i32.const 1616 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $5 - local.get $5 - i32.const 8 - i32.le_u - select - i32.const 2 - i32.shl - local.tee $0 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=12 - local.get $6 - local.get $7 - i32.store - local.get $6 - local.get $7 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $5 - i32.store offset=12 global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - i32.const 0 - local.set $0 - loop $for-loop|00 - local.get $2 - local.get $5 - i32.lt_s - if - local.get $4 - local.get $2 - i32.const 3 - i32.shl - i32.add + block $__inlined_func$~lib/set/Set#values$6 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=8 + local.set $5 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=16 + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 13 + call $~lib/rt/itcms/__new local.tee $7 - i32.load offset=4 - i32.const 1 - i32.and - i32.eqz + i32.store + local.get $3 + i32.const 268435455 + i32.gt_u if - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store - local.get $6 - local.get $0 - local.get $7 - i32.load - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 + i32.const 1456 + i32.const 1616 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable end - local.get $2 + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $3 + local.get $3 + i32.const 8 + i32.le_u + select + i32.const 2 + i32.shl + local.tee $8 i32.const 1 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=12 + local.get $7 + local.get $0 + i32.store + local.get $7 + local.get $0 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $8 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $3 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 i32.add - local.set $2 - br $for-loop|00 + global.set $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + i32.const 0 + local.set $0 + loop $for-loop|00 + local.get $2 + local.get $3 + i32.lt_s + if + local.get $5 + local.get $2 + i32.const 3 + i32.shl + i32.add + local.tee $6 + i32.load offset=4 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + local.get $7 + local.get $0 + local.get $6 + i32.load + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|00 + end + end + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + local.get $7 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $7 + br $__inlined_func$~lib/set/Set#values$6 end + br $folding-inner1 end - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store - local.get $6 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $0 + local.tee $2 i32.store offset=12 - i32.const 0 - local.set $2 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 - local.get $6 + local.get $0 call $~lib/array/Array#get:length - local.get $2 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=16 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -8844,27 +8679,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=16 local.get $0 - local.get $6 + i32.store offset=16 local.get $2 + local.get $0 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 - local.get $0 + local.get $2 call $~lib/set/Set#get:size local.set $0 global.get $~lib/memory/__stack_pointer @@ -9134,18 +8969,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -9846,6 +9669,7 @@ (local $5 i32) (local $6 i32) (local $7 i32) + (local $8 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -9991,215 +9815,193 @@ unreachable end global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store local.get $1 - i32.load offset=16 - local.set $5 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 15 - call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store - local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $5 - i32.const 268435455 - i32.gt_u - if - i32.const 1456 - i32.const 1616 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $5 - local.get $5 - i32.const 8 - i32.le_u - select - i32.const 2 - i32.shl - local.tee $0 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=12 - local.get $6 - local.get $7 - i32.store - local.get $6 - local.get $7 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - local.get $0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 i32.store offset=4 - local.get $6 - local.get $5 - i32.store offset=12 global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - i32.const 0 - local.set $0 - loop $for-loop|00 - local.get $2 - local.get $5 - i32.lt_s - if - local.get $4 - local.get $2 - i32.const 3 - i32.shl - i32.add + block $__inlined_func$~lib/set/Set#values$7 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=8 + local.set $5 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=16 + local.set $3 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 15 + call $~lib/rt/itcms/__new local.tee $7 - i32.load offset=4 - i32.const 1 - i32.and - i32.eqz + i32.store + local.get $3 + i32.const 268435455 + i32.gt_u if - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store - local.get $6 - local.get $0 - local.get $7 - i32.load - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 + i32.const 1456 + i32.const 1616 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $3 + local.get $3 + i32.const 8 + i32.le_u + select + i32.const 2 + i32.shl + local.tee $8 + i32.const 1 + call $~lib/rt/itcms/__new + local.tee $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $0 + i32.store offset=12 + local.get $7 + local.get $0 + i32.store + local.get $7 + local.get $0 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $0 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $8 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=8 + local.get $7 + local.get $3 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $7 + i32.store offset=4 + i32.const 0 + local.set $0 + loop $for-loop|00 + local.get $2 + local.get $3 + i32.lt_s + if + local.get $5 + local.get $2 + i32.const 3 + i32.shl + i32.add + local.tee $6 + i32.load offset=4 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + local.get $7 + local.get $0 + local.get $6 + i32.load + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $for-loop|00 + end end - local.get $2 - i32.const 1 + global.get $~lib/memory/__stack_pointer + local.get $7 + i32.store + local.get $7 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 i32.add - local.set $2 - br $for-loop|00 + global.set $~lib/memory/__stack_pointer + local.get $7 + br $__inlined_func$~lib/set/Set#values$7 end + br $folding-inner1 end - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store - local.get $6 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $6 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $0 + local.tee $2 i32.store offset=12 - i32.const 0 - local.set $2 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=4 - local.get $6 + local.get $0 call $~lib/array/Array#get:length - local.get $2 + local.get $4 i32.gt_s if global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $0 i32.store offset=16 local.get $1 - local.get $6 - local.get $2 + local.get $0 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -10212,27 +10014,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=16 local.get $0 - local.get $6 + i32.store offset=16 local.get $2 + local.get $0 + local.get $4 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $2 + local.get $4 i32.const 1 i32.add - local.set $2 + local.set $4 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $2 i32.store offset=4 - local.get $0 + local.get $2 call $~lib/set/Set#get:size local.set $0 global.get $~lib/memory/__stack_pointer @@ -10502,18 +10304,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -11451,6 +11241,7 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -11596,213 +11387,191 @@ unreachable end global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=16 - local.set $6 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 17 - call $~lib/rt/itcms/__new - local.tee $8 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store - local.get $8 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store offset=12 - local.get $6 - i32.const 134217727 - i32.gt_u - if - i32.const 1456 - i32.const 1616 - i32.const 70 - i32.const 60 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $6 - local.get $6 - i32.const 8 - i32.le_u - select - i32.const 3 - i32.shl - local.tee $9 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=12 - local.get $8 - local.get $7 - i32.store - local.get $8 - local.get $7 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - local.get $9 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $8 i32.store offset=4 - local.get $8 - local.get $6 - i32.store offset=12 global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - loop $for-loop|00 - local.get $3 - local.get $6 - i32.lt_s - if - local.get $5 - local.get $3 - i32.const 4 + block $__inlined_func$~lib/set/Set#values$12 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=8 + local.set $6 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=16 + local.set $4 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 17 + call $~lib/rt/itcms/__new + local.tee $10 + i32.store + local.get $4 + i32.const 134217727 + i32.gt_u + if + i32.const 1456 + i32.const 1616 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $4 + local.get $4 + i32.const 8 + i32.le_u + select + i32.const 3 i32.shl - i32.add local.tee $7 - i32.load offset=8 i32.const 1 - i32.and - i32.eqz - if - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store - local.get $8 - local.get $0 - local.get $7 - i64.load - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 + call $~lib/rt/itcms/__new + local.tee $8 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=12 + local.get $10 + local.get $8 + i32.store + local.get $10 + local.get $8 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + local.get $10 + local.get $8 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + local.get $10 + local.get $7 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + local.get $10 + local.get $4 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=4 + loop $for-loop|00 + local.get $3 + local.get $4 + i32.lt_s + if + local.get $6 + local.get $3 + i32.const 4 + i32.shl + i32.add + local.tee $7 + i32.load offset=8 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store + local.get $10 + local.get $0 + local.get $7 + i64.load + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|00 + end end - local.get $3 - i32.const 1 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store + local.get $10 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 i32.add - local.set $3 - br $for-loop|00 + global.set $~lib/memory/__stack_pointer + local.get $10 + br $__inlined_func$~lib/set/Set#values$12 end + br $folding-inner1 end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store - local.get $8 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $8 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $0 + local.tee $3 i32.store offset=12 - i32.const 0 - local.set $3 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=4 - local.get $8 + local.get $0 call $~lib/array/Array#get:length - local.get $3 + local.get $5 i32.gt_s if global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=16 local.get $1 - local.get $8 - local.get $3 + local.get $0 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -11815,27 +11584,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=16 local.get $0 - local.get $8 + i32.store offset=16 local.get $3 + local.get $0 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $5 i32.const 1 i32.add - local.set $3 + local.set $5 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=4 - local.get $0 + local.get $3 call $~lib/set/Set#get:size local.set $0 global.get $~lib/memory/__stack_pointer @@ -12105,18 +11874,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -12870,6 +12627,7 @@ (local $7 i32) (local $8 i32) (local $9 i32) + (local $10 i32) global.get $~lib/memory/__stack_pointer i32.const 20 i32.sub @@ -12973,255 +12731,233 @@ end global.get $~lib/memory/__stack_pointer local.get $1 - i32.store offset=4 - local.get $1 - local.get $2 - call $~lib/set/Set#add - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - local.get $2 - call $~lib/set/Set#has - i32.eqz - if - i32.const 0 - i32.const 1568 - i32.const 16 - i32.const 5 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i64.const 1 - i64.add - local.set $2 - br $for-loop|1 - end - end - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - call $~lib/set/Set#get:size - i32.const 100 - i32.ne - if - i32.const 0 - i32.const 1568 - i32.const 18 - i32.const 3 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=8 - local.set $5 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store - local.get $1 - i32.load offset=16 - local.set $6 - global.get $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.sub - global.set $~lib/memory/__stack_pointer - global.get $~lib/memory/__stack_pointer - i32.const 1748 - i32.lt_s - br_if $folding-inner1 - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store - global.get $~lib/memory/__stack_pointer - i64.const 0 - i64.store offset=8 - global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.const 19 - call $~lib/rt/itcms/__new - local.tee $8 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store - local.get $8 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - i32.const 0 - i32.store offset=8 + i32.store offset=4 + local.get $1 + local.get $2 + call $~lib/set/Set#add + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store offset=4 + local.get $1 + local.get $2 + call $~lib/set/Set#has + i32.eqz + if + i32.const 0 + i32.const 1568 + i32.const 16 + i32.const 5 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i64.const 1 + i64.add + local.set $2 + br $for-loop|1 + end + end global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $1 i32.store offset=4 - local.get $8 - i32.const 0 - i32.store offset=12 - local.get $6 - i32.const 134217727 - i32.gt_u + local.get $1 + call $~lib/set/Set#get:size + i32.const 100 + i32.ne if - i32.const 1456 - i32.const 1616 - i32.const 70 - i32.const 60 + i32.const 0 + i32.const 1568 + i32.const 18 + i32.const 3 call $~lib/builtins/abort unreachable end global.get $~lib/memory/__stack_pointer - i32.const 8 - local.get $6 - local.get $6 - i32.const 8 - i32.le_u - select - i32.const 3 - i32.shl - local.tee $9 - i32.const 1 - call $~lib/rt/itcms/__new - local.tee $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $7 - i32.store offset=12 - local.get $8 - local.get $7 - i32.store - local.get $8 - local.get $7 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - local.get $7 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - local.get $8 - local.get $9 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $1 i32.store offset=4 - local.get $8 - local.get $6 - i32.store offset=12 global.get $~lib/memory/__stack_pointer - i32.const 16 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=4 - loop $for-loop|00 - local.get $3 - local.get $6 - i32.lt_s - if - local.get $5 - local.get $3 - i32.const 4 - i32.shl - i32.add - local.tee $7 + block $__inlined_func$~lib/set/Set#values$17 (result i32) + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.sub + global.set $~lib/memory/__stack_pointer + block $folding-inner0 + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 i32.load offset=8 - i32.const 1 - i32.and - i32.eqz + local.set $6 + global.get $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + local.get $1 + i32.store + local.get $1 + i32.load offset=16 + local.set $4 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.sub + global.set $~lib/memory/__stack_pointer + global.get $~lib/memory/__stack_pointer + i32.const 1748 + i32.lt_s + br_if $folding-inner0 + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store + global.get $~lib/memory/__stack_pointer + i64.const 0 + i64.store offset=8 + global.get $~lib/memory/__stack_pointer + i32.const 16 + i32.const 19 + call $~lib/rt/itcms/__new + local.tee $10 + i32.store + local.get $4 + i32.const 134217727 + i32.gt_u if - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store - local.get $8 - local.get $0 - local.get $7 - i64.load - call $~lib/array/Array#__set - local.get $0 - i32.const 1 - i32.add - local.set $0 + i32.const 1456 + i32.const 1616 + i32.const 70 + i32.const 60 + call $~lib/builtins/abort + unreachable end - local.get $3 + global.get $~lib/memory/__stack_pointer + i32.const 8 + local.get $4 + local.get $4 + i32.const 8 + i32.le_u + select + i32.const 3 + i32.shl + local.tee $7 i32.const 1 + call $~lib/rt/itcms/__new + local.tee $8 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $8 + i32.store offset=12 + local.get $10 + local.get $8 + i32.store + local.get $10 + local.get $8 + call $~lib/rt/itcms/__link + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + local.get $10 + local.get $8 + i32.store offset=4 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + local.get $10 + local.get $7 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=8 + local.get $10 + local.get $4 + i32.store offset=12 + global.get $~lib/memory/__stack_pointer + i32.const 16 i32.add - local.set $3 - br $for-loop|00 + global.set $~lib/memory/__stack_pointer + local.get $10 + i32.store offset=4 + loop $for-loop|00 + local.get $3 + local.get $4 + i32.lt_s + if + local.get $6 + local.get $3 + i32.const 4 + i32.shl + i32.add + local.tee $7 + i32.load offset=8 + i32.const 1 + i32.and + i32.eqz + if + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store + local.get $10 + local.get $0 + local.get $7 + i64.load + call $~lib/array/Array#__set + local.get $0 + i32.const 1 + i32.add + local.set $0 + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $for-loop|00 + end + end + global.get $~lib/memory/__stack_pointer + local.get $10 + i32.store + local.get $10 + local.get $0 + call $~lib/array/Array#set:length + global.get $~lib/memory/__stack_pointer + i32.const 8 + i32.add + global.set $~lib/memory/__stack_pointer + local.get $10 + br $__inlined_func$~lib/set/Set#values$17 end + br $folding-inner1 end - global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store - local.get $8 - local.get $0 - call $~lib/array/Array#set:length - global.get $~lib/memory/__stack_pointer - i32.const 8 - i32.add - global.set $~lib/memory/__stack_pointer - local.get $8 + local.tee $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer call $~lib/set/Set#constructor - local.tee $0 + local.tee $3 i32.store offset=12 - i32.const 0 - local.set $3 loop $for-loop|2 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=4 - local.get $8 + local.get $0 call $~lib/array/Array#get:length - local.get $3 + local.get $5 i32.gt_s if global.get $~lib/memory/__stack_pointer local.get $1 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $8 + local.get $0 i32.store offset=16 local.get $1 - local.get $8 - local.get $3 + local.get $0 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#has i32.eqz @@ -13234,27 +12970,27 @@ unreachable end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $8 - i32.store offset=16 local.get $0 - local.get $8 + i32.store offset=16 local.get $3 + local.get $0 + local.get $5 call $~lib/array/Array#__get call $~lib/set/Set#add - local.get $3 + local.get $5 i32.const 1 i32.add - local.set $3 + local.set $5 br $for-loop|2 end end global.get $~lib/memory/__stack_pointer - local.get $0 + local.get $3 i32.store offset=4 - local.get $0 + local.get $3 call $~lib/set/Set#get:size local.set $0 global.get $~lib/memory/__stack_pointer @@ -13524,18 +13260,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -14049,8 +13773,8 @@ (func $~lib/set/Set#values (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 f32) + (local $3 f32) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) @@ -14058,11 +13782,11 @@ i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -14071,14 +13795,14 @@ i32.store local.get $0 i32.load offset=8 - local.set $3 + local.set $4 + global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.get $0 i32.store local.get $0 i32.load offset=16 - local.set $5 - global.get $~lib/memory/__stack_pointer + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 16 i32.sub @@ -14086,7 +13810,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -14097,36 +13821,9 @@ i32.const 16 i32.const 21 call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 + local.tee $2 i32.store local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $5 i32.const 268435455 i32.gt_u if @@ -14139,8 +13836,8 @@ end global.get $~lib/memory/__stack_pointer i32.const 8 - local.get $5 - local.get $5 + local.get $6 + local.get $6 i32.const 8 i32.le_u select @@ -14150,50 +13847,52 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer local.get $7 i32.store offset=12 - local.get $6 + local.get $2 local.get $7 i32.store - local.get $6 + local.get $2 local.get $7 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 + local.get $2 + i32.store offset=8 + local.get $2 local.get $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 + local.get $2 + i32.store offset=8 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=8 + local.get $2 local.get $6 - i32.store offset=4 - local.get $6 - local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store offset=4 + i32.const 0 + local.set $0 loop $for-loop|0 - local.get $2 local.get $5 + local.get $6 i32.lt_s if - local.get $3 - local.get $2 + local.get $4 + local.get $5 i32.const 3 i32.shl i32.add @@ -14204,16 +13903,16 @@ i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $7 f32.load - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -14221,19 +13920,19 @@ global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $0 - local.get $6 + local.get $1 + local.get $2 i32.load offset=12 i32.ge_u if - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -14244,8 +13943,8 @@ call $~lib/builtins/abort unreachable end - local.get $6 - local.get $0 + local.get $2 + local.get $1 i32.const 1 i32.add local.tee $7 @@ -14253,46 +13952,46 @@ i32.const 1 call $~lib/array/ensureCapacity global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 + local.get $2 local.get $7 i32.store offset=12 end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 2 i32.shl i32.add - local.get $4 + local.get $3 f32.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer end - local.get $2 + local.get $5 i32.const 1 i32.add - local.set $2 + local.set $5 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 - local.get $1 + local.get $2 + local.get $0 call $~lib/array/Array#set:length global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 return end i32.const 34544 @@ -14970,18 +14669,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -15537,8 +15224,8 @@ (func $~lib/set/Set#values (param $0 i32) (result i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 f64) + (local $3 f64) + (local $4 i32) (local $5 i32) (local $6 i32) (local $7 i32) @@ -15546,11 +15233,11 @@ i32.const 8 i32.sub global.set $~lib/memory/__stack_pointer - block $folding-inner1 + block $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -15559,14 +15246,14 @@ i32.store local.get $0 i32.load offset=8 - local.set $3 + local.set $4 + global.get $~lib/memory/__stack_pointer global.get $~lib/memory/__stack_pointer local.get $0 i32.store local.get $0 i32.load offset=16 - local.set $5 - global.get $~lib/memory/__stack_pointer + local.set $6 global.get $~lib/memory/__stack_pointer i32.const 16 i32.sub @@ -15574,7 +15261,7 @@ global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i64.const 0 i64.store @@ -15585,36 +15272,9 @@ i32.const 16 i32.const 23 call $~lib/rt/itcms/__new - local.tee $6 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 + local.tee $2 i32.store local.get $6 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 - i32.const 0 - i32.store offset=12 - local.get $5 i32.const 134217727 i32.gt_u if @@ -15627,8 +15287,8 @@ end global.get $~lib/memory/__stack_pointer i32.const 8 - local.get $5 - local.get $5 + local.get $6 + local.get $6 i32.const 8 i32.le_u select @@ -15638,50 +15298,52 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $7 - i32.store offset=8 - global.get $~lib/memory/__stack_pointer - local.get $6 i32.store offset=4 global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=8 + global.get $~lib/memory/__stack_pointer local.get $7 i32.store offset=12 - local.get $6 + local.get $2 local.get $7 i32.store - local.get $6 + local.get $2 local.get $7 call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 + local.get $2 + i32.store offset=8 + local.get $2 local.get $7 i32.store offset=4 global.get $~lib/memory/__stack_pointer - local.get $6 - i32.store offset=4 - local.get $6 + local.get $2 + i32.store offset=8 + local.get $2 local.get $0 i32.store offset=8 global.get $~lib/memory/__stack_pointer + local.get $2 + i32.store offset=8 + local.get $2 local.get $6 - i32.store offset=4 - local.get $6 - local.get $5 i32.store offset=12 global.get $~lib/memory/__stack_pointer i32.const 16 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store offset=4 + i32.const 0 + local.set $0 loop $for-loop|0 - local.get $2 local.get $5 + local.get $6 i32.lt_s if - local.get $3 - local.get $2 + local.get $4 + local.get $5 i32.const 4 i32.shl i32.add @@ -15692,16 +15354,16 @@ i32.eqz if global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $1 - local.tee $0 + local.get $0 + local.tee $1 i32.const 1 i32.add - local.set $1 + local.set $0 local.get $7 f64.load - local.set $4 + local.set $3 global.get $~lib/memory/__stack_pointer i32.const 4 i32.sub @@ -15709,19 +15371,19 @@ global.get $~lib/memory/__stack_pointer i32.const 1748 i32.lt_s - br_if $folding-inner1 + br_if $folding-inner0 global.get $~lib/memory/__stack_pointer i32.const 0 i32.store global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $0 - local.get $6 + local.get $1 + local.get $2 i32.load offset=12 i32.ge_u if - local.get $0 + local.get $1 i32.const 0 i32.lt_s if @@ -15732,8 +15394,8 @@ call $~lib/builtins/abort unreachable end - local.get $6 - local.get $0 + local.get $2 + local.get $1 i32.const 1 i32.add local.tee $7 @@ -15741,46 +15403,46 @@ i32.const 1 call $~lib/array/ensureCapacity global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 + local.get $2 local.get $7 i32.store offset=12 end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 + local.get $2 i32.load offset=4 - local.get $0 + local.get $1 i32.const 3 i32.shl i32.add - local.get $4 + local.get $3 f64.store global.get $~lib/memory/__stack_pointer i32.const 4 i32.add global.set $~lib/memory/__stack_pointer end - local.get $2 + local.get $5 i32.const 1 i32.add - local.set $2 + local.set $5 br $for-loop|0 end end global.get $~lib/memory/__stack_pointer - local.get $6 + local.get $2 i32.store - local.get $6 - local.get $1 + local.get $2 + local.get $0 call $~lib/array/Array#set:length global.get $~lib/memory/__stack_pointer i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - local.get $6 + local.get $2 return end i32.const 34544 diff --git a/tests/compiler/std/symbol.debug.wat b/tests/compiler/std/symbol.debug.wat index 9baedf249c..b58e13f02a 100644 --- a/tests/compiler/std/symbol.debug.wat +++ b/tests/compiler/std/symbol.debug.wat @@ -2400,16 +2400,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map<~lib/string/String,usize>#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map<~lib/string/String,usize>#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/rt/common/OBJECT#get:rtSize (param $this i32) (result i32) local.get $this i32.load offset=16 @@ -2578,6 +2568,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $"~lib/map/Map<~lib/string/String,usize>#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map<~lib/string/String,usize>#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $"~lib/map/Map#set:buckets" (param $this i32) (param $buckets i32) local.get $this local.get $buckets @@ -2606,16 +2606,6 @@ local.get $entriesCapacity i32.store offset=12 ) - (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) - local.get $this - local.get $entriesOffset - i32.store offset=16 - ) - (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) - local.get $this - local.get $entriesCount - i32.store offset=20 - ) (func $~lib/util/hash/HASH (param $key i32) (result i32) (local $key|1 i32) (local $len i32) @@ -2735,6 +2725,16 @@ local.get $taggedNext i32.store offset=8 ) + (func $"~lib/map/Map#set:entriesOffset" (param $this i32) (param $entriesOffset i32) + local.get $this + local.get $entriesOffset + i32.store offset=16 + ) + (func $"~lib/map/Map#set:entriesCount" (param $this i32) (param $entriesCount i32) + local.get $this + local.get $entriesCount + i32.store offset=20 + ) (func $~lib/rt/__visit_globals (param $0 i32) (local $1 i32) global.get $~lib/symbol/stringToId @@ -2960,22 +2960,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map<~lib/string/String,usize>#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map<~lib/string/String,usize>#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -4066,22 +4050,6 @@ local.get $this local.set $1 global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesOffset" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 - i32.const 0 - call $"~lib/map/Map#set:entriesCount" - local.get $this - local.set $1 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/std/symbol.release.wat b/tests/compiler/std/symbol.release.wat index 39b4ead273..699d8a0915 100644 --- a/tests/compiler/std/symbol.release.wat +++ b/tests/compiler/std/symbol.release.wat @@ -206,7 +206,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$246 + block $__inlined_func$~lib/rt/itcms/Object#unlink$242 local.get $0 i32.load offset=4 i32.const -4 @@ -230,7 +230,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$246 + br $__inlined_func$~lib/rt/itcms/Object#unlink$242 end local.get $0 i32.load offset=8 @@ -2193,7 +2193,7 @@ end end end - block $__inlined_func$~lib/util/string/compareImpl$88 + block $__inlined_func$~lib/util/string/compareImpl$86 loop $while-continue|1 local.get $0 local.tee $3 @@ -2213,7 +2213,7 @@ local.get $4 local.get $5 i32.ne - br_if $__inlined_func$~lib/util/string/compareImpl$88 + br_if $__inlined_func$~lib/util/string/compareImpl$86 local.get $2 i32.const 2 i32.add @@ -3511,7 +3511,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store - block $__inlined_func$~lib/string/String#concat$253 + block $__inlined_func$~lib/string/String#concat$249 local.get $1 i32.const 20 i32.sub @@ -3530,7 +3530,7 @@ global.set $~lib/memory/__stack_pointer i32.const 1888 local.set $0 - br $__inlined_func$~lib/string/String#concat$253 + br $__inlined_func$~lib/string/String#concat$249 end global.get $~lib/memory/__stack_pointer local.get $0 @@ -3884,18 +3884,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer @@ -3966,18 +3954,6 @@ i32.const 4 i32.store offset=12 global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=16 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=20 - global.get $~lib/memory/__stack_pointer i32.const 12 i32.add global.set $~lib/memory/__stack_pointer diff --git a/tests/compiler/std/typedarray.debug.wat b/tests/compiler/std/typedarray.debug.wat index 9b7671a355..3a9a3dfbd7 100644 --- a/tests/compiler/std/typedarray.debug.wat +++ b/tests/compiler/std/typedarray.debug.wat @@ -14505,30 +14505,6 @@ local.tee $this i32.store end - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:buffer - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:dataStart - local.get $this - local.set $4 - global.get $~lib/memory/__stack_pointer - local.get $4 - i32.store offset=4 - local.get $4 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#set:byteLength local.get $length i32.const 1073741820 local.get $alignLog2 @@ -14550,7 +14526,7 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $buffer - i32.store offset=8 + i32.store offset=4 i32.const 2 global.get $~lib/shared/runtime/Runtime.Incremental i32.ne @@ -14559,7 +14535,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer local.set $4 @@ -14572,7 +14548,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $buffer call $~lib/arraybuffer/ArrayBufferView#set:dataStart @@ -14580,7 +14556,7 @@ local.set $4 global.get $~lib/memory/__stack_pointer local.get $4 - i32.store offset=4 + i32.store offset=8 local.get $4 local.get $length call $~lib/arraybuffer/ArrayBufferView#set:byteLength diff --git a/tests/compiler/std/typedarray.release.wat b/tests/compiler/std/typedarray.release.wat index 8dd3afe263..bfe977ef96 100644 --- a/tests/compiler/std/typedarray.release.wat +++ b/tests/compiler/std/typedarray.release.wat @@ -766,7 +766,7 @@ local.get $1 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$1403 + block $__inlined_func$~lib/rt/itcms/Object#unlink$1400 local.get $0 i32.load offset=4 i32.const -4 @@ -790,7 +790,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$1403 + br $__inlined_func$~lib/rt/itcms/Object#unlink$1400 end local.get $0 i32.load offset=8 @@ -9445,27 +9445,6 @@ local.tee $0 i32.store end - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store - local.get $0 - i32.const 0 - call $~lib/rt/itcms/__link - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=4 - global.get $~lib/memory/__stack_pointer - local.get $0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 local.get $1 i32.const 1073741820 local.get $2 @@ -9487,10 +9466,10 @@ i32.const 1 call $~lib/rt/itcms/__new local.tee $2 - i32.store offset=8 + i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 global.get $~lib/memory/__stack_pointer local.get $2 i32.store offset=12 @@ -9502,13 +9481,13 @@ call $~lib/rt/itcms/__link global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 local.get $2 i32.store offset=4 global.get $~lib/memory/__stack_pointer local.get $0 - i32.store offset=4 + i32.store offset=8 local.get $0 local.get $1 i32.store offset=8 @@ -12342,7 +12321,7 @@ i32.lt_s select local.set $0 - block $__inlined_func$~lib/util/bytes/FILL$202 + block $__inlined_func$~lib/util/bytes/FILL$199 local.get $1 i32.eqz local.get $1 @@ -12367,7 +12346,7 @@ i32.shl memory.fill end - br $__inlined_func$~lib/util/bytes/FILL$202 + br $__inlined_func$~lib/util/bytes/FILL$199 end loop $for-loop|0 local.get $0 @@ -35306,7 +35285,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$1408 + block $__inlined_func$~lib/util/string/joinIntegerArray$1405 local.get $0 i32.const 1 i32.sub @@ -35320,7 +35299,7 @@ global.set $~lib/memory/__stack_pointer i32.const 7776 local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray$1408 + br $__inlined_func$~lib/util/string/joinIntegerArray$1405 end local.get $6 i32.eqz @@ -35333,7 +35312,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$1408 + br $__inlined_func$~lib/util/string/joinIntegerArray$1405 end global.get $~lib/memory/__stack_pointer i32.const 9584 @@ -35426,7 +35405,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$1408 + br $__inlined_func$~lib/util/string/joinIntegerArray$1405 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -35560,7 +35539,7 @@ end end end - block $__inlined_func$~lib/util/string/compareImpl$714 + block $__inlined_func$~lib/util/string/compareImpl$711 loop $while-continue|1 local.get $0 local.tee $3 @@ -35580,7 +35559,7 @@ local.get $4 local.get $5 i32.ne - br_if $__inlined_func$~lib/util/string/compareImpl$714 + br_if $__inlined_func$~lib/util/string/compareImpl$711 local.get $2 i32.const 2 i32.add @@ -35654,7 +35633,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$1409 + block $__inlined_func$~lib/util/string/joinIntegerArray$1406 local.get $0 i32.const 1 i32.sub @@ -35668,7 +35647,7 @@ global.set $~lib/memory/__stack_pointer i32.const 7776 local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray$1409 + br $__inlined_func$~lib/util/string/joinIntegerArray$1406 end local.get $6 i32.eqz @@ -35681,7 +35660,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$1409 + br $__inlined_func$~lib/util/string/joinIntegerArray$1406 end global.get $~lib/memory/__stack_pointer i32.const 9584 @@ -35774,7 +35753,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$1409 + br $__inlined_func$~lib/util/string/joinIntegerArray$1406 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -35869,7 +35848,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$1410 + block $__inlined_func$~lib/util/string/joinIntegerArray$1407 local.get $0 i32.const 1 i32.sub @@ -35883,7 +35862,7 @@ global.set $~lib/memory/__stack_pointer i32.const 7776 local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray$1410 + br $__inlined_func$~lib/util/string/joinIntegerArray$1407 end local.get $6 i32.eqz @@ -35896,7 +35875,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$1410 + br $__inlined_func$~lib/util/string/joinIntegerArray$1407 end global.get $~lib/memory/__stack_pointer i32.const 9584 @@ -35993,7 +35972,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$1410 + br $__inlined_func$~lib/util/string/joinIntegerArray$1407 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -36059,7 +36038,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$1411 + block $__inlined_func$~lib/util/string/joinIntegerArray$1408 local.get $0 i32.const 1 i32.sub @@ -36073,7 +36052,7 @@ global.set $~lib/memory/__stack_pointer i32.const 7776 local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray$1411 + br $__inlined_func$~lib/util/string/joinIntegerArray$1408 end local.get $6 i32.eqz @@ -36086,7 +36065,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$1411 + br $__inlined_func$~lib/util/string/joinIntegerArray$1408 end global.get $~lib/memory/__stack_pointer i32.const 9584 @@ -36183,7 +36162,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$1411 + br $__inlined_func$~lib/util/string/joinIntegerArray$1408 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -36249,7 +36228,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$1412 + block $__inlined_func$~lib/util/string/joinIntegerArray$1409 local.get $0 i32.const 1 i32.sub @@ -36263,7 +36242,7 @@ global.set $~lib/memory/__stack_pointer i32.const 7776 local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray$1412 + br $__inlined_func$~lib/util/string/joinIntegerArray$1409 end local.get $6 i32.eqz @@ -36276,7 +36255,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$1412 + br $__inlined_func$~lib/util/string/joinIntegerArray$1409 end global.get $~lib/memory/__stack_pointer i32.const 9584 @@ -36373,7 +36352,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$1412 + br $__inlined_func$~lib/util/string/joinIntegerArray$1409 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -36439,7 +36418,7 @@ global.get $~lib/memory/__stack_pointer i64.const 0 i64.store - block $__inlined_func$~lib/util/string/joinIntegerArray$1413 + block $__inlined_func$~lib/util/string/joinIntegerArray$1410 local.get $0 i32.const 1 i32.sub @@ -36453,7 +36432,7 @@ global.set $~lib/memory/__stack_pointer i32.const 7776 local.set $0 - br $__inlined_func$~lib/util/string/joinIntegerArray$1413 + br $__inlined_func$~lib/util/string/joinIntegerArray$1410 end local.get $6 i32.eqz @@ -36466,7 +36445,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$1413 + br $__inlined_func$~lib/util/string/joinIntegerArray$1410 end global.get $~lib/memory/__stack_pointer i32.const 9584 @@ -36563,7 +36542,7 @@ i32.const 8 i32.add global.set $~lib/memory/__stack_pointer - br $__inlined_func$~lib/util/string/joinIntegerArray$1413 + br $__inlined_func$~lib/util/string/joinIntegerArray$1410 end global.get $~lib/memory/__stack_pointer i32.const 8 @@ -37008,7 +36987,7 @@ global.get $~lib/memory/__stack_pointer i32.const 0 i32.store - block $__inlined_func$~lib/util/number/utoa64$749 + block $__inlined_func$~lib/util/number/utoa64$746 local.get $3 i64.eqz if @@ -37018,7 +36997,7 @@ global.set $~lib/memory/__stack_pointer i32.const 8000 local.set $1 - br $__inlined_func$~lib/util/number/utoa64$749 + br $__inlined_func$~lib/util/number/utoa64$746 end local.get $3 i64.const 4294967295 diff --git a/tests/compiler/switch.debug.wat b/tests/compiler/switch.debug.wat index 29504e6521..5f36ae38e5 100644 --- a/tests/compiler/switch.debug.wat +++ b/tests/compiler/switch.debug.wat @@ -3301,14 +3301,6 @@ local.get $2 i32.store offset=4 local.get $2 - i32.const 0 - call $switch/FooClass#set:value - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 local.get $value call $switch/FooClass#set:value local.get $this @@ -3468,14 +3460,6 @@ local.get $2 i32.store offset=4 local.get $2 - i32.const 0 - call $switch/BarClass#set:value - local.get $this - local.set $2 - global.get $~lib/memory/__stack_pointer - local.get $2 - i32.store offset=4 - local.get $2 local.get $value call $switch/BarClass#set:value local.get $this diff --git a/tests/compiler/switch.release.wat b/tests/compiler/switch.release.wat index 95b2826eb3..ed02a77d96 100644 --- a/tests/compiler/switch.release.wat +++ b/tests/compiler/switch.release.wat @@ -160,7 +160,7 @@ local.get $0 global.set $~lib/rt/itcms/iter end - block $__inlined_func$~lib/rt/itcms/Object#unlink$186 + block $__inlined_func$~lib/rt/itcms/Object#unlink$184 local.get $1 i32.load offset=4 i32.const -4 @@ -184,7 +184,7 @@ call $~lib/builtins/abort unreachable end - br $__inlined_func$~lib/rt/itcms/Object#unlink$186 + br $__inlined_func$~lib/rt/itcms/Object#unlink$184 end local.get $1 i32.load offset=8 @@ -1884,7 +1884,7 @@ global.get $~lib/memory/__stack_pointer local.get $1 i32.store - block $__inlined_func$~lib/string/String#concat$191 + block $__inlined_func$~lib/string/String#concat$189 local.get $1 i32.const 20 i32.sub @@ -1903,7 +1903,7 @@ global.set $~lib/memory/__stack_pointer i32.const 1296 local.set $0 - br $__inlined_func$~lib/string/String#concat$191 + br $__inlined_func$~lib/string/String#concat$189 end global.get $~lib/memory/__stack_pointer local.get $0 @@ -2061,12 +2061,6 @@ local.get $1 i32.store offset=4 local.get $1 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 local.get $0 i32.store global.get $~lib/memory/__stack_pointer @@ -2220,12 +2214,6 @@ local.get $1 i32.store offset=4 local.get $1 - i32.const 0 - i32.store - global.get $~lib/memory/__stack_pointer - local.get $1 - i32.store offset=4 - local.get $1 local.get $0 i32.store global.get $~lib/memory/__stack_pointer