From 74789c9c1e5d24374eb329afb7bf2f9260b93de5 Mon Sep 17 00:00:00 2001 From: dcode Date: Tue, 19 Mar 2019 14:40:37 +0100 Subject: [PATCH] aliased makeCallInline, unmanaged rt alloc --- src/builtins.ts | 18 +- src/common.ts | 1 + src/compiler.ts | 185 ++-- src/program.ts | 6 + std/assembly/runtime.ts | 7 + tests/compiler/call-super.optimized.wat | 12 +- tests/compiler/call-super.untouched.wat | 128 ++- tests/compiler/constructor.optimized.wat | 10 +- tests/compiler/constructor.untouched.wat | 118 ++- tests/compiler/exports.optimized.wat | 4 +- tests/compiler/exports.untouched.wat | 66 +- tests/compiler/getter-call.optimized.wat | 4 +- tests/compiler/getter-call.untouched.wat | 32 +- tests/compiler/inlining.optimized.wat | 4 +- tests/compiler/inlining.untouched.wat | 36 +- .../new-without-allocator.untouched.wat | 26 +- tests/compiler/number.optimized.wat | 4 +- tests/compiler/number.untouched.wat | 4 +- tests/compiler/object-literal.optimized.wat | 4 +- tests/compiler/object-literal.untouched.wat | 54 +- .../optional-typeparameters.optimized.wat | 4 +- .../optional-typeparameters.untouched.wat | 42 +- .../compiler/std/array-literal.optimized.wat | 6 +- .../compiler/std/array-literal.untouched.wat | 90 +- tests/compiler/std/array.optimized.wat | 16 +- tests/compiler/std/array.untouched.wat | 676 +++++++------- tests/compiler/std/arraybuffer.optimized.wat | 14 +- tests/compiler/std/arraybuffer.untouched.wat | 60 +- tests/compiler/std/dataview.optimized.wat | 10 +- tests/compiler/std/dataview.untouched.wat | 108 ++- tests/compiler/std/date.optimized.wat | 4 +- tests/compiler/std/date.untouched.wat | 32 +- tests/compiler/std/map.optimized.wat | 4 +- tests/compiler/std/map.untouched.wat | 312 ++++--- tests/compiler/std/new.optimized.wat | 4 +- tests/compiler/std/new.untouched.wat | 28 +- .../std/operator-overloading.optimized.wat | 4 +- .../std/operator-overloading.untouched.wat | 104 ++- tests/compiler/std/runtime.optimized.wat | 6 +- tests/compiler/std/runtime.untouched.wat | 6 +- tests/compiler/std/set.optimized.wat | 4 +- tests/compiler/std/set.untouched.wat | 292 +++--- tests/compiler/std/static-array.untouched.wat | 2 +- tests/compiler/std/string-utf8.optimized.wat | 4 +- tests/compiler/std/string-utf8.untouched.wat | 4 +- tests/compiler/std/string.optimized.wat | 8 +- tests/compiler/std/string.untouched.wat | 108 +-- tests/compiler/std/symbol.optimized.wat | 4 +- tests/compiler/std/symbol.untouched.wat | 94 +- tests/compiler/std/typedarray.optimized.wat | 6 +- tests/compiler/std/typedarray.untouched.wat | 868 +++++++++--------- 51 files changed, 1992 insertions(+), 1655 deletions(-) diff --git a/src/builtins.ts b/src/builtins.ts index 53b72e3f..bb6b4cf0 100644 --- a/src/builtins.ts +++ b/src/builtins.ts @@ -4293,20 +4293,10 @@ export function compileBuiltinArraySetWithValue( let linkPrototype = assert(program.linkPrototype); let linkInstance = compiler.resolver.resolveFunction(linkPrototype, [ type, target.type ]); if (!linkInstance) return module.createUnreachable(); - let previousFlow = compiler.currentFlow; - let tempValue = previousFlow.getTempLocal(type, false); - let flow = Flow.createInline(previousFlow.parentFunction, linkInstance); - compiler.currentFlow = flow; - flow.addScopedAlias(linkInstance.signature.getParameterName(0), type, tempValue.index); - flow.addScopedAlias(linkInstance.signature.getParameterName(1), target.type, assert(tempThis).index); - let body = compiler.compileFunctionBody(linkInstance); - body.unshift( - module.createSetLocal(tempValue.index, valueExpr) - ); - previousFlow.freeTempLocal(tempValue); - previousFlow.freeTempLocal(tempThis!); tempThis = null; - compiler.currentFlow = previousFlow; - valueExpr = module.createBlock(flow.inlineReturnLabel, body, nativeSizeType); + valueExpr = compiler.makeCallInline(linkInstance, [ + valueExpr, + module.createGetLocal(assert(tempThis).index, nativeSizeType) + ], 0, true); // handle Uint8ClampedArray: value = ~(value >> 31) & (((255 - value) >> 31) | value) } else if (target.internalName == BuiltinSymbols.Uint8ClampedArray) { diff --git a/src/common.ts b/src/common.ts index 4b379285..91d64faa 100644 --- a/src/common.ts +++ b/src/common.ts @@ -182,6 +182,7 @@ export namespace LibrarySymbols { // runtime export const abort = "abort"; export const ALLOCATE = "ALLOCATE"; + export const ALLOCATE_UNMANAGED = "ALLOCATE_UNMANAGED"; export const REALLOCATE = "REALLOCATE"; export const DISCARD = "DISCARD"; export const REGISTER = "REGISTER"; diff --git a/src/compiler.ts b/src/compiler.ts index 0cd75989..66a90417 100644 --- a/src/compiler.ts +++ b/src/compiler.ts @@ -1086,16 +1086,15 @@ export class Compiler extends DiagnosticEmitter { } /** Compiles the body of a function within the specified flow. */ - compileFunctionBody(instance: Function): ExpressionRef[] { + compileFunctionBody(instance: Function, stmts: ExpressionRef[] | null = null): ExpressionRef[] { var module = this.module; var bodyNode = assert(instance.prototype.bodyNode); var returnType = instance.signature.returnType; var flow = this.currentFlow; // compile statements - var stmts: BinaryenExportRef[]; if (bodyNode.kind == NodeKind.BLOCK) { - stmts = this.compileStatements((bodyNode).statements, true); + stmts = this.compileStatements((bodyNode).statements, true, stmts); } else { // must be an expression statement if not a block assert(bodyNode.kind == NodeKind.EXPRESSION); @@ -1114,7 +1113,8 @@ export class Compiler extends DiagnosticEmitter { ); flow.set(FlowFlags.RETURNS); if (!flow.canOverflow(stmt, returnType)) flow.set(FlowFlags.RETURNS_WRAPPED); - stmts = [ stmt ]; + if (!stmts) stmts = [ stmt ]; + else stmts.push(stmt); } // make the main function call `start` implicitly, but only once @@ -1574,10 +1574,16 @@ export class Compiler extends DiagnosticEmitter { return stmt; } - compileStatements(statements: Statement[], isBody: bool = false): ExpressionRef[] { + compileStatements( + statements: Statement[], + isBody: bool = false, + stmts: ExpressionRef[] | null = null + ): ExpressionRef[] { var numStatements = statements.length; - var stmts = new Array(numStatements); - stmts.length = 0; + if (!stmts) { + stmts = new Array(numStatements); + stmts.length = 0; + } var flow = this.currentFlow; for (let i = 0; i < numStatements; ++i) { let stmt = this.compileStatement(statements[i], isBody && i == numStatements - 1); @@ -5471,13 +5477,13 @@ export class Compiler extends DiagnosticEmitter { ): ExpressionRef { var numArguments = argumentExpressions.length; var signature = instance.signature; - if (!this.checkCallSignature( // reports signature, numArguments, thisArg != 0, reportNode )) { + this.currentType = signature.returnType; return this.module.createUnreachable(); } @@ -5518,23 +5524,62 @@ export class Compiler extends DiagnosticEmitter { return this.makeCallDirect(instance, operands, reportNode); } - // Depends on being pre-checked in compileCallDirect + compileCallInline( + instance: Function, + argumentExpressions: Expression[], + thisArg: ExpressionRef, + reportNode: Node, + canAlias: bool = false + ): ExpressionRef { + var numArguments = argumentExpressions.length; + var signature = instance.signature; + if (!this.checkCallSignature( // reports + signature, + numArguments, + thisArg != 0, + reportNode + )) { + this.currentType = instance.signature.returnType; + return this.module.createUnreachable(); + } + return this.compileCallInlinePrechecked(instance, argumentExpressions, thisArg, canAlias); + } + private compileCallInlinePrechecked( instance: Function, argumentExpressions: Expression[], thisArg: ExpressionRef = 0, canAlias: bool = false + ): ExpressionRef { + var numArguments = argumentExpressions.length; + var signature = instance.signature; + var parameterTypes = signature.parameterTypes; + var args = new Array(numArguments); + for (let i = 0; i < numArguments; ++i) { + args[i] = this.compileExpression( + argumentExpressions[i], + parameterTypes[i], + ConversionKind.IMPLICIT, + WrapMode.NONE + ); + } + return this.makeCallInline(instance, args, thisArg, canAlias); + } + + makeCallInline( + instance: Function, + args: ExpressionRef[], + thisArg: ExpressionRef = 0, + canAlias: bool = false ): ExpressionRef { var module = this.module; // Create a new inline flow and use it to compile the function as a block var previousFlow = this.currentFlow; var flow = Flow.createInline(previousFlow.parentFunction, instance); - - // Convert provided call arguments to temporary locals. It is important that these are compiled - // here, with their respective locals being blocked. There is no 'makeCallInline'. var body = []; + // Convert provided call arguments to temporary locals if (thisArg) { let classInstance = assert(instance.parent); assert(classInstance.kind == ElementKind.CLASS); let thisType = assert(instance.signature.thisType); @@ -5550,18 +5595,14 @@ export class Compiler extends DiagnosticEmitter { let baseInstance = (classInstance).base; if (baseInstance) flow.addScopedAlias(CommonSymbols.super_, baseInstance.type, thisLocal.index); } + } else { + assert(!instance.signature.thisType); } - - var numArguments = argumentExpressions.length; + var numArguments = args.length; var signature = instance.signature; var parameterTypes = signature.parameterTypes; for (let i = 0; i < numArguments; ++i) { - let paramExpr = this.compileExpression( - argumentExpressions[i], - parameterTypes[i], - ConversionKind.IMPLICIT, - WrapMode.NONE - ); + let paramExpr = args[i]; if (canAlias && getExpressionId(paramExpr) == ExpressionId.GetLocal) { flow.addScopedAlias(signature.getParameterName(i), parameterTypes[i], getGetLocalIndex(paramExpr)); } else { @@ -5601,10 +5642,7 @@ export class Compiler extends DiagnosticEmitter { } // Compile the called function's body in the scope of the inlined flow - { - let stmts = this.compileFunctionBody(instance); - for (let i = 0, k = stmts.length; i < k; ++i) body.push(stmts[i]); - } + this.compileFunctionBody(instance, body); // Free any new scoped locals and reset to the original flow flow.freeScopedLocals(); @@ -6679,23 +6717,13 @@ export class Compiler extends DiagnosticEmitter { this.currentType = arrayType; return module.createUnreachable(); } - let previousFlow = this.currentFlow; - let tempLocal = previousFlow.getTempLocal(arrayBufferInstance.type, false); - let flow = Flow.createInline(previousFlow.parentFunction, wrapArrayInstance); - flow.addScopedAlias(wrapArrayInstance.signature.getParameterName(0), arrayBufferInstance.type, tempLocal.index); - this.currentFlow = flow; - let body = this.compileFunctionBody(wrapArrayInstance); - body.unshift( - module.createSetLocal(tempLocal.index, - program.options.isWasm64 - ? this.module.createI64(i64_low(bufferAddress), i64_high(bufferAddress)) - : this.module.createI32(i64_low(bufferAddress)) - ) - ); - previousFlow.freeTempLocal(tempLocal); - this.currentFlow = previousFlow; + let body = this.makeCallInline(wrapArrayInstance, [ + program.options.isWasm64 + ? this.module.createI64(i64_low(bufferAddress), i64_high(bufferAddress)) + : this.module.createI32(i64_low(bufferAddress)) + ], 0, true); this.currentType = arrayType; - return module.createBlock(flow.inlineReturnLabel, body, this.options.nativeSizeType); + return body; } } @@ -6749,16 +6777,10 @@ export class Compiler extends DiagnosticEmitter { valueExpr = module.createUnreachable(); } else { // value = LINK(value, tempThis) - let tempValue = flow.getAndFreeTempLocal(elementType, false); - let inlineFlow = Flow.createInline(flow.parentFunction, linkInstance); - inlineFlow.addScopedAlias(linkInstance.signature.getParameterName(0), elementType, tempValue.index); - inlineFlow.addScopedAlias(linkInstance.signature.getParameterName(1), arrayType, tempThis.index); - this.currentFlow = inlineFlow; - let body = this.compileFunctionBody(linkInstance); - stmts.push( - module.createSetLocal(tempValue.index, valueExpr) - ); - valueExpr = module.createBlock(inlineFlow.inlineReturnLabel, body, nativeElementType); + valueExpr = this.makeCallInline(linkInstance, [ + valueExpr, + module.createGetLocal(tempThis.index, nativeArrayType) + ], 0, true); this.currentFlow = flow; } } @@ -7985,47 +8007,40 @@ export class Compiler extends DiagnosticEmitter { assert(classInstance.program == program); var module = this.module; var options = this.options; - var nativeSizeType = options.nativeSizeType; var classType = classInstance.type; + var body: ExpressionRef; - // ALLOCATE(payloadSize: usize) -> usize - var allocateInstance = assert(program.allocateInstance); - if (!this.compileFunction(allocateInstance)) { - this.currentType = classInstance.type; - return module.createUnreachable(); - } + if (classInstance.hasDecorator(DecoratorFlags.UNMANAGED)) { + // ALLOCATE_UNMANAGED(sizeof()) + let allocateInstance = assert(program.allocateUnmanagedInstance); + body = this.makeCallInline(allocateInstance, [ + options.isWasm64 + ? module.createI64(classInstance.currentMemoryOffset) + : module.createI32(classInstance.currentMemoryOffset) + ], 0, true); - // REGISTER(ref: usize) -> usize - var registerPrototype = assert(program.registerPrototype); - var registerInstance = this.resolver.resolveFunction(registerPrototype, [ classType ]); - if (!registerInstance) { this.currentType = classType; - return module.createUnreachable(); - } + return body; - // REGISTER(ALLOCATE(sizeof())) - var previousFlow = this.currentFlow; - var tempLocal = previousFlow.getTempLocal(classType, false); - var flow = Flow.createInline(previousFlow.parentFunction, registerInstance); - flow.addScopedAlias(registerInstance.signature.getParameterName(0), this.options.usizeType, tempLocal.index); - this.currentFlow = flow; - var body = this.compileFunctionBody(registerInstance); - body.unshift( - module.createSetLocal(tempLocal.index, - module.createCall( - allocateInstance.internalName, [ - options.isWasm64 - ? module.createI64(classInstance.currentMemoryOffset) - : module.createI32(classInstance.currentMemoryOffset) - ], - nativeSizeType - ) - ) - ); - previousFlow.freeTempLocal(tempLocal); - this.currentFlow = previousFlow; + } else { + // REGISTER(ALLOCATE(sizeof())) + let allocateInstance = assert(program.allocateInstance); + let registerPrototype = assert(program.registerPrototype); + let registerInstance = this.resolver.resolveFunction(registerPrototype, [ classType ]); + if (!registerInstance) { + this.currentType = classType; + return module.createUnreachable(); + } + body = this.makeCallInline(registerInstance, [ + this.makeCallInline(allocateInstance, [ + options.isWasm64 + ? module.createI64(classInstance.currentMemoryOffset) + : module.createI32(classInstance.currentMemoryOffset) + ], 0, true) + ], 0, true); + } this.currentType = classType; - return module.createBlock(flow.inlineReturnLabel, body, nativeSizeType); + return body; } /** Makes the initializers for a class's fields. */ diff --git a/src/program.ts b/src/program.ts index a8deb0a9..035b7678 100644 --- a/src/program.ts +++ b/src/program.ts @@ -354,6 +354,8 @@ export class Program extends DiagnosticEmitter { abortInstance: Function | null = null; /** Runtime allocation function. */ allocateInstance: Function | null = null; + /** Unmanaged allocation function. */ + allocateUnmanagedInstance: Function | null = null; /** Runtime reallocation function. */ reallocateInstance: Function | null = null; /** Runtime discard function. */ @@ -804,6 +806,10 @@ export class Program extends DiagnosticEmitter { assert(element.kind == ElementKind.FUNCTION_PROTOTYPE); this.allocateInstance = this.resolver.resolveFunction(element, null); } + if (element = this.lookupGlobal(LibrarySymbols.ALLOCATE_UNMANAGED)) { + assert(element.kind == ElementKind.FUNCTION_PROTOTYPE); + this.allocateUnmanagedInstance = this.resolver.resolveFunction(element, null); + } if (element = this.lookupGlobal(LibrarySymbols.REALLOCATE)) { assert(element.kind == ElementKind.FUNCTION_PROTOTYPE); this.reallocateInstance = this.resolver.resolveFunction(element, null); diff --git a/std/assembly/runtime.ts b/std/assembly/runtime.ts index f30d41db..b19f5adc 100644 --- a/std/assembly/runtime.ts +++ b/std/assembly/runtime.ts @@ -68,6 +68,13 @@ function doAllocate(payloadSize: usize): usize { return changetype(header) + HEADER_SIZE; } +/** Allocates an object explicitly declared as unmanaged and returns a pointer to it. */ +// @ts-ignore: decorator +@unsafe @inline +export function ALLOCATE_UNMANAGED(size: usize): usize { + return memory.allocate(size); +} + /** Reallocates an object if necessary. Returns a pointer to its (moved) payload. */ // @ts-ignore: decorator @unsafe @inline diff --git a/tests/compiler/call-super.optimized.wat b/tests/compiler/call-super.optimized.wat index c6b38110..74c23cbb 100644 --- a/tests/compiler/call-super.optimized.wat +++ b/tests/compiler/call-super.optimized.wat @@ -106,7 +106,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -120,7 +120,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -390,9 +390,7 @@ (func $call-super/test4 (; 13 ;) (type $FUNCSIG$v) (local $0 i32) block (result i32) - block (result i32) - call $call-super/H#constructor - end + call $call-super/H#constructor end local.tee $0 i32.load @@ -445,9 +443,7 @@ (func $call-super/test5 (; 15 ;) (type $FUNCSIG$v) (local $0 i32) block (result i32) - block (result i32) - call $call-super/J#constructor - end + call $call-super/J#constructor end local.tee $0 i32.load diff --git a/tests/compiler/call-super.untouched.wat b/tests/compiler/call-super.untouched.wat index d20fa968..6d121a35 100644 --- a/tests/compiler/call-super.untouched.wat +++ b/tests/compiler/call-super.untouched.wat @@ -133,11 +133,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -145,7 +141,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -160,13 +156,13 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -176,15 +172,19 @@ i32.store local.get $0 ) - (func $call-super/A#constructor (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $call-super/A#constructor (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 4 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 1 @@ -211,14 +211,18 @@ end local.get $0 ) - (func $call-super/B#constructor (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $call-super/B#constructor (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 if (result i32) local.get $0 else - i32.const 8 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + i32.const 8 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 3 @@ -257,7 +261,7 @@ end local.get $0 ) - (func $call-super/test1 (; 9 ;) (type $FUNCSIG$v) + (func $call-super/test1 (; 8 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 call $call-super/B#constructor @@ -289,14 +293,18 @@ unreachable end ) - (func $call-super/C#constructor (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $call-super/C#constructor (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + i32.const 4 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 4 @@ -309,14 +317,18 @@ i32.store local.get $0 ) - (func $call-super/D#constructor (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $call-super/D#constructor (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 if (result i32) local.get $0 else - i32.const 8 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.3 (result i32) + i32.const 8 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 5 @@ -355,7 +367,7 @@ end local.get $0 ) - (func $call-super/test2 (; 12 ;) (type $FUNCSIG$v) + (func $call-super/test2 (; 11 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 call $call-super/D#constructor @@ -387,15 +399,19 @@ unreachable end ) - (func $call-super/E#constructor (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $call-super/E#constructor (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.4 (result i32) + i32.const 4 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 6 @@ -422,14 +438,18 @@ end local.get $0 ) - (func $call-super/F#constructor (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $call-super/F#constructor (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 8 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.5 (result i32) + i32.const 8 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 7 @@ -445,7 +465,7 @@ i32.store offset=4 local.get $0 ) - (func $call-super/test3 (; 15 ;) (type $FUNCSIG$v) + (func $call-super/test3 (; 14 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 call $call-super/F#constructor @@ -477,14 +497,18 @@ unreachable end ) - (func $call-super/G#constructor (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $call-super/G#constructor (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.6 (result i32) + i32.const 4 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 8 @@ -497,14 +521,18 @@ i32.store local.get $0 ) - (func $call-super/H#constructor (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $call-super/H#constructor (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 8 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.7 (result i32) + i32.const 8 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 9 @@ -520,7 +548,7 @@ i32.store offset=4 local.get $0 ) - (func $call-super/test4 (; 18 ;) (type $FUNCSIG$v) + (func $call-super/test4 (; 17 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 call $call-super/H#constructor @@ -552,14 +580,18 @@ unreachable end ) - (func $call-super/I#constructor (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $call-super/I#constructor (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.8 (result i32) + i32.const 4 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 10 @@ -572,14 +604,18 @@ i32.store local.get $0 ) - (func $call-super/J#constructor (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $call-super/J#constructor (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 8 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.9 (result i32) + i32.const 8 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 11 @@ -595,7 +631,7 @@ i32.store offset=4 local.get $0 ) - (func $call-super/test5 (; 21 ;) (type $FUNCSIG$v) + (func $call-super/test5 (; 20 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 call $call-super/J#constructor @@ -627,7 +663,7 @@ unreachable end ) - (func $start:call-super (; 22 ;) (type $FUNCSIG$v) + (func $start:call-super (; 21 ;) (type $FUNCSIG$v) global.get $~lib/memory/HEAP_BASE i32.const 7 i32.add @@ -644,9 +680,9 @@ call $call-super/test4 call $call-super/test5 ) - (func $start (; 23 ;) (type $FUNCSIG$v) + (func $start (; 22 ;) (type $FUNCSIG$v) call $start:call-super ) - (func $null (; 24 ;) (type $FUNCSIG$v) + (func $null (; 23 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/constructor.optimized.wat b/tests/compiler/constructor.optimized.wat index 62ed9113..ac790d76 100644 --- a/tests/compiler/constructor.optimized.wat +++ b/tests/compiler/constructor.optimized.wat @@ -116,7 +116,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -130,7 +130,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -160,14 +160,14 @@ local.get $0 i32.eqz end - if (result i32) + if i32.const 0 call $~lib/runtime/doAllocate i32.const 10 call $~lib/runtime/doRegister - else - local.get $0 + local.set $0 end + local.get $0 ) (func $start:constructor (; 6 ;) (type $FUNCSIG$v) (local $0 i32) diff --git a/tests/compiler/constructor.untouched.wat b/tests/compiler/constructor.untouched.wat index 87791bf4..138362f6 100644 --- a/tests/compiler/constructor.untouched.wat +++ b/tests/compiler/constructor.untouched.wat @@ -143,11 +143,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -155,7 +151,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -170,13 +166,13 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -186,14 +182,18 @@ i32.store local.get $0 ) - (func $constructor/EmptyCtor#constructor (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $constructor/EmptyCtor#constructor (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 1 @@ -203,14 +203,18 @@ end local.get $0 ) - (func $constructor/EmptyCtorWithFieldInit#constructor (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $constructor/EmptyCtorWithFieldInit#constructor (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + i32.const 4 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 3 @@ -223,14 +227,18 @@ i32.store local.get $0 ) - (func $constructor/EmptyCtorWithFieldNoInit#constructor (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $constructor/EmptyCtorWithFieldNoInit#constructor (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + i32.const 4 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 4 @@ -243,14 +251,18 @@ i32.store local.get $0 ) - (func $constructor/None#constructor (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $constructor/None#constructor (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.3 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 5 @@ -260,14 +272,18 @@ end local.get $0 ) - (func $constructor/JustFieldInit#constructor (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $constructor/JustFieldInit#constructor (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.4 (result i32) + i32.const 4 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 6 @@ -280,14 +296,18 @@ i32.store local.get $0 ) - (func $constructor/JustFieldNoInit#constructor (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $constructor/JustFieldNoInit#constructor (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.5 (result i32) + i32.const 4 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 7 @@ -300,11 +320,11 @@ i32.store local.get $0 ) - (func $constructor/CtorReturns#constructor (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $constructor/CtorReturns#constructor (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 0 call $~lib/memory/memory.allocate ) - (func $constructor/CtorConditionallyReturns#constructor (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $constructor/CtorConditionallyReturns#constructor (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) global.get $constructor/b if @@ -316,8 +336,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.6 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 8 @@ -327,15 +351,19 @@ end local.get $0 ) - (func $constructor/CtorAllocates#constructor (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $constructor/CtorAllocates#constructor (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.7 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 9 @@ -348,7 +376,7 @@ drop local.get $0 ) - (func $constructor/CtorConditionallyAllocates#constructor (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $constructor/CtorConditionallyAllocates#constructor (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) global.get $constructor/b if @@ -357,8 +385,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.8 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 10 @@ -374,8 +406,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.1 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.9 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 10 @@ -385,7 +421,7 @@ end local.get $0 ) - (func $start:constructor (; 17 ;) (type $FUNCSIG$v) + (func $start:constructor (; 16 ;) (type $FUNCSIG$v) global.get $~lib/memory/HEAP_BASE i32.const 7 i32.add @@ -427,9 +463,9 @@ call $constructor/CtorConditionallyAllocates#constructor global.set $constructor/ctorConditionallyAllocates ) - (func $start (; 18 ;) (type $FUNCSIG$v) + (func $start (; 17 ;) (type $FUNCSIG$v) call $start:constructor ) - (func $null (; 19 ;) (type $FUNCSIG$v) + (func $null (; 18 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/exports.optimized.wat b/tests/compiler/exports.optimized.wat index ae4c975d..27d47062 100644 --- a/tests/compiler/exports.optimized.wat +++ b/tests/compiler/exports.optimized.wat @@ -131,7 +131,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -145,7 +145,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/exports.untouched.wat b/tests/compiler/exports.untouched.wat index d3178081..b0ba3415 100644 --- a/tests/compiler/exports.untouched.wat +++ b/tests/compiler/exports.untouched.wat @@ -185,11 +185,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 9 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 8 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -197,7 +193,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -212,13 +208,13 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -228,15 +224,19 @@ i32.store local.get $0 ) - (func $exports/Car#constructor (; 11 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $exports/Car#constructor (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 4 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 1 @@ -253,30 +253,34 @@ i32.store local.get $0 ) - (func $exports/Car#get:numDoors (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $exports/Car#get:numDoors (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load ) - (func $exports/Car#set:numDoors (; 13 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $exports/Car#set:numDoors (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) local.get $0 local.get $1 i32.store ) - (func $exports/Car#openDoors (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $exports/Car#openDoors (; 13 ;) (type $FUNCSIG$vi) (param $0 i32) nop ) - (func $exports/vehicles.Car.getNumTires (; 15 ;) (type $FUNCSIG$i) (result i32) + (func $exports/vehicles.Car.getNumTires (; 14 ;) (type $FUNCSIG$i) (result i32) global.get $exports/vehicles.Car.TIRES ) - (func $exports/vehicles.Car#constructor (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $exports/vehicles.Car#constructor (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.1 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + i32.const 4 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 1 @@ -293,19 +297,19 @@ i32.store local.get $0 ) - (func $exports/vehicles.Car#get:numDoors (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $exports/vehicles.Car#get:numDoors (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load ) - (func $exports/vehicles.Car#set:numDoors (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $exports/vehicles.Car#set:numDoors (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) local.get $0 local.get $1 i32.store ) - (func $exports/vehicles.Car#openDoors (; 19 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $exports/vehicles.Car#openDoors (; 18 ;) (type $FUNCSIG$vi) (param $0 i32) nop ) - (func $start (; 20 ;) (type $FUNCSIG$v) + (func $start (; 19 ;) (type $FUNCSIG$v) global.get $~lib/memory/HEAP_BASE i32.const 7 i32.add @@ -317,9 +321,9 @@ global.get $~lib/allocator/arena/startOffset global.set $~lib/allocator/arena/offset ) - (func $null (; 21 ;) (type $FUNCSIG$v) + (func $null (; 20 ;) (type $FUNCSIG$v) ) - (func $exports/subOpt|trampoline (; 22 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $exports/subOpt|trampoline (; 21 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) block $1of1 block $0of1 block $outOfRange @@ -337,20 +341,20 @@ local.get $1 call $exports/subOpt ) - (func $~lib/setargc (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/setargc (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.set $~lib/argc ) - (func $Car#get:doors (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $Car#get:doors (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load ) - (func $Car#set:doors (; 25 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $Car#set:doors (; 24 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) local.get $0 local.get $1 i32.store ) - (func $exports/Car#constructor|trampoline (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $exports/Car#constructor|trampoline (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) block $1of1 block $0of1 block $outOfRange @@ -366,16 +370,16 @@ local.get $1 call $exports/Car#constructor ) - (func $vehicles.Car#get:doors (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $vehicles.Car#get:doors (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load ) - (func $vehicles.Car#set:doors (; 28 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $vehicles.Car#set:doors (; 27 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) local.get $0 local.get $1 i32.store ) - (func $exports/vehicles.Car#constructor|trampoline (; 29 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $exports/vehicles.Car#constructor|trampoline (; 28 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) block $1of1 block $0of1 block $outOfRange diff --git a/tests/compiler/getter-call.optimized.wat b/tests/compiler/getter-call.optimized.wat index e9582f39..164ddf50 100644 --- a/tests/compiler/getter-call.optimized.wat +++ b/tests/compiler/getter-call.optimized.wat @@ -85,7 +85,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -99,7 +99,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/getter-call.untouched.wat b/tests/compiler/getter-call.untouched.wat index 25ed4620..4b271b93 100644 --- a/tests/compiler/getter-call.untouched.wat +++ b/tests/compiler/getter-call.untouched.wat @@ -135,11 +135,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -147,7 +143,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -162,13 +158,13 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -178,14 +174,18 @@ i32.store local.get $0 ) - (func $getter-call/C#constructor (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $getter-call/C#constructor (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 1 @@ -195,13 +195,13 @@ end local.get $0 ) - (func $getter-call/C#get:x~anonymous|0 (; 8 ;) (type $FUNCSIG$i) (result i32) + (func $getter-call/C#get:x~anonymous|0 (; 7 ;) (type $FUNCSIG$i) (result i32) i32.const 42 ) - (func $getter-call/C#get:x (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $getter-call/C#get:x (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 1 ) - (func $getter-call/test (; 10 ;) (type $FUNCSIG$i) (result i32) + (func $getter-call/test (; 9 ;) (type $FUNCSIG$i) (result i32) (local $0 i32) i32.const 0 call $getter-call/C#constructor @@ -212,7 +212,7 @@ call $getter-call/C#get:x call_indirect (type $FUNCSIG$i) ) - (func $start (; 11 ;) (type $FUNCSIG$v) + (func $start (; 10 ;) (type $FUNCSIG$v) global.get $~lib/memory/HEAP_BASE i32.const 7 i32.add @@ -224,6 +224,6 @@ global.get $~lib/allocator/arena/startOffset global.set $~lib/allocator/arena/offset ) - (func $null (; 12 ;) (type $FUNCSIG$v) + (func $null (; 11 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/inlining.optimized.wat b/tests/compiler/inlining.optimized.wat index ea750334..ea701405 100644 --- a/tests/compiler/inlining.optimized.wat +++ b/tests/compiler/inlining.optimized.wat @@ -131,7 +131,7 @@ if i32.const 0 i32.const 48 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -145,7 +145,7 @@ if i32.const 0 i32.const 48 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/inlining.untouched.wat b/tests/compiler/inlining.untouched.wat index c109fa0e..8151e451 100644 --- a/tests/compiler/inlining.untouched.wat +++ b/tests/compiler/inlining.untouched.wat @@ -399,11 +399,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 8 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 7 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -411,7 +407,7 @@ if i32.const 0 i32.const 48 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -426,13 +422,13 @@ if i32.const 0 i32.const 48 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -442,7 +438,7 @@ i32.store local.get $0 ) - (func $inlining/test_ctor (; 10 ;) (type $FUNCSIG$v) + (func $inlining/test_ctor (; 9 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -459,8 +455,12 @@ if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 2 @@ -474,8 +474,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 8 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + i32.const 8 + local.set $4 + local.get $4 + call $~lib/runtime/doAllocate + end local.set $4 local.get $4 i32.const 3 @@ -561,7 +565,7 @@ unreachable end ) - (func $start:inlining (; 11 ;) (type $FUNCSIG$v) + (func $start:inlining (; 10 ;) (type $FUNCSIG$v) call $inlining/test i32.const 3 i32.eq @@ -587,9 +591,9 @@ global.set $~lib/allocator/arena/offset call $inlining/test_ctor ) - (func $start (; 12 ;) (type $FUNCSIG$v) + (func $start (; 11 ;) (type $FUNCSIG$v) call $start:inlining ) - (func $null (; 13 ;) (type $FUNCSIG$v) + (func $null (; 12 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/new-without-allocator.untouched.wat b/tests/compiler/new-without-allocator.untouched.wat index 8536842a..88dd8b39 100644 --- a/tests/compiler/new-without-allocator.untouched.wat +++ b/tests/compiler/new-without-allocator.untouched.wat @@ -49,11 +49,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -61,7 +57,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -76,13 +72,13 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -92,14 +88,18 @@ i32.store local.get $0 ) - (func $new-without-allocator/A#constructor (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $new-without-allocator/A#constructor (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 1 @@ -109,13 +109,13 @@ end local.get $0 ) - (func $new-without-allocator/test (; 8 ;) (type $FUNCSIG$i) (result i32) + (func $new-without-allocator/test (; 7 ;) (type $FUNCSIG$i) (result i32) (local $0 i32) i32.const 0 call $new-without-allocator/A#constructor local.set $0 i32.const 3 ) - (func $null (; 9 ;) (type $FUNCSIG$v) + (func $null (; 8 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index 371c950d..85af8213 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -302,7 +302,7 @@ if i32.const 0 i32.const 464 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -316,7 +316,7 @@ if i32.const 0 i32.const 464 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/number.untouched.wat b/tests/compiler/number.untouched.wat index 3e29c6cc..4f469d75 100644 --- a/tests/compiler/number.untouched.wat +++ b/tests/compiler/number.untouched.wat @@ -399,7 +399,7 @@ if i32.const 0 i32.const 464 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -414,7 +414,7 @@ if i32.const 0 i32.const 464 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/object-literal.optimized.wat b/tests/compiler/object-literal.optimized.wat index d61d4985..55797952 100644 --- a/tests/compiler/object-literal.optimized.wat +++ b/tests/compiler/object-literal.optimized.wat @@ -106,7 +106,7 @@ if i32.const 0 i32.const 48 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -120,7 +120,7 @@ if i32.const 0 i32.const 48 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/object-literal.untouched.wat b/tests/compiler/object-literal.untouched.wat index dde2789c..fc9db2bd 100644 --- a/tests/compiler/object-literal.untouched.wat +++ b/tests/compiler/object-literal.untouched.wat @@ -135,11 +135,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -147,7 +143,7 @@ if i32.const 0 i32.const 48 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -162,13 +158,13 @@ if i32.const 0 i32.const 48 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -178,7 +174,7 @@ i32.store local.get $0 ) - (func $~lib/string/String#get:length (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/string/String#get:length (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 global.get $~lib/runtime/HEADER_SIZE i32.sub @@ -186,7 +182,7 @@ i32.const 1 i32.shr_u ) - (func $~lib/util/string/compareImpl (; 8 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) + (func $~lib/util/string/compareImpl (; 7 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) (local $5 i32) (local $6 i32) (local $7 i32) @@ -239,7 +235,7 @@ end local.get $5 ) - (func $~lib/string/String.__eq (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__eq (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -283,7 +279,7 @@ call $~lib/util/string/compareImpl i32.eqz ) - (func $object-literal/bar (; 10 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $object-literal/bar (; 9 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.load i32.const 1 @@ -311,7 +307,7 @@ unreachable end ) - (func $object-literal/bar2 (; 11 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $object-literal/bar2 (; 10 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.load i32.const 2 @@ -326,7 +322,7 @@ unreachable end ) - (func $object-literal/Foo2#test (; 12 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $object-literal/Foo2#test (; 11 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.load i32.const 3 @@ -341,7 +337,7 @@ unreachable end ) - (func $start:object-literal (; 13 ;) (type $FUNCSIG$v) + (func $start:object-literal (; 12 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -358,8 +354,12 @@ global.set $~lib/allocator/arena/offset block (result i32) block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 8 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 8 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 2 @@ -377,8 +377,12 @@ call $object-literal/bar block (result i32) block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + i32.const 4 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 3 @@ -393,8 +397,12 @@ call $object-literal/bar2 block (result i32) block $~lib/runtime/REGISTER|inlined.1 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + i32.const 4 + local.set $3 + local.get $3 + call $~lib/runtime/doAllocate + end local.set $3 local.get $3 i32.const 3 @@ -408,9 +416,9 @@ end call $object-literal/Foo2#test ) - (func $start (; 14 ;) (type $FUNCSIG$v) + (func $start (; 13 ;) (type $FUNCSIG$v) call $start:object-literal ) - (func $null (; 15 ;) (type $FUNCSIG$v) + (func $null (; 14 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/optional-typeparameters.optimized.wat b/tests/compiler/optional-typeparameters.optimized.wat index bd858688..bdd39584 100644 --- a/tests/compiler/optional-typeparameters.optimized.wat +++ b/tests/compiler/optional-typeparameters.optimized.wat @@ -100,7 +100,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -114,7 +114,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/optional-typeparameters.untouched.wat b/tests/compiler/optional-typeparameters.untouched.wat index c2ce724f..752be6bf 100644 --- a/tests/compiler/optional-typeparameters.untouched.wat +++ b/tests/compiler/optional-typeparameters.untouched.wat @@ -142,11 +142,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 7 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 6 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -154,7 +150,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -169,13 +165,13 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -185,14 +181,18 @@ i32.store local.get $0 ) - (func $optional-typeparameters/TestConcrete#constructor (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $optional-typeparameters/TestConcrete#constructor (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 1 @@ -202,19 +202,23 @@ end local.get $0 ) - (func $optional-typeparameters/TestConcrete#test (; 10 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $optional-typeparameters/TestConcrete#test (; 9 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 local.get $2 i32.add ) - (func $optional-typeparameters/TestDerived#constructor (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $optional-typeparameters/TestDerived#constructor (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 3 @@ -224,12 +228,12 @@ end local.get $0 ) - (func $optional-typeparameters/TestDerived#test (; 12 ;) (type $FUNCSIG$didd) (param $0 i32) (param $1 f64) (param $2 f64) (result f64) + (func $optional-typeparameters/TestDerived#test (; 11 ;) (type $FUNCSIG$didd) (param $0 i32) (param $1 f64) (param $2 f64) (result f64) local.get $1 local.get $2 f64.add ) - (func $start:optional-typeparameters (; 13 ;) (type $FUNCSIG$v) + (func $start:optional-typeparameters (; 12 ;) (type $FUNCSIG$v) i32.const 1 call $optional-typeparameters/testConcrete drop @@ -263,9 +267,9 @@ call $optional-typeparameters/TestDerived#test drop ) - (func $start (; 14 ;) (type $FUNCSIG$v) + (func $start (; 13 ;) (type $FUNCSIG$v) call $start:optional-typeparameters ) - (func $null (; 15 ;) (type $FUNCSIG$v) + (func $null (; 14 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index e9f3794f..77f6d07f 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -374,7 +374,7 @@ if i32.const 0 i32.const 224 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -388,7 +388,7 @@ if i32.const 0 i32.const 224 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -436,7 +436,7 @@ if i32.const 0 i32.const 224 - i32.const 227 + i32.const 234 i32.const 57 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/array-literal.untouched.wat b/tests/compiler/std/array-literal.untouched.wat index ed722563..2b9c5083 100644 --- a/tests/compiler/std/array-literal.untouched.wat +++ b/tests/compiler/std/array-literal.untouched.wat @@ -470,7 +470,7 @@ if i32.const 0 i32.const 224 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -485,7 +485,7 @@ if i32.const 0 i32.const 224 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -534,11 +534,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/runtime/ALLOCATE (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/ArrayBufferView#constructor (; 13 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/runtime/ArrayBufferView#constructor (; 12 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $1 @@ -549,7 +545,7 @@ if i32.const 0 i32.const 224 - i32.const 227 + i32.const 234 i32.const 57 call $~lib/env/abort unreachable @@ -566,8 +562,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + i32.const 12 + local.set $4 + local.get $4 + call $~lib/runtime/doAllocate + end local.set $4 local.get $4 i32.const 5 @@ -596,14 +596,18 @@ i32.store offset=8 local.get $0 ) - (func $~lib/array/Array#constructor (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#constructor (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 2 @@ -621,14 +625,18 @@ i32.store offset=12 local.get $0 ) - (func $~lib/array/Array#constructor (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#constructor (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.3 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 4 @@ -646,14 +654,18 @@ i32.store offset=12 local.get $0 ) - (func $std/array-literal/Ref#constructor (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/array-literal/Ref#constructor (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.4 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 6 @@ -663,14 +675,18 @@ end local.get $0 ) - (func $~lib/array/Array#constructor (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#constructor (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.5 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 7 @@ -688,18 +704,22 @@ i32.store offset=12 local.get $0 ) - (func $~lib/array/Array#get:length (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#get:length (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $std/array-literal/RefWithCtor#constructor (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/array-literal/RefWithCtor#constructor (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.6 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 8 @@ -709,14 +729,18 @@ end local.get $0 ) - (func $~lib/array/Array#constructor (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#constructor (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.7 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 9 @@ -734,11 +758,11 @@ i32.store offset=12 local.get $0 ) - (func $~lib/array/Array#get:length (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#get:length (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $start:std/array-literal (; 22 ;) (type $FUNCSIG$v) + (func $start:std/array-literal (; 21 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) global.get $std/array-literal/staticArrayI8 @@ -1123,9 +1147,9 @@ unreachable end ) - (func $start (; 23 ;) (type $FUNCSIG$v) + (func $start (; 22 ;) (type $FUNCSIG$v) call $start:std/array-literal ) - (func $null (; 24 ;) (type $FUNCSIG$v) + (func $null (; 23 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 5251bf5e..216f99a5 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -601,7 +601,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -615,7 +615,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -663,7 +663,7 @@ if i32.const 0 i32.const 16 - i32.const 227 + i32.const 234 i32.const 57 call $~lib/env/abort unreachable @@ -2193,7 +2193,7 @@ if i32.const 0 i32.const 16 - i32.const 100 + i32.const 107 i32.const 8 call $~lib/env/abort unreachable @@ -5530,10 +5530,6 @@ if local.get $0 i32.load offset=12 - i32.const 1 - i32.sub - local.get $1 - i32.sub local.set $2 i32.const 4 call $~lib/runtime/doAllocate @@ -5541,6 +5537,10 @@ call $~lib/runtime/doRegister local.tee $3 local.get $2 + i32.const 1 + i32.sub + local.get $1 + i32.sub i32.store local.get $0 local.get $1 diff --git a/tests/compiler/std/array.untouched.wat b/tests/compiler/std/array.untouched.wat index da2fc615..9b64bcf3 100644 --- a/tests/compiler/std/array.untouched.wat +++ b/tests/compiler/std/array.untouched.wat @@ -671,7 +671,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -686,7 +686,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -735,11 +735,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/runtime/ALLOCATE (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/ArrayBufferView#constructor (; 10 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/runtime/ArrayBufferView#constructor (; 9 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $1 @@ -750,7 +746,7 @@ if i32.const 0 i32.const 16 - i32.const 227 + i32.const 234 i32.const 57 call $~lib/env/abort unreachable @@ -767,8 +763,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + i32.const 12 + local.set $4 + local.get $4 + call $~lib/runtime/doAllocate + end local.set $4 local.get $4 i32.const 3 @@ -797,14 +797,18 @@ i32.store offset=8 local.get $0 ) - (func $~lib/array/Array#constructor (; 11 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#constructor (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 4 @@ -822,7 +826,7 @@ i32.store offset=12 local.get $0 ) - (func $~lib/array/Array.isArray | null> (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array.isArray | null> (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 1 if (result i32) local.get $0 @@ -832,7 +836,7 @@ i32.const 1 end ) - (func $~lib/array/Array.isArray> (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array.isArray> (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 1 if (result i32) local.get $0 @@ -842,14 +846,18 @@ i32.const 1 end ) - (func $std/array/P#constructor (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/array/P#constructor (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER

|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.3 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 5 @@ -859,7 +867,7 @@ end local.get $0 ) - (func $~lib/array/Array.isArray

(; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array.isArray

(; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 0 if (result i32) local.get $0 @@ -869,14 +877,18 @@ i32.const 0 end ) - (func $~lib/typedarray/Uint8Array#constructor (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8Array#constructor (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.4 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 6 @@ -888,7 +900,7 @@ local.set $0 local.get $0 ) - (func $~lib/array/Array.isArray (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array.isArray (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 0 if (result i32) local.get $0 @@ -898,7 +910,7 @@ i32.const 0 end ) - (func $~lib/array/Array.isArray (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array.isArray (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 0 if (result i32) local.get $0 @@ -908,7 +920,7 @@ i32.const 0 end ) - (func $~lib/array/Array.isArray (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array.isArray (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 0 if (result i32) local.get $0 @@ -918,7 +930,7 @@ i32.const 0 end ) - (func $~lib/array/Array#fill (; 20 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $~lib/array/Array#fill (; 19 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -994,13 +1006,13 @@ end local.get $0 ) - (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 global.get $~lib/runtime/HEADER_SIZE i32.sub i32.load offset=4 ) - (func $~lib/util/memory/memcpy (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/memory/memcpy (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -2201,7 +2213,7 @@ i32.store8 end ) - (func $~lib/memory/memory.copy (; 23 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/memory/memory.copy (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) block $~lib/util/memory/memmove|inlined.0 local.get $0 @@ -2430,7 +2442,7 @@ end end ) - (func $~lib/runtime/doWrapArray (; 24 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/runtime/doWrapArray (; 23 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -2467,11 +2479,11 @@ call $~lib/memory/memory.copy local.get $3 ) - (func $~lib/array/Array#get:length (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#get:length (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array#__get (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#__get (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -2494,7 +2506,7 @@ i32.add i32.load8_u ) - (func $std/array/isArraysEqual (; 27 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/array/isArraysEqual (; 26 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $2 i32.eqz @@ -2549,7 +2561,7 @@ end i32.const 1 ) - (func $~lib/array/Array#fill (; 28 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $~lib/array/Array#fill (; 27 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -2635,11 +2647,11 @@ end local.get $0 ) - (func $~lib/array/Array#get:length (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#get:length (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array#__get (; 30 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#__get (; 29 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -2662,7 +2674,7 @@ i32.add i32.load ) - (func $std/array/isArraysEqual (; 31 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/array/isArraysEqual (; 30 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $2 i32.eqz @@ -2717,11 +2729,11 @@ end i32.const 1 ) - (func $~lib/array/Array#get:length (; 32 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#get:length (; 31 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $std/array/internalCapacity (; 33 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/array/internalCapacity (; 32 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.load @@ -2731,12 +2743,12 @@ i32.const 2 i32.shr_s ) - (func $~lib/memory/memory.free (; 34 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/memory/memory.free (; 33 ;) (type $FUNCSIG$vi) (param $0 i32) (local $1 i32) local.get $0 local.set $1 ) - (func $~lib/runtime/doReallocate (; 35 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doReallocate (; 34 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -2801,7 +2813,7 @@ if i32.const 0 i32.const 16 - i32.const 100 + i32.const 107 i32.const 8 call $~lib/env/abort unreachable @@ -2833,7 +2845,7 @@ i32.store offset=4 local.get $0 ) - (func $~lib/array/ensureCapacity (; 36 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/array/ensureCapacity (; 35 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -2891,7 +2903,7 @@ i32.store offset=8 end ) - (func $~lib/array/Array#push (; 37 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#push (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 i32.load offset=12 @@ -2917,7 +2929,7 @@ i32.store local.get $2 ) - (func $~lib/array/Array#__get (; 38 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#__get (; 37 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -2940,7 +2952,7 @@ i32.add i32.load ) - (func $~lib/array/Array#pop (; 39 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#pop (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) local.get $0 @@ -2973,7 +2985,7 @@ i32.store offset=12 local.get $2 ) - (func $~lib/array/Array#concat (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#concat (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3019,7 +3031,7 @@ call $~lib/memory/memory.copy local.get $4 ) - (func $~lib/array/Array#copyWithin (; 41 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $~lib/array/Array#copyWithin (; 40 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -3209,7 +3221,7 @@ end local.get $0 ) - (func $std/array/isArraysEqual (; 42 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/array/isArraysEqual (; 41 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $2 i32.eqz @@ -3264,7 +3276,7 @@ end i32.const 1 ) - (func $~lib/array/Array#unshift (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#unshift (; 42 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -3297,7 +3309,7 @@ i32.store offset=12 local.get $2 ) - (func $~lib/array/Array#shift (; 44 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#shift (; 43 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -3346,7 +3358,7 @@ i32.store offset=12 local.get $3 ) - (func $~lib/array/Array#reverse (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#reverse (; 44 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -3401,7 +3413,7 @@ end local.get $0 ) - (func $~lib/array/Array#indexOf (; 46 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/array/Array#indexOf (; 45 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -3473,7 +3485,7 @@ end i32.const -1 ) - (func $~lib/array/Array#includes (; 47 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/array/Array#includes (; 46 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 local.get $1 local.get $2 @@ -3481,7 +3493,7 @@ i32.const 0 i32.ge_s ) - (func $~lib/array/Array#splice (; 48 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/array/Array#splice (; 47 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -3621,7 +3633,7 @@ i32.store offset=12 local.get $6 ) - (func $~lib/array/Array#__set (; 49 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/array/Array#__set (; 48 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 local.get $1 i32.const 1 @@ -3648,12 +3660,12 @@ i32.store offset=12 end ) - (func $start:std/array~anonymous|0 (; 50 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|0 (; 49 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 0 i32.eq ) - (func $~lib/array/Array#findIndex (; 51 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#findIndex (; 50 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3712,17 +3724,17 @@ end i32.const -1 ) - (func $start:std/array~anonymous|1 (; 52 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|1 (; 51 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 1 i32.eq ) - (func $start:std/array~anonymous|2 (; 53 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|2 (; 52 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 100 i32.eq ) - (func $start:std/array~anonymous|3 (; 54 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|3 (; 53 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $2 i32.const 100 call $~lib/array/Array#push @@ -3731,12 +3743,12 @@ i32.const 100 i32.eq ) - (func $start:std/array~anonymous|4 (; 55 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|4 (; 54 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 100 i32.eq ) - (func $start:std/array~anonymous|5 (; 56 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|5 (; 55 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $2 call $~lib/array/Array#pop drop @@ -3744,12 +3756,12 @@ i32.const 100 i32.eq ) - (func $start:std/array~anonymous|6 (; 57 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|6 (; 56 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 0 i32.ge_s ) - (func $~lib/array/Array#every (; 58 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#every (; 57 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3809,12 +3821,12 @@ end i32.const 1 ) - (func $start:std/array~anonymous|7 (; 59 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|7 (; 58 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 0 i32.le_s ) - (func $start:std/array~anonymous|8 (; 60 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|8 (; 59 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $2 i32.const 100 call $~lib/array/Array#push @@ -3823,12 +3835,12 @@ i32.const 10 i32.lt_s ) - (func $start:std/array~anonymous|9 (; 61 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|9 (; 60 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 10 i32.lt_s ) - (func $start:std/array~anonymous|10 (; 62 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|10 (; 61 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $2 call $~lib/array/Array#pop drop @@ -3836,12 +3848,12 @@ i32.const 3 i32.lt_s ) - (func $start:std/array~anonymous|11 (; 63 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|11 (; 62 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 3 i32.ge_s ) - (func $~lib/array/Array#some (; 64 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#some (; 63 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3900,12 +3912,12 @@ end i32.const 0 ) - (func $start:std/array~anonymous|12 (; 65 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|12 (; 64 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const -1 i32.le_s ) - (func $start:std/array~anonymous|13 (; 66 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|13 (; 65 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $2 i32.const 100 call $~lib/array/Array#push @@ -3914,12 +3926,12 @@ i32.const 10 i32.gt_s ) - (func $start:std/array~anonymous|14 (; 67 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|14 (; 66 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 10 i32.gt_s ) - (func $start:std/array~anonymous|15 (; 68 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|15 (; 67 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $2 call $~lib/array/Array#pop drop @@ -3927,13 +3939,13 @@ i32.const 3 i32.gt_s ) - (func $start:std/array~anonymous|16 (; 69 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $start:std/array~anonymous|16 (; 68 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) global.get $std/array/i local.get $0 i32.add global.set $std/array/i ) - (func $~lib/array/Array#forEach (; 70 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#forEach (; 69 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3985,7 +3997,7 @@ unreachable end ) - (func $start:std/array~anonymous|17 (; 71 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $start:std/array~anonymous|17 (; 70 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $2 i32.const 100 call $~lib/array/Array#push @@ -3995,13 +4007,13 @@ i32.add global.set $std/array/i ) - (func $start:std/array~anonymous|18 (; 72 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $start:std/array~anonymous|18 (; 71 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) global.get $std/array/i local.get $0 i32.add global.set $std/array/i ) - (func $start:std/array~anonymous|19 (; 73 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $start:std/array~anonymous|19 (; 72 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $2 call $~lib/array/Array#pop drop @@ -4010,7 +4022,7 @@ i32.add global.set $std/array/i ) - (func $start:std/array~anonymous|20 (; 74 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $start:std/array~anonymous|20 (; 73 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) local.get $1 i32.const 0 @@ -4125,18 +4137,22 @@ end end ) - (func $start:std/array~anonymous|21 (; 75 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) + (func $start:std/array~anonymous|21 (; 74 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) local.get $0 f32.convert_i32_s ) - (func $~lib/array/Array#constructor (; 76 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#constructor (; 75 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.5 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 9 @@ -4154,7 +4170,7 @@ i32.store offset=12 local.get $0 ) - (func $~lib/array/Array#map (; 77 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#map (; 76 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4227,11 +4243,11 @@ end local.get $3 ) - (func $~lib/array/Array#get:length (; 78 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#get:length (; 77 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array#__get (; 79 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) + (func $~lib/array/Array#__get (; 78 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) local.get $1 local.get $0 i32.load offset=8 @@ -4254,7 +4270,7 @@ i32.add f32.load ) - (func $start:std/array~anonymous|22 (; 80 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|22 (; 79 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $2 i32.const 100 call $~lib/array/Array#push @@ -4265,7 +4281,7 @@ global.set $std/array/i local.get $0 ) - (func $~lib/array/Array#map (; 81 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#map (; 80 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4337,14 +4353,14 @@ end local.get $3 ) - (func $start:std/array~anonymous|23 (; 82 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|23 (; 81 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) global.get $std/array/i local.get $0 i32.add global.set $std/array/i local.get $0 ) - (func $start:std/array~anonymous|24 (; 83 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|24 (; 82 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $2 call $~lib/array/Array#pop drop @@ -4354,12 +4370,12 @@ global.set $std/array/i local.get $0 ) - (func $start:std/array~anonymous|25 (; 84 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|25 (; 83 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 2 i32.ge_s ) - (func $~lib/array/Array#filter (; 85 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#filter (; 84 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4429,7 +4445,7 @@ end local.get $2 ) - (func $start:std/array~anonymous|26 (; 86 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|26 (; 85 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $2 i32.const 100 call $~lib/array/Array#push @@ -4442,7 +4458,7 @@ i32.const 2 i32.ge_s ) - (func $start:std/array~anonymous|27 (; 87 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|27 (; 86 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) global.get $std/array/i local.get $0 i32.add @@ -4451,7 +4467,7 @@ i32.const 2 i32.ge_s ) - (func $start:std/array~anonymous|28 (; 88 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $start:std/array~anonymous|28 (; 87 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $2 call $~lib/array/Array#pop drop @@ -4463,12 +4479,12 @@ i32.const 2 i32.ge_s ) - (func $start:std/array~anonymous|29 (; 89 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|29 (; 88 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/array/Array#reduce (; 90 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/array/Array#reduce (; 89 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4526,12 +4542,12 @@ end local.get $3 ) - (func $start:std/array~anonymous|30 (; 91 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|30 (; 90 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $start:std/array~anonymous|31 (; 92 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|31 (; 91 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 i32.const 0 i32.ne @@ -4543,7 +4559,7 @@ i32.gt_s end ) - (func $~lib/array/Array#reduce (; 93 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/array/Array#reduce (; 92 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4601,7 +4617,7 @@ end local.get $3 ) - (func $start:std/array~anonymous|32 (; 94 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|32 (; 93 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 i32.const 0 i32.ne @@ -4613,7 +4629,7 @@ i32.gt_s end ) - (func $start:std/array~anonymous|33 (; 95 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|33 (; 94 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $3 i32.const 1 call $~lib/array/Array#push @@ -4622,12 +4638,12 @@ local.get $1 i32.add ) - (func $start:std/array~anonymous|34 (; 96 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|34 (; 95 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $start:std/array~anonymous|35 (; 97 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|35 (; 96 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $3 call $~lib/array/Array#pop drop @@ -4635,12 +4651,12 @@ local.get $1 i32.add ) - (func $start:std/array~anonymous|36 (; 98 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|36 (; 97 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/array/Array#reduceRight (; 99 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/array/Array#reduceRight (; 98 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $2 @@ -4685,12 +4701,12 @@ end local.get $3 ) - (func $start:std/array~anonymous|37 (; 100 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|37 (; 99 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $start:std/array~anonymous|38 (; 101 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|38 (; 100 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 i32.const 0 i32.ne @@ -4702,7 +4718,7 @@ i32.gt_s end ) - (func $~lib/array/Array#reduceRight (; 102 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/array/Array#reduceRight (; 101 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $2 @@ -4747,7 +4763,7 @@ end local.get $3 ) - (func $start:std/array~anonymous|39 (; 103 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|39 (; 102 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 i32.const 0 i32.ne @@ -4759,7 +4775,7 @@ i32.gt_s end ) - (func $start:std/array~anonymous|40 (; 104 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|40 (; 103 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $3 i32.const 1 call $~lib/array/Array#push @@ -4768,12 +4784,12 @@ local.get $1 i32.add ) - (func $start:std/array~anonymous|41 (; 105 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|41 (; 104 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $start:std/array~anonymous|42 (; 106 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $start:std/array~anonymous|42 (; 105 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $3 call $~lib/array/Array#pop drop @@ -4781,7 +4797,7 @@ local.get $1 i32.add ) - (func $~lib/math/murmurHash3 (; 107 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) + (func $~lib/math/murmurHash3 (; 106 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) local.get $0 local.get $0 i64.const 33 @@ -4810,7 +4826,7 @@ local.set $0 local.get $0 ) - (func $~lib/math/splitMix32 (; 108 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/math/splitMix32 (; 107 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 1831565813 i32.add @@ -4845,7 +4861,7 @@ i32.shr_u i32.xor ) - (func $~lib/math/NativeMath.seedRandom (; 109 ;) (type $FUNCSIG$vj) (param $0 i64) + (func $~lib/math/NativeMath.seedRandom (; 108 ;) (type $FUNCSIG$vj) (param $0 i64) local.get $0 i64.eqz if @@ -4874,7 +4890,7 @@ call $~lib/math/splitMix32 global.set $~lib/math/random_state1_32 ) - (func $~lib/util/sort/insertionSort (; 110 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort (; 109 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 f32) (local $5 i32) @@ -4970,7 +4986,7 @@ unreachable end ) - (func $~lib/util/sort/weakHeapSort (; 111 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/weakHeapSort (; 110 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5270,7 +5286,7 @@ local.get $10 f32.store ) - (func $~lib/array/Array#sort (; 112 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort (; 111 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 f32) @@ -5356,7 +5372,7 @@ end local.get $0 ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 113 ;) (type $FUNCSIG$iff) (param $0 f32) (param $1 f32) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 112 ;) (type $FUNCSIG$iff) (param $0 f32) (param $1 f32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -5389,7 +5405,7 @@ i32.lt_s i32.sub ) - (func $~lib/array/Array#sort|trampoline (; 114 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort|trampoline (; 113 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) block $1of1 block $0of1 block $outOfRange @@ -5408,12 +5424,12 @@ local.get $1 call $~lib/array/Array#sort ) - (func $~lib/builtins/isNaN (; 115 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + (func $~lib/builtins/isNaN (; 114 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) local.get $0 local.get $0 f32.ne ) - (func $std/array/isArraysEqual (; 116 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/array/isArraysEqual (; 115 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $2 i32.eqz @@ -5484,7 +5500,7 @@ end i32.const 1 ) - (func $~lib/util/sort/insertionSort (; 117 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort (; 116 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 f64) (local $5 i32) @@ -5580,7 +5596,7 @@ unreachable end ) - (func $~lib/util/sort/weakHeapSort (; 118 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/weakHeapSort (; 117 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5880,7 +5896,7 @@ local.get $10 f64.store ) - (func $~lib/array/Array#sort (; 119 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort (; 118 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 f64) @@ -5966,7 +5982,7 @@ end local.get $0 ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 120 ;) (type $FUNCSIG$idd) (param $0 f64) (param $1 f64) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 119 ;) (type $FUNCSIG$idd) (param $0 f64) (param $1 f64) (result i32) (local $2 i64) (local $3 i64) local.get $0 @@ -5999,7 +6015,7 @@ i64.lt_s i32.sub ) - (func $~lib/array/Array#sort|trampoline (; 121 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort|trampoline (; 120 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) block $1of1 block $0of1 block $outOfRange @@ -6018,11 +6034,11 @@ local.get $1 call $~lib/array/Array#sort ) - (func $~lib/array/Array#get:length (; 122 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#get:length (; 121 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array#__get (; 123 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) + (func $~lib/array/Array#__get (; 122 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) local.get $1 local.get $0 i32.load offset=8 @@ -6045,12 +6061,12 @@ i32.add f64.load ) - (func $~lib/builtins/isNaN (; 124 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (func $~lib/builtins/isNaN (; 123 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) local.get $0 local.get $0 f64.ne ) - (func $std/array/isArraysEqual (; 125 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/array/isArraysEqual (; 124 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $2 i32.eqz @@ -6121,7 +6137,7 @@ end i32.const 1 ) - (func $~lib/util/sort/insertionSort (; 126 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort (; 125 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -6217,7 +6233,7 @@ unreachable end ) - (func $~lib/util/sort/weakHeapSort (; 127 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/weakHeapSort (; 126 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -6517,7 +6533,7 @@ local.get $10 i32.store ) - (func $~lib/array/Array#sort (; 128 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort (; 127 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -6601,12 +6617,12 @@ end local.get $0 ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 129 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 128 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 i32.sub ) - (func $~lib/array/Array#sort|trampoline (; 130 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort|trampoline (; 129 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) block $1of1 block $0of1 block $outOfRange @@ -6625,7 +6641,7 @@ local.get $1 call $~lib/array/Array#sort ) - (func $~lib/util/sort/insertionSort (; 131 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort (; 130 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -6721,7 +6737,7 @@ unreachable end ) - (func $~lib/util/sort/weakHeapSort (; 132 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/weakHeapSort (; 131 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -7021,7 +7037,7 @@ local.get $10 i32.store ) - (func $~lib/array/Array#sort (; 133 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort (; 132 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -7105,7 +7121,7 @@ end local.get $0 ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 134 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 133 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 i32.gt_u @@ -7114,7 +7130,7 @@ i32.lt_u i32.sub ) - (func $~lib/array/Array#sort|trampoline (; 135 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort|trampoline (; 134 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) block $1of1 block $0of1 block $outOfRange @@ -7133,7 +7149,7 @@ local.get $1 call $~lib/array/Array#sort ) - (func $std/array/createReverseOrderedArray (; 136 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/array/createReverseOrderedArray (; 135 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) i32.const 0 @@ -7170,7 +7186,7 @@ end local.get $1 ) - (func $~lib/math/NativeMath.random (; 137 ;) (type $FUNCSIG$d) (result f64) + (func $~lib/math/NativeMath.random (; 136 ;) (type $FUNCSIG$d) (result f64) (local $0 i64) (local $1 i64) (local $2 i64) @@ -7227,7 +7243,7 @@ f64.const 1 f64.sub ) - (func $std/array/createRandomOrderedArray (; 138 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/array/createRandomOrderedArray (; 137 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) i32.const 0 @@ -7264,12 +7280,12 @@ end local.get $1 ) - (func $~lib/util/sort/COMPARATOR~anonymous|1 (; 139 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|1 (; 138 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 i32.sub ) - (func $std/array/isSorted (; 140 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/isSorted (; 139 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) block $break|0 @@ -7317,7 +7333,7 @@ end i32.const 1 ) - (func $std/array/assertSorted (; 141 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $std/array/assertSorted (; 140 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) local.get $0 local.get $1 call $~lib/array/Array#sort @@ -7333,7 +7349,7 @@ unreachable end ) - (func $std/array/assertSortedDefault (; 142 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $std/array/assertSortedDefault (; 141 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 block $~lib/util/sort/COMPARATOR|inlined.1 (result i32) i32.const 48 @@ -7341,34 +7357,38 @@ end call $std/array/assertSorted ) - (func $start:std/array~anonymous|43 (; 143 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $start:std/array~anonymous|43 (; 142 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 i32.sub ) - (func $start:std/array~anonymous|44 (; 144 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $start:std/array~anonymous|44 (; 143 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.sub ) - (func $start:std/array~anonymous|45 (; 145 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $start:std/array~anonymous|45 (; 144 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 i32.sub ) - (func $start:std/array~anonymous|46 (; 146 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $start:std/array~anonymous|46 (; 145 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.sub ) - (func $~lib/array/Array>#constructor (; 147 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#constructor (; 146 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.6 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 11 @@ -7386,11 +7406,11 @@ i32.store offset=12 local.get $0 ) - (func $~lib/array/Array>#get:length (; 148 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array>#get:length (; 147 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array>#__set (; 149 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/array/Array>#__set (; 148 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 local.get $1 i32.const 1 @@ -7417,7 +7437,7 @@ i32.store offset=12 end ) - (func $~lib/array/Array>#__get (; 150 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#__get (; 149 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -7440,7 +7460,7 @@ i32.add i32.load ) - (func $std/array/createReverseOrderedNestedArray (; 151 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/array/createReverseOrderedNestedArray (; 150 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) i32.const 0 @@ -7487,7 +7507,7 @@ end local.get $1 ) - (func $start:std/array~anonymous|47 (; 152 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $start:std/array~anonymous|47 (; 151 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 i32.const 0 call $~lib/array/Array#__get @@ -7496,7 +7516,7 @@ call $~lib/array/Array#__get i32.sub ) - (func $~lib/util/sort/insertionSort> (; 153 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort> (; 152 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -7592,7 +7612,7 @@ unreachable end ) - (func $~lib/array/Array>#sort (; 154 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#sort (; 153 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -7666,7 +7686,7 @@ end local.get $0 ) - (func $std/array/isSorted> (; 155 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/isSorted> (; 154 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) block $break|0 @@ -7714,7 +7734,7 @@ end i32.const 1 ) - (func $std/array/assertSorted> (; 156 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $std/array/assertSorted> (; 155 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) local.get $0 local.get $1 call $~lib/array/Array>#sort @@ -7730,14 +7750,18 @@ unreachable end ) - (func $~lib/array/Array>#constructor (; 157 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#constructor (; 156 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.7 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 12 @@ -7755,18 +7779,22 @@ i32.store offset=12 local.get $0 ) - (func $~lib/array/Array>#get:length (; 158 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array>#get:length (; 157 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $std/array/Proxy#constructor (; 159 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/Proxy#constructor (; 158 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 4 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.8 (result i32) + i32.const 4 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 13 @@ -7779,7 +7807,7 @@ i32.store local.get $0 ) - (func $~lib/array/Array>#__set (; 160 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/array/Array>#__set (; 159 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 local.get $1 i32.const 1 @@ -7806,7 +7834,7 @@ i32.store offset=12 end ) - (func $std/array/createReverseOrderedElementsArray (; 161 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/array/createReverseOrderedElementsArray (; 160 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) i32.const 0 @@ -7845,14 +7873,14 @@ end local.get $1 ) - (func $start:std/array~anonymous|48 (; 162 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $start:std/array~anonymous|48 (; 161 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 i32.load local.get $1 i32.load i32.sub ) - (func $~lib/util/sort/insertionSort> (; 163 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort> (; 162 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -7948,7 +7976,7 @@ unreachable end ) - (func $~lib/array/Array>#sort (; 164 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#sort (; 163 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8022,7 +8050,7 @@ end local.get $0 ) - (func $~lib/array/Array>#__get (; 165 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#__get (; 164 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -8045,7 +8073,7 @@ i32.add i32.load ) - (func $std/array/isSorted> (; 166 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/isSorted> (; 165 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) block $break|0 @@ -8093,7 +8121,7 @@ end i32.const 1 ) - (func $std/array/assertSorted> (; 167 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $std/array/assertSorted> (; 166 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) local.get $0 local.get $1 call $~lib/array/Array>#sort @@ -8109,7 +8137,7 @@ unreachable end ) - (func $~lib/util/sort/insertionSort (; 168 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort (; 167 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -8205,7 +8233,7 @@ unreachable end ) - (func $~lib/array/Array#sort (; 169 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort (; 168 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8279,11 +8307,11 @@ end local.get $0 ) - (func $~lib/array/Array#get:length (; 170 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#get:length (; 169 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array#__get (; 171 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#__get (; 170 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -8306,7 +8334,7 @@ i32.add i32.load ) - (func $std/array/isSorted (; 172 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/isSorted (; 171 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) block $break|0 @@ -8354,7 +8382,7 @@ end i32.const 1 ) - (func $std/array/assertSorted (; 173 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $std/array/assertSorted (; 172 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) local.get $0 local.get $1 call $~lib/array/Array#sort @@ -8370,7 +8398,7 @@ unreachable end ) - (func $~lib/string/String#get:length (; 174 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/string/String#get:length (; 173 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 global.get $~lib/runtime/HEADER_SIZE i32.sub @@ -8378,7 +8406,7 @@ i32.const 1 i32.shr_u ) - (func $~lib/util/string/compareImpl (; 175 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) + (func $~lib/util/string/compareImpl (; 174 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) (local $5 i32) (local $6 i32) (local $7 i32) @@ -8431,7 +8459,7 @@ end local.get $5 ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 176 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 175 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8504,7 +8532,7 @@ select call $~lib/util/string/compareImpl ) - (func $std/array/assertSorted|trampoline (; 177 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $std/array/assertSorted|trampoline (; 176 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) block $1of1 block $0of1 block $outOfRange @@ -8525,7 +8553,7 @@ local.get $1 call $std/array/assertSorted ) - (func $~lib/string/String.__eq (; 178 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__eq (; 177 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -8569,13 +8597,13 @@ call $~lib/util/string/compareImpl i32.eqz ) - (func $~lib/string/String.__ne (; 179 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__ne (; 178 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/string/String.__eq i32.eqz ) - (func $std/array/isArraysEqual (; 180 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/array/isArraysEqual (; 179 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $2 i32.eqz @@ -8630,14 +8658,18 @@ end i32.const 1 ) - (func $~lib/array/Array#constructor (; 181 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#constructor (; 180 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.9 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 14 @@ -8655,7 +8687,7 @@ i32.store offset=12 local.get $0 ) - (func $~lib/string/String#charAt (; 182 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String#charAt (; 181 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -8678,7 +8710,7 @@ i32.const 3264 return end - block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + block $~lib/runtime/ALLOCATE|inlined.10 (result i32) i32.const 2 local.set $2 local.get $2 @@ -8701,7 +8733,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/string/String#concat (; 183 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String#concat (; 182 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8735,7 +8767,7 @@ i32.const 3264 return end - block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + block $~lib/runtime/ALLOCATE|inlined.11 (result i32) local.get $4 local.set $5 local.get $5 @@ -8760,7 +8792,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/string/String.__concat (; 184 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__concat (; 183 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 i32.const 3440 local.get $0 @@ -8770,7 +8802,7 @@ local.get $1 call $~lib/string/String#concat ) - (func $std/array/createRandomString (; 185 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/array/createRandomString (; 184 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 f64) @@ -8812,7 +8844,7 @@ end local.get $1 ) - (func $~lib/array/Array#__set (; 186 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/array/Array#__set (; 185 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 local.get $1 i32.const 1 @@ -8839,7 +8871,7 @@ i32.store offset=12 end ) - (func $std/array/createRandomStringArray (; 187 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/array/createRandomStringArray (; 186 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) i32.const 0 @@ -8875,7 +8907,7 @@ end local.get $1 ) - (func $~lib/string/String#substring (; 188 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/string/String#substring (; 187 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -8980,7 +9012,7 @@ local.get $0 return end - block $~lib/runtime/ALLOCATE|inlined.4 (result i32) + block $~lib/runtime/ALLOCATE|inlined.13 (result i32) local.get $3 local.set $4 local.get $4 @@ -9001,7 +9033,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/runtime/doDiscard (; 189 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/doDiscard (; 188 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -9009,7 +9041,7 @@ i32.sub call $~lib/memory/memory.free ) - (func $~lib/array/Array#join_bool (; 190 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join_bool (; 189 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9060,7 +9092,7 @@ local.get $5 i32.add local.set $6 - block $~lib/runtime/ALLOCATE|inlined.3 (result i32) + block $~lib/runtime/ALLOCATE|inlined.12 (result i32) local.get $6 i32.const 1 i32.shl @@ -9196,13 +9228,13 @@ call $~lib/runtime/doRegister end ) - (func $~lib/array/Array#join (; 191 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 190 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array#join_bool return ) - (func $~lib/util/number/decimalCount32 (; 192 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/number/decimalCount32 (; 191 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.const 100000 @@ -9271,7 +9303,7 @@ unreachable unreachable ) - (func $~lib/util/number/utoa32_lut (; 193 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/number/utoa32_lut (; 192 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -9414,7 +9446,7 @@ i32.store16 end ) - (func $~lib/util/number/itoa32 (; 194 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/number/itoa32 (; 193 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -9443,7 +9475,7 @@ local.get $1 i32.add local.set $2 - block $~lib/runtime/ALLOCATE|inlined.5 (result i32) + block $~lib/runtime/ALLOCATE|inlined.14 (result i32) local.get $2 i32.const 1 i32.shl @@ -9478,12 +9510,12 @@ call $~lib/runtime/doRegister end ) - (func $~lib/util/number/itoa (; 195 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/number/itoa (; 194 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/util/number/itoa32 return ) - (func $~lib/util/number/itoa_stream (; 196 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/itoa_stream (; 195 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -9542,7 +9574,7 @@ end local.get $3 ) - (func $~lib/array/Array#join_int (; 197 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join_int (; 196 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9586,7 +9618,7 @@ i32.const 11 i32.add local.set $5 - block $~lib/runtime/ALLOCATE|inlined.6 (result i32) + block $~lib/runtime/ALLOCATE|inlined.15 (result i32) local.get $5 i32.const 1 i32.shl @@ -9688,13 +9720,13 @@ call $~lib/runtime/doRegister end ) - (func $~lib/array/Array#join (; 198 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 197 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array#join_int return ) - (func $~lib/util/number/utoa32 (; 199 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/number/utoa32 (; 198 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -9709,7 +9741,7 @@ local.get $0 call $~lib/util/number/decimalCount32 local.set $1 - block $~lib/runtime/ALLOCATE|inlined.7 (result i32) + block $~lib/runtime/ALLOCATE|inlined.16 (result i32) local.get $1 i32.const 1 i32.shl @@ -9738,12 +9770,12 @@ call $~lib/runtime/doRegister end ) - (func $~lib/util/number/itoa (; 200 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/number/itoa (; 199 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/util/number/utoa32 return ) - (func $~lib/util/number/itoa_stream (; 201 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/itoa_stream (; 200 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -9782,7 +9814,7 @@ end local.get $3 ) - (func $~lib/array/Array#join_int (; 202 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join_int (; 201 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9826,7 +9858,7 @@ i32.const 10 i32.add local.set $5 - block $~lib/runtime/ALLOCATE|inlined.8 (result i32) + block $~lib/runtime/ALLOCATE|inlined.17 (result i32) local.get $5 i32.const 1 i32.shl @@ -9928,20 +9960,20 @@ call $~lib/runtime/doRegister end ) - (func $~lib/array/Array#join (; 203 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 202 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array#join_int return ) - (func $~lib/builtins/isFinite (; 204 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (func $~lib/builtins/isFinite (; 203 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) local.get $0 local.get $0 f64.sub f64.const 0 f64.eq ) - (func $~lib/util/number/genDigits (; 205 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) + (func $~lib/util/number/genDigits (; 204 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) (local $7 i32) (local $8 i64) (local $9 i64) @@ -10512,7 +10544,7 @@ end local.get $15 ) - (func $~lib/util/number/prettify (; 206 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/prettify (; 205 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -10845,7 +10877,7 @@ unreachable unreachable ) - (func $~lib/util/number/dtoa_core (; 207 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (func $~lib/util/number/dtoa_core (; 206 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) (local $2 i32) (local $3 f64) (local $4 i32) @@ -11291,7 +11323,7 @@ local.get $2 i32.add ) - (func $~lib/util/number/dtoa (; 208 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (func $~lib/util/number/dtoa (; 207 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -11321,7 +11353,7 @@ select return end - block $~lib/runtime/ALLOCATE|inlined.9 (result i32) + block $~lib/runtime/ALLOCATE|inlined.18 (result i32) i32.const 28 i32.const 1 i32.shl @@ -11347,7 +11379,7 @@ end local.get $4 ) - (func $~lib/util/number/dtoa_stream (; 209 ;) (type $FUNCSIG$iiid) (param $0 i32) (param $1 i32) (param $2 f64) (result i32) + (func $~lib/util/number/dtoa_stream (; 208 ;) (type $FUNCSIG$iiid) (param $0 i32) (param $1 i32) (param $2 f64) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -11421,7 +11453,7 @@ local.get $2 call $~lib/util/number/dtoa_core ) - (func $~lib/array/Array#join_flt (; 210 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join_flt (; 209 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11465,7 +11497,7 @@ i32.const 28 i32.add local.set $5 - block $~lib/runtime/ALLOCATE|inlined.10 (result i32) + block $~lib/runtime/ALLOCATE|inlined.19 (result i32) local.get $5 i32.const 1 i32.shl @@ -11567,13 +11599,13 @@ call $~lib/runtime/doRegister end ) - (func $~lib/array/Array#join (; 211 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 210 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array#join_flt return ) - (func $~lib/array/Array#join_str (; 212 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join_str (; 211 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11655,7 +11687,7 @@ end i32.const 0 local.set $9 - block $~lib/runtime/ALLOCATE|inlined.11 (result i32) + block $~lib/runtime/ALLOCATE|inlined.20 (result i32) local.get $5 local.get $4 local.get $2 @@ -11765,20 +11797,24 @@ call $~lib/runtime/doRegister end ) - (func $~lib/array/Array#join (; 213 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 212 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array#join_str return ) - (func $std/array/Ref#constructor (; 214 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/array/Ref#constructor (; 213 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 0 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.21 (result i32) + i32.const 0 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 18 @@ -11788,14 +11824,18 @@ end local.get $0 ) - (func $~lib/array/Array#constructor (; 215 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#constructor (; 214 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.22 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 19 @@ -11813,7 +11853,7 @@ i32.store offset=12 local.get $0 ) - (func $~lib/array/Array#join_ref (; 216 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join_ref (; 215 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11855,7 +11895,7 @@ i32.const 15 i32.add local.set $5 - block $~lib/runtime/ALLOCATE|inlined.12 (result i32) + block $~lib/runtime/ALLOCATE|inlined.23 (result i32) local.get $5 i32.const 1 i32.shl @@ -11975,18 +12015,18 @@ call $~lib/runtime/doRegister end ) - (func $~lib/array/Array#join (; 217 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 216 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array#join_ref return ) - (func $~lib/array/Array#toString (; 218 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 217 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 3512 call $~lib/array/Array#join ) - (func $~lib/util/number/itoa (; 219 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/number/itoa (; 218 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 24 i32.shl @@ -11995,7 +12035,7 @@ call $~lib/util/number/itoa32 return ) - (func $~lib/util/number/itoa_stream (; 220 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/itoa_stream (; 219 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -12070,7 +12110,7 @@ end local.get $3 ) - (func $~lib/array/Array#join_int (; 221 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join_int (; 220 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12114,7 +12154,7 @@ i32.const 11 i32.add local.set $5 - block $~lib/runtime/ALLOCATE|inlined.13 (result i32) + block $~lib/runtime/ALLOCATE|inlined.24 (result i32) local.get $5 i32.const 1 i32.shl @@ -12216,25 +12256,25 @@ call $~lib/runtime/doRegister end ) - (func $~lib/array/Array#join (; 222 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 221 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array#join_int return ) - (func $~lib/array/Array#toString (; 223 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 222 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 3512 call $~lib/array/Array#join ) - (func $~lib/util/number/itoa (; 224 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/number/itoa (; 223 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 65535 i32.and call $~lib/util/number/utoa32 return ) - (func $~lib/util/number/itoa_stream (; 225 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/itoa_stream (; 224 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -12279,7 +12319,7 @@ end local.get $3 ) - (func $~lib/array/Array#join_int (; 226 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join_int (; 225 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12323,7 +12363,7 @@ i32.const 10 i32.add local.set $5 - block $~lib/runtime/ALLOCATE|inlined.14 (result i32) + block $~lib/runtime/ALLOCATE|inlined.25 (result i32) local.get $5 i32.const 1 i32.shl @@ -12425,18 +12465,18 @@ call $~lib/runtime/doRegister end ) - (func $~lib/array/Array#join (; 227 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 226 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array#join_int return ) - (func $~lib/array/Array#toString (; 228 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 227 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 3512 call $~lib/array/Array#join ) - (func $~lib/util/number/decimalCount64 (; 229 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (func $~lib/util/number/decimalCount64 (; 228 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (local $1 i32) local.get $0 i64.const 1000000000000000 @@ -12505,7 +12545,7 @@ unreachable unreachable ) - (func $~lib/util/number/utoa64_lut (; 230 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) + (func $~lib/util/number/utoa64_lut (; 229 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) (local $4 i64) (local $5 i32) @@ -12633,7 +12673,7 @@ local.get $2 call $~lib/util/number/utoa32_lut ) - (func $~lib/util/number/utoa64 (; 231 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (func $~lib/util/number/utoa64 (; 230 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -12658,7 +12698,7 @@ local.get $2 call $~lib/util/number/decimalCount32 local.set $3 - block $~lib/runtime/ALLOCATE|inlined.15 (result i32) + block $~lib/runtime/ALLOCATE|inlined.26 (result i32) local.get $3 i32.const 1 i32.shl @@ -12683,7 +12723,7 @@ local.get $0 call $~lib/util/number/decimalCount64 local.set $3 - block $~lib/runtime/ALLOCATE|inlined.16 (result i32) + block $~lib/runtime/ALLOCATE|inlined.27 (result i32) local.get $3 i32.const 1 i32.shl @@ -12713,12 +12753,12 @@ call $~lib/runtime/doRegister end ) - (func $~lib/util/number/itoa (; 232 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (func $~lib/util/number/itoa (; 231 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) local.get $0 call $~lib/util/number/utoa64 return ) - (func $~lib/util/number/itoa_stream (; 233 ;) (type $FUNCSIG$iiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) + (func $~lib/util/number/itoa_stream (; 232 ;) (type $FUNCSIG$iiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -12784,7 +12824,7 @@ end local.get $3 ) - (func $~lib/array/Array#join_int (; 234 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join_int (; 233 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12828,7 +12868,7 @@ i32.const 20 i32.add local.set $5 - block $~lib/runtime/ALLOCATE|inlined.17 (result i32) + block $~lib/runtime/ALLOCATE|inlined.28 (result i32) local.get $5 i32.const 1 i32.shl @@ -12930,18 +12970,18 @@ call $~lib/runtime/doRegister end ) - (func $~lib/array/Array#join (; 235 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 234 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array#join_int return ) - (func $~lib/array/Array#toString (; 236 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 235 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 3512 call $~lib/array/Array#join ) - (func $~lib/util/number/itoa64 (; 237 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (func $~lib/util/number/itoa64 (; 236 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -12980,7 +13020,7 @@ local.get $1 i32.add local.set $4 - block $~lib/runtime/ALLOCATE|inlined.18 (result i32) + block $~lib/runtime/ALLOCATE|inlined.29 (result i32) local.get $4 i32.const 1 i32.shl @@ -13007,7 +13047,7 @@ local.get $1 i32.add local.set $4 - block $~lib/runtime/ALLOCATE|inlined.19 (result i32) + block $~lib/runtime/ALLOCATE|inlined.30 (result i32) local.get $4 i32.const 1 i32.shl @@ -13043,12 +13083,12 @@ call $~lib/runtime/doRegister end ) - (func $~lib/util/number/itoa (; 238 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (func $~lib/util/number/itoa (; 237 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) local.get $0 call $~lib/util/number/itoa64 return ) - (func $~lib/util/number/itoa_stream (; 239 ;) (type $FUNCSIG$iiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) + (func $~lib/util/number/itoa_stream (; 238 ;) (type $FUNCSIG$iiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -13136,7 +13176,7 @@ end local.get $3 ) - (func $~lib/array/Array#join_int (; 240 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join_int (; 239 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -13180,7 +13220,7 @@ i32.const 21 i32.add local.set $5 - block $~lib/runtime/ALLOCATE|inlined.20 (result i32) + block $~lib/runtime/ALLOCATE|inlined.31 (result i32) local.get $5 i32.const 1 i32.shl @@ -13282,23 +13322,23 @@ call $~lib/runtime/doRegister end ) - (func $~lib/array/Array#join (; 241 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 240 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array#join_int return ) - (func $~lib/array/Array#toString (; 242 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 241 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 3512 call $~lib/array/Array#join ) - (func $~lib/array/Array#toString (; 243 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 242 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 3512 call $~lib/array/Array#join ) - (func $~lib/array/Array>#join_arr (; 244 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#join_arr (; 243 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -13402,25 +13442,29 @@ end local.get $3 ) - (func $~lib/array/Array>#join (; 245 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#join (; 244 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array>#join_arr return ) - (func $~lib/array/Array>#toString (; 246 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array>#toString (; 245 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 3512 call $~lib/array/Array>#join ) - (func $~lib/array/Array>#constructor (; 247 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#constructor (; 246 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.32 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 23 @@ -13438,14 +13482,14 @@ i32.store offset=12 local.get $0 ) - (func $~lib/util/number/itoa (; 248 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/number/itoa (; 247 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 255 i32.and call $~lib/util/number/utoa32 return ) - (func $~lib/util/number/itoa_stream (; 249 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/itoa_stream (; 248 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -13490,7 +13534,7 @@ end local.get $3 ) - (func $~lib/array/Array#join_int (; 250 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join_int (; 249 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -13534,7 +13578,7 @@ i32.const 10 i32.add local.set $5 - block $~lib/runtime/ALLOCATE|inlined.21 (result i32) + block $~lib/runtime/ALLOCATE|inlined.33 (result i32) local.get $5 i32.const 1 i32.shl @@ -13636,13 +13680,13 @@ call $~lib/runtime/doRegister end ) - (func $~lib/array/Array#join (; 251 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 250 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array#join_int return ) - (func $~lib/array/Array>#join_arr (; 252 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#join_arr (; 251 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -13746,25 +13790,29 @@ end local.get $3 ) - (func $~lib/array/Array>#join (; 253 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#join (; 252 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array>#join_arr return ) - (func $~lib/array/Array>#toString (; 254 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array>#toString (; 253 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 3512 call $~lib/array/Array>#join ) - (func $~lib/array/Array>#constructor (; 255 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#constructor (; 254 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.34 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 24 @@ -13782,14 +13830,18 @@ i32.store offset=12 local.get $0 ) - (func $~lib/array/Array>>#constructor (; 256 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>>#constructor (; 255 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.35 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 25 @@ -13807,7 +13859,7 @@ i32.store offset=12 local.get $0 ) - (func $~lib/array/Array>#join_arr (; 257 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#join_arr (; 256 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -13911,13 +13963,13 @@ end local.get $3 ) - (func $~lib/array/Array>#join (; 258 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#join (; 257 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array>#join_arr return ) - (func $~lib/array/Array>>#join_arr (; 259 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>>#join_arr (; 258 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -14021,18 +14073,18 @@ end local.get $3 ) - (func $~lib/array/Array>>#join (; 260 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>>#join (; 259 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 call $~lib/array/Array>>#join_arr return ) - (func $~lib/array/Array>>#toString (; 261 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array>>#toString (; 260 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 3512 call $~lib/array/Array>>#join ) - (func $start:std/array (; 262 ;) (type $FUNCSIG$v) + (func $start:std/array (; 261 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -18858,9 +18910,9 @@ unreachable end ) - (func $start (; 263 ;) (type $FUNCSIG$v) + (func $start (; 262 ;) (type $FUNCSIG$v) call $start:std/array ) - (func $null (; 264 ;) (type $FUNCSIG$v) + (func $null (; 263 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 7cd6dda9..f9fd20d0 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -326,7 +326,7 @@ if i32.const 0 i32.const 64 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -340,7 +340,7 @@ if i32.const 0 i32.const 64 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -1552,7 +1552,7 @@ if i32.const 0 i32.const 64 - i32.const 227 + i32.const 234 i32.const 57 call $~lib/env/abort unreachable @@ -1884,10 +1884,12 @@ global.set $std/arraybuffer/arr8 call $~lib/runtime/doWrapArray drop - i32.const 1 - i32.const 0 global.get $std/arraybuffer/arr8 - select + if (result i32) + i32.const 1 + else + i32.const 0 + end i32.eqz if i32.const 0 diff --git a/tests/compiler/std/arraybuffer.untouched.wat b/tests/compiler/std/arraybuffer.untouched.wat index 5d56658c..d1855629 100644 --- a/tests/compiler/std/arraybuffer.untouched.wat +++ b/tests/compiler/std/arraybuffer.untouched.wat @@ -408,7 +408,7 @@ if i32.const 0 i32.const 64 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -423,7 +423,7 @@ if i32.const 0 i32.const 64 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -2037,11 +2037,7 @@ end i32.const 0 ) - (func $~lib/runtime/ALLOCATE (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/ArrayBufferView#constructor (; 18 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/runtime/ArrayBufferView#constructor (; 17 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $1 @@ -2052,7 +2048,7 @@ if i32.const 0 i32.const 64 - i32.const 227 + i32.const 234 i32.const 57 call $~lib/env/abort unreachable @@ -2069,8 +2065,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + i32.const 12 + local.set $4 + local.get $4 + call $~lib/runtime/doAllocate + end local.set $4 local.get $4 i32.const 3 @@ -2099,14 +2099,18 @@ i32.store offset=8 local.get $0 ) - (func $~lib/typedarray/Uint8Array#constructor (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8Array#constructor (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.3 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 4 @@ -2118,7 +2122,7 @@ local.set $0 local.get $0 ) - (func $~lib/runtime/doWrapArray (; 20 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/runtime/doWrapArray (; 19 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -2155,14 +2159,18 @@ call $~lib/memory/memory.copy local.get $3 ) - (func $~lib/typedarray/Int32Array#constructor (; 21 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int32Array#constructor (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.4 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 6 @@ -2174,7 +2182,7 @@ local.set $0 local.get $0 ) - (func $~lib/dataview/DataView#constructor (; 22 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $~lib/dataview/DataView#constructor (; 21 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 i32) local.get $3 @@ -2217,8 +2225,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.5 (result i32) + i32.const 12 + local.set $4 + local.get $4 + call $~lib/runtime/doAllocate + end local.set $4 local.get $4 i32.const 7 @@ -2251,11 +2263,11 @@ i32.store offset=8 local.get $0 ) - (func $~lib/typedarray/Uint8Array#get:buffer (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Uint8Array#get:buffer (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load ) - (func $start:std/arraybuffer (; 24 ;) (type $FUNCSIG$v) + (func $start:std/arraybuffer (; 23 ;) (type $FUNCSIG$v) (local $0 i32) global.get $~lib/memory/HEAP_BASE i32.const 7 @@ -2576,9 +2588,9 @@ unreachable end ) - (func $start (; 25 ;) (type $FUNCSIG$v) + (func $start (; 24 ;) (type $FUNCSIG$v) call $start:std/arraybuffer ) - (func $null (; 26 ;) (type $FUNCSIG$v) + (func $null (; 25 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index 4a05a9cb..6c1fe718 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -163,7 +163,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -177,7 +177,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -1012,14 +1012,14 @@ i32.const 95 call $~lib/typedarray/Uint8Array#__set global.get $std/dataview/array - local.tee $0 i32.load - local.get $0 + global.get $std/dataview/array + local.tee $0 i32.load offset=4 local.get $0 i32.load i32.sub - local.get $0 + global.get $std/dataview/array i32.load offset=8 call $~lib/dataview/DataView#constructor global.set $std/dataview/view diff --git a/tests/compiler/std/dataview.untouched.wat b/tests/compiler/std/dataview.untouched.wat index 9bc3fc24..d66ae251 100644 --- a/tests/compiler/std/dataview.untouched.wat +++ b/tests/compiler/std/dataview.untouched.wat @@ -414,7 +414,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -429,7 +429,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -478,11 +478,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/runtime/ALLOCATE (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/ArrayBufferView#constructor (; 9 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/runtime/ArrayBufferView#constructor (; 8 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $1 @@ -493,7 +489,7 @@ if i32.const 0 i32.const 16 - i32.const 227 + i32.const 234 i32.const 57 call $~lib/env/abort unreachable @@ -510,8 +506,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + i32.const 12 + local.set $4 + local.get $4 + call $~lib/runtime/doAllocate + end local.set $4 local.get $4 i32.const 3 @@ -540,14 +540,18 @@ i32.store offset=8 local.get $0 ) - (func $~lib/typedarray/Uint8Array#constructor (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8Array#constructor (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 4 @@ -559,7 +563,7 @@ local.set $0 local.get $0 ) - (func $~lib/typedarray/Uint8Array#__set (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/typedarray/Uint8Array#__set (; 10 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 local.get $0 i32.load offset=8 @@ -579,13 +583,13 @@ local.get $2 i32.store8 ) - (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 global.get $~lib/runtime/HEADER_SIZE i32.sub i32.load offset=4 ) - (func $~lib/dataview/DataView#constructor (; 13 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $~lib/dataview/DataView#constructor (; 12 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 i32) local.get $3 @@ -628,8 +632,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.3 (result i32) + i32.const 12 + local.set $4 + local.get $4 + call $~lib/runtime/doAllocate + end local.set $4 local.get $4 i32.const 5 @@ -662,22 +670,22 @@ i32.store offset=8 local.get $0 ) - (func $~lib/typedarray/Uint8Array#get:buffer (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Uint8Array#get:buffer (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load ) - (func $~lib/runtime/ArrayBufferView#get:byteOffset (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/runtime/ArrayBufferView#get:byteOffset (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=4 local.get $0 i32.load i32.sub ) - (func $~lib/runtime/ArrayBufferView#get:byteLength (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/runtime/ArrayBufferView#get:byteLength (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=8 ) - (func $~lib/polyfills/bswap (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const -16711936 i32.and @@ -691,7 +699,7 @@ i32.or return ) - (func $~lib/dataview/DataView#getFloat32 (; 18 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) + (func $~lib/dataview/DataView#getFloat32 (; 17 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) local.get $1 i32.const 0 i32.lt_s @@ -729,7 +737,7 @@ f32.reinterpret_i32 end ) - (func $~lib/polyfills/bswap (; 19 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) + (func $~lib/polyfills/bswap (; 18 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) (local $1 i64) (local $2 i64) (local $3 i64) @@ -768,7 +776,7 @@ i64.rotr return ) - (func $~lib/dataview/DataView#getFloat64 (; 20 ;) (type $FUNCSIG$diii) (param $0 i32) (param $1 i32) (param $2 i32) (result f64) + (func $~lib/dataview/DataView#getFloat64 (; 19 ;) (type $FUNCSIG$diii) (param $0 i32) (param $1 i32) (param $2 i32) (result f64) local.get $1 i32.const 0 i32.lt_s @@ -806,7 +814,7 @@ f64.reinterpret_i64 end ) - (func $~lib/dataview/DataView#getInt8 (; 21 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/dataview/DataView#getInt8 (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -825,7 +833,7 @@ i32.add i32.load8_s ) - (func $~lib/polyfills/bswap (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 8 i32.shl @@ -841,7 +849,7 @@ i32.or return ) - (func $~lib/dataview/DataView#getInt16 (; 23 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getInt16 (; 22 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $1 i32.const 0 @@ -877,7 +885,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/polyfills/bswap (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const -16711936 i32.and @@ -891,7 +899,7 @@ i32.or return ) - (func $~lib/dataview/DataView#getInt32 (; 25 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getInt32 (; 24 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $1 i32.const 0 @@ -927,7 +935,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/polyfills/bswap (; 26 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) + (func $~lib/polyfills/bswap (; 25 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) (local $1 i64) (local $2 i64) (local $3 i64) @@ -966,7 +974,7 @@ i64.rotr return ) - (func $~lib/dataview/DataView#getInt64 (; 27 ;) (type $FUNCSIG$jiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i64) + (func $~lib/dataview/DataView#getInt64 (; 26 ;) (type $FUNCSIG$jiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i64) (local $3 i64) local.get $1 i32.const 0 @@ -1002,7 +1010,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/dataview/DataView#getUint8 (; 28 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/dataview/DataView#getUint8 (; 27 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -1021,7 +1029,7 @@ i32.add i32.load8_u ) - (func $~lib/polyfills/bswap (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 8 i32.shl @@ -1035,7 +1043,7 @@ i32.or return ) - (func $~lib/dataview/DataView#getUint16 (; 30 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getUint16 (; 29 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $1 i32.const 0 @@ -1071,7 +1079,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/dataview/DataView#getUint32 (; 31 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getUint32 (; 30 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $1 i32.const 0 @@ -1107,7 +1115,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/dataview/DataView#getUint64 (; 32 ;) (type $FUNCSIG$jiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i64) + (func $~lib/dataview/DataView#getUint64 (; 31 ;) (type $FUNCSIG$jiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i64) (local $3 i64) local.get $1 i32.const 0 @@ -1143,7 +1151,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/dataview/DataView#setFloat32 (; 33 ;) (type $FUNCSIG$viifi) (param $0 i32) (param $1 i32) (param $2 f32) (param $3 i32) + (func $~lib/dataview/DataView#setFloat32 (; 32 ;) (type $FUNCSIG$viifi) (param $0 i32) (param $1 i32) (param $2 f32) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -1183,7 +1191,7 @@ i32.store end ) - (func $~lib/dataview/DataView#setFloat64 (; 34 ;) (type $FUNCSIG$viidi) (param $0 i32) (param $1 i32) (param $2 f64) (param $3 i32) + (func $~lib/dataview/DataView#setFloat64 (; 33 ;) (type $FUNCSIG$viidi) (param $0 i32) (param $1 i32) (param $2 f64) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -1223,7 +1231,7 @@ i64.store end ) - (func $~lib/dataview/DataView#setInt8 (; 35 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/dataview/DataView#setInt8 (; 34 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 local.get $0 i32.load offset=8 @@ -1243,7 +1251,7 @@ local.get $2 i32.store8 ) - (func $~lib/dataview/DataView#setInt16 (; 36 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (func $~lib/dataview/DataView#setInt16 (; 35 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -1277,7 +1285,7 @@ end i32.store16 ) - (func $~lib/dataview/DataView#setInt32 (; 37 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (func $~lib/dataview/DataView#setInt32 (; 36 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -1311,7 +1319,7 @@ end i32.store ) - (func $~lib/dataview/DataView#setInt64 (; 38 ;) (type $FUNCSIG$viiji) (param $0 i32) (param $1 i32) (param $2 i64) (param $3 i32) + (func $~lib/dataview/DataView#setInt64 (; 37 ;) (type $FUNCSIG$viiji) (param $0 i32) (param $1 i32) (param $2 i64) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -1345,7 +1353,7 @@ end i64.store ) - (func $~lib/dataview/DataView#setUint8 (; 39 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/dataview/DataView#setUint8 (; 38 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 local.get $0 i32.load offset=8 @@ -1365,7 +1373,7 @@ local.get $2 i32.store8 ) - (func $~lib/dataview/DataView#setUint16 (; 40 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (func $~lib/dataview/DataView#setUint16 (; 39 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -1399,7 +1407,7 @@ end i32.store16 ) - (func $~lib/dataview/DataView#setUint32 (; 41 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (func $~lib/dataview/DataView#setUint32 (; 40 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -1433,7 +1441,7 @@ end i32.store ) - (func $~lib/dataview/DataView#setUint64 (; 42 ;) (type $FUNCSIG$viiji) (param $0 i32) (param $1 i32) (param $2 i64) (param $3 i32) + (func $~lib/dataview/DataView#setUint64 (; 41 ;) (type $FUNCSIG$viiji) (param $0 i32) (param $1 i32) (param $2 i64) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -1467,7 +1475,7 @@ end i64.store ) - (func $start:std/dataview (; 43 ;) (type $FUNCSIG$v) + (func $start:std/dataview (; 42 ;) (type $FUNCSIG$v) global.get $~lib/memory/HEAP_BASE i32.const 7 i32.add @@ -3160,9 +3168,9 @@ unreachable end ) - (func $start (; 44 ;) (type $FUNCSIG$v) + (func $start (; 43 ;) (type $FUNCSIG$v) call $start:std/dataview ) - (func $null (; 45 ;) (type $FUNCSIG$v) + (func $null (; 44 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/date.optimized.wat b/tests/compiler/std/date.optimized.wat index 900c23f4..af285a5e 100644 --- a/tests/compiler/std/date.optimized.wat +++ b/tests/compiler/std/date.optimized.wat @@ -90,7 +90,7 @@ if i32.const 0 i32.const 48 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -104,7 +104,7 @@ if i32.const 0 i32.const 48 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/date.untouched.wat b/tests/compiler/std/date.untouched.wat index 66eb060a..78907758 100644 --- a/tests/compiler/std/date.untouched.wat +++ b/tests/compiler/std/date.untouched.wat @@ -142,11 +142,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 7 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 6 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -154,7 +150,7 @@ if i32.const 0 i32.const 48 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -169,13 +165,13 @@ if i32.const 0 i32.const 48 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -185,15 +181,19 @@ i32.store local.get $0 ) - (func $~lib/date/Date#constructor (; 9 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) + (func $~lib/date/Date#constructor (; 8 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (local $2 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 8 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 8 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 2 @@ -210,17 +210,17 @@ i64.store local.get $0 ) - (func $~lib/date/Date#getTime (; 10 ;) (type $FUNCSIG$ji) (param $0 i32) (result i64) + (func $~lib/date/Date#getTime (; 9 ;) (type $FUNCSIG$ji) (param $0 i32) (result i64) local.get $0 i64.load ) - (func $~lib/date/Date#setTime (; 11 ;) (type $FUNCSIG$jij) (param $0 i32) (param $1 i64) (result i64) + (func $~lib/date/Date#setTime (; 10 ;) (type $FUNCSIG$jij) (param $0 i32) (param $1 i64) (result i64) local.get $0 local.get $1 i64.store local.get $1 ) - (func $start:std/date (; 12 ;) (type $FUNCSIG$v) + (func $start:std/date (; 11 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -405,9 +405,9 @@ unreachable end ) - (func $start (; 13 ;) (type $FUNCSIG$v) + (func $start (; 12 ;) (type $FUNCSIG$v) call $start:std/date ) - (func $null (; 14 ;) (type $FUNCSIG$v) + (func $null (; 13 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 2f38ffe7..b876f1ad 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -123,7 +123,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -137,7 +137,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/map.untouched.wat b/tests/compiler/std/map.untouched.wat index daeb9b1e..c91cfcde 100644 --- a/tests/compiler/std/map.untouched.wat +++ b/tests/compiler/std/map.untouched.wat @@ -148,11 +148,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -160,7 +156,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -175,13 +171,13 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -191,7 +187,7 @@ i32.store local.get $0 ) - (func $~lib/memory/memory.fill (; 7 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/memory/memory.fill (; 6 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i64) @@ -447,7 +443,7 @@ end end ) - (func $~lib/arraybuffer/ArrayBuffer#constructor (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/arraybuffer/ArrayBuffer#constructor (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $1 @@ -461,7 +457,7 @@ call $~lib/env/abort unreachable end - block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) local.get $1 local.set $2 local.get $2 @@ -480,7 +476,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/map/Map#clear (; 9 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/map/Map#clear (; 8 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -506,15 +502,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/map/Map#constructor (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#constructor (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 1 @@ -545,14 +545,14 @@ call $~lib/map/Map#clear local.get $0 ) - (func $~lib/util/hash/hash8 (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/hash/hash8 (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const -2128831035 local.get $0 i32.xor i32.const 16777619 i32.mul ) - (func $~lib/map/Map#find (; 12 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/map/Map#find (; 11 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -607,7 +607,7 @@ end i32.const 0 ) - (func $~lib/map/Map#has (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#has (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -626,7 +626,7 @@ i32.const 0 i32.ne ) - (func $~lib/map/Map#rehash (; 14 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/map/Map#rehash (; 13 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -760,7 +760,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/map/Map#set (; 15 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/map/Map#set (; 14 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -868,7 +868,7 @@ i32.store end ) - (func $~lib/map/Map#get (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#get (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -894,11 +894,11 @@ unreachable end ) - (func $~lib/map/Map#get:size (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#get:size (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/map/Map#delete (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#delete (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -975,7 +975,7 @@ end i32.const 1 ) - (func $std/map/test (; 19 ;) (type $FUNCSIG$v) + (func $std/map/test (; 18 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -1359,7 +1359,7 @@ unreachable end ) - (func $~lib/map/Map#clear (; 20 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/map/Map#clear (; 19 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -1385,15 +1385,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/map/Map#constructor (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#constructor (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 4 @@ -1424,7 +1428,7 @@ call $~lib/map/Map#clear local.get $0 ) - (func $~lib/map/Map#find (; 22 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/map/Map#find (; 21 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -1477,7 +1481,7 @@ end i32.const 0 ) - (func $~lib/map/Map#has (; 23 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#has (; 22 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -1494,7 +1498,7 @@ i32.const 0 i32.ne ) - (func $~lib/map/Map#rehash (; 24 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/map/Map#rehash (; 23 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -1628,7 +1632,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/map/Map#set (; 25 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/map/Map#set (; 24 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -1734,7 +1738,7 @@ i32.store end ) - (func $~lib/map/Map#get (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#get (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -1758,11 +1762,11 @@ unreachable end ) - (func $~lib/map/Map#get:size (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#get:size (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/map/Map#delete (; 28 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#delete (; 27 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -1837,7 +1841,7 @@ end i32.const 1 ) - (func $std/map/test (; 29 ;) (type $FUNCSIG$v) + (func $std/map/test (; 28 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -2207,7 +2211,7 @@ unreachable end ) - (func $~lib/map/Map#clear (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/map/Map#clear (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -2233,15 +2237,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/map/Map#constructor (; 31 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#constructor (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.3 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 5 @@ -2272,7 +2280,7 @@ call $~lib/map/Map#clear local.get $0 ) - (func $~lib/util/hash/hash16 (; 32 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/hash/hash16 (; 31 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) i32.const -2128831035 local.set $1 @@ -2294,7 +2302,7 @@ local.set $1 local.get $1 ) - (func $~lib/map/Map#find (; 33 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/map/Map#find (; 32 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -2349,7 +2357,7 @@ end i32.const 0 ) - (func $~lib/map/Map#has (; 34 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#has (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -2368,7 +2376,7 @@ i32.const 0 i32.ne ) - (func $~lib/map/Map#rehash (; 35 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/map/Map#rehash (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -2502,7 +2510,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/map/Map#set (; 36 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/map/Map#set (; 35 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -2610,7 +2618,7 @@ i32.store end ) - (func $~lib/map/Map#get (; 37 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#get (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -2636,11 +2644,11 @@ unreachable end ) - (func $~lib/map/Map#get:size (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#get:size (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/map/Map#delete (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#delete (; 38 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -2717,7 +2725,7 @@ end i32.const 1 ) - (func $std/map/test (; 40 ;) (type $FUNCSIG$v) + (func $std/map/test (; 39 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -3101,7 +3109,7 @@ unreachable end ) - (func $~lib/map/Map#clear (; 41 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/map/Map#clear (; 40 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -3127,15 +3135,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/map/Map#constructor (; 42 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#constructor (; 41 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.4 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 6 @@ -3166,7 +3178,7 @@ call $~lib/map/Map#clear local.get $0 ) - (func $~lib/map/Map#find (; 43 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/map/Map#find (; 42 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -3219,7 +3231,7 @@ end i32.const 0 ) - (func $~lib/map/Map#has (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#has (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -3236,7 +3248,7 @@ i32.const 0 i32.ne ) - (func $~lib/map/Map#rehash (; 45 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/map/Map#rehash (; 44 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3370,7 +3382,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/map/Map#set (; 46 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/map/Map#set (; 45 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -3476,7 +3488,7 @@ i32.store end ) - (func $~lib/map/Map#get (; 47 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#get (; 46 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -3500,11 +3512,11 @@ unreachable end ) - (func $~lib/map/Map#get:size (; 48 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#get:size (; 47 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/map/Map#delete (; 49 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#delete (; 48 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3579,7 +3591,7 @@ end i32.const 1 ) - (func $std/map/test (; 50 ;) (type $FUNCSIG$v) + (func $std/map/test (; 49 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -3949,7 +3961,7 @@ unreachable end ) - (func $~lib/map/Map#clear (; 51 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/map/Map#clear (; 50 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -3975,15 +3987,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/map/Map#constructor (; 52 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#constructor (; 51 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.5 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 7 @@ -4014,7 +4030,7 @@ call $~lib/map/Map#clear local.get $0 ) - (func $~lib/util/hash/hash32 (; 53 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/hash/hash32 (; 52 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) i32.const -2128831035 local.set $1 @@ -4056,7 +4072,7 @@ local.set $1 local.get $1 ) - (func $~lib/map/Map#find (; 54 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/map/Map#find (; 53 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -4107,7 +4123,7 @@ end i32.const 0 ) - (func $~lib/map/Map#has (; 55 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#has (; 54 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -4122,7 +4138,7 @@ i32.const 0 i32.ne ) - (func $~lib/map/Map#rehash (; 56 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/map/Map#rehash (; 55 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4256,7 +4272,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/map/Map#set (; 57 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/map/Map#set (; 56 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4360,7 +4376,7 @@ i32.store end ) - (func $~lib/map/Map#get (; 58 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#get (; 57 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -4382,11 +4398,11 @@ unreachable end ) - (func $~lib/map/Map#get:size (; 59 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#get:size (; 58 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/map/Map#delete (; 60 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#delete (; 59 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4459,7 +4475,7 @@ end i32.const 1 ) - (func $std/map/test (; 61 ;) (type $FUNCSIG$v) + (func $std/map/test (; 60 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -4815,7 +4831,7 @@ unreachable end ) - (func $~lib/map/Map#clear (; 62 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/map/Map#clear (; 61 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -4841,15 +4857,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/map/Map#constructor (; 63 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#constructor (; 62 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.6 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 8 @@ -4880,7 +4900,7 @@ call $~lib/map/Map#clear local.get $0 ) - (func $~lib/map/Map#find (; 64 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/map/Map#find (; 63 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -4931,7 +4951,7 @@ end i32.const 0 ) - (func $~lib/map/Map#has (; 65 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#has (; 64 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -4946,7 +4966,7 @@ i32.const 0 i32.ne ) - (func $~lib/map/Map#rehash (; 66 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/map/Map#rehash (; 65 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -5080,7 +5100,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/map/Map#set (; 67 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/map/Map#set (; 66 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5184,7 +5204,7 @@ i32.store end ) - (func $~lib/map/Map#get (; 68 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#get (; 67 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -5206,11 +5226,11 @@ unreachable end ) - (func $~lib/map/Map#get:size (; 69 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#get:size (; 68 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/map/Map#delete (; 70 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#delete (; 69 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -5283,7 +5303,7 @@ end i32.const 1 ) - (func $std/map/test (; 71 ;) (type $FUNCSIG$v) + (func $std/map/test (; 70 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -5639,7 +5659,7 @@ unreachable end ) - (func $~lib/map/Map#clear (; 72 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/map/Map#clear (; 71 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -5665,15 +5685,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/map/Map#constructor (; 73 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#constructor (; 72 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.7 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 9 @@ -5704,7 +5728,7 @@ call $~lib/map/Map#clear local.get $0 ) - (func $~lib/util/hash/hash64 (; 74 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (func $~lib/util/hash/hash64 (; 73 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -5792,7 +5816,7 @@ local.set $3 local.get $3 ) - (func $~lib/map/Map#find (; 75 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) + (func $~lib/map/Map#find (; 74 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -5843,7 +5867,7 @@ end i32.const 0 ) - (func $~lib/map/Map#has (; 76 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) + (func $~lib/map/Map#has (; 75 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (local $2 i64) local.get $0 local.get $1 @@ -5858,7 +5882,7 @@ i32.const 0 i32.ne ) - (func $~lib/map/Map#rehash (; 77 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/map/Map#rehash (; 76 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -5993,7 +6017,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/map/Map#set (; 78 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) + (func $~lib/map/Map#set (; 77 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i64) (local $4 i32) (local $5 i32) @@ -6098,7 +6122,7 @@ i32.store end ) - (func $~lib/map/Map#get (; 79 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) + (func $~lib/map/Map#get (; 78 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (local $2 i64) (local $3 i32) local.get $0 @@ -6120,11 +6144,11 @@ unreachable end ) - (func $~lib/map/Map#get:size (; 80 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#get:size (; 79 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/map/Map#delete (; 81 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) + (func $~lib/map/Map#delete (; 80 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (local $2 i64) (local $3 i32) (local $4 i32) @@ -6198,7 +6222,7 @@ end i32.const 1 ) - (func $std/map/test (; 82 ;) (type $FUNCSIG$v) + (func $std/map/test (; 81 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i64) i32.const 0 @@ -6561,7 +6585,7 @@ unreachable end ) - (func $~lib/map/Map#clear (; 83 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/map/Map#clear (; 82 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -6587,15 +6611,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/map/Map#constructor (; 84 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#constructor (; 83 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.8 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 10 @@ -6626,7 +6654,7 @@ call $~lib/map/Map#clear local.get $0 ) - (func $~lib/map/Map#find (; 85 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) + (func $~lib/map/Map#find (; 84 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -6677,7 +6705,7 @@ end i32.const 0 ) - (func $~lib/map/Map#has (; 86 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) + (func $~lib/map/Map#has (; 85 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (local $2 i64) local.get $0 local.get $1 @@ -6692,7 +6720,7 @@ i32.const 0 i32.ne ) - (func $~lib/map/Map#rehash (; 87 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/map/Map#rehash (; 86 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -6827,7 +6855,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/map/Map#set (; 88 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) + (func $~lib/map/Map#set (; 87 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i64) (local $4 i32) (local $5 i32) @@ -6932,7 +6960,7 @@ i32.store end ) - (func $~lib/map/Map#get (; 89 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) + (func $~lib/map/Map#get (; 88 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (local $2 i64) (local $3 i32) local.get $0 @@ -6954,11 +6982,11 @@ unreachable end ) - (func $~lib/map/Map#get:size (; 90 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#get:size (; 89 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/map/Map#delete (; 91 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) + (func $~lib/map/Map#delete (; 90 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (local $2 i64) (local $3 i32) (local $4 i32) @@ -7032,7 +7060,7 @@ end i32.const 1 ) - (func $std/map/test (; 92 ;) (type $FUNCSIG$v) + (func $std/map/test (; 91 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i64) i32.const 0 @@ -7395,7 +7423,7 @@ unreachable end ) - (func $~lib/map/Map#clear (; 93 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/map/Map#clear (; 92 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -7421,15 +7449,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/map/Map#constructor (; 94 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#constructor (; 93 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.9 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 11 @@ -7460,7 +7492,7 @@ call $~lib/map/Map#clear local.get $0 ) - (func $~lib/map/Map#find (; 95 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32) + (func $~lib/map/Map#find (; 94 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -7511,7 +7543,7 @@ end i32.const 0 ) - (func $~lib/map/Map#has (; 96 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) + (func $~lib/map/Map#has (; 95 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) (local $2 f32) local.get $0 local.get $1 @@ -7527,7 +7559,7 @@ i32.const 0 i32.ne ) - (func $~lib/map/Map#rehash (; 97 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/map/Map#rehash (; 96 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -7663,7 +7695,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/map/Map#set (; 98 ;) (type $FUNCSIG$vifi) (param $0 i32) (param $1 f32) (param $2 i32) + (func $~lib/map/Map#set (; 97 ;) (type $FUNCSIG$vifi) (param $0 i32) (param $1 f32) (param $2 i32) (local $3 f32) (local $4 i32) (local $5 i32) @@ -7769,7 +7801,7 @@ i32.store end ) - (func $~lib/map/Map#get (; 99 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) + (func $~lib/map/Map#get (; 98 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) (local $2 f32) (local $3 i32) local.get $0 @@ -7792,11 +7824,11 @@ unreachable end ) - (func $~lib/map/Map#get:size (; 100 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#get:size (; 99 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/map/Map#delete (; 101 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) + (func $~lib/map/Map#delete (; 100 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) (local $2 f32) (local $3 i32) (local $4 i32) @@ -7871,7 +7903,7 @@ end i32.const 1 ) - (func $std/map/test (; 102 ;) (type $FUNCSIG$v) + (func $std/map/test (; 101 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 f32) i32.const 0 @@ -8234,7 +8266,7 @@ unreachable end ) - (func $~lib/map/Map#clear (; 103 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/map/Map#clear (; 102 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -8260,15 +8292,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/map/Map#constructor (; 104 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#constructor (; 103 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.10 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 12 @@ -8299,7 +8335,7 @@ call $~lib/map/Map#clear local.get $0 ) - (func $~lib/map/Map#find (; 105 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32) + (func $~lib/map/Map#find (; 104 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -8350,7 +8386,7 @@ end i32.const 0 ) - (func $~lib/map/Map#has (; 106 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (func $~lib/map/Map#has (; 105 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) (local $2 f64) local.get $0 local.get $1 @@ -8366,7 +8402,7 @@ i32.const 0 i32.ne ) - (func $~lib/map/Map#rehash (; 107 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/map/Map#rehash (; 106 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8502,7 +8538,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/map/Map#set (; 108 ;) (type $FUNCSIG$vidi) (param $0 i32) (param $1 f64) (param $2 i32) + (func $~lib/map/Map#set (; 107 ;) (type $FUNCSIG$vidi) (param $0 i32) (param $1 f64) (param $2 i32) (local $3 f64) (local $4 i32) (local $5 i32) @@ -8608,7 +8644,7 @@ i32.store end ) - (func $~lib/map/Map#get (; 109 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (func $~lib/map/Map#get (; 108 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) (local $2 f64) (local $3 i32) local.get $0 @@ -8631,11 +8667,11 @@ unreachable end ) - (func $~lib/map/Map#get:size (; 110 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#get:size (; 109 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/map/Map#delete (; 111 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (func $~lib/map/Map#delete (; 110 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) (local $2 f64) (local $3 i32) (local $4 i32) @@ -8710,7 +8746,7 @@ end i32.const 1 ) - (func $std/map/test (; 112 ;) (type $FUNCSIG$v) + (func $std/map/test (; 111 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 f64) i32.const 0 @@ -9073,7 +9109,7 @@ unreachable end ) - (func $start:std/map (; 113 ;) (type $FUNCSIG$v) + (func $start:std/map (; 112 ;) (type $FUNCSIG$v) global.get $~lib/memory/HEAP_BASE i32.const 7 i32.add @@ -9095,9 +9131,9 @@ call $std/map/test call $std/map/test ) - (func $start (; 114 ;) (type $FUNCSIG$v) + (func $start (; 113 ;) (type $FUNCSIG$v) call $start:std/map ) - (func $null (; 115 ;) (type $FUNCSIG$v) + (func $null (; 114 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/new.optimized.wat b/tests/compiler/std/new.optimized.wat index 6cb9c5eb..44b7c90a 100644 --- a/tests/compiler/std/new.optimized.wat +++ b/tests/compiler/std/new.optimized.wat @@ -84,7 +84,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -98,7 +98,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/new.untouched.wat b/tests/compiler/std/new.untouched.wat index c053cb9a..4746071e 100644 --- a/tests/compiler/std/new.untouched.wat +++ b/tests/compiler/std/new.untouched.wat @@ -135,11 +135,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -147,7 +143,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -162,13 +158,13 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -178,7 +174,7 @@ i32.store local.get $0 ) - (func $std/new/AClass#constructor (; 7 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) + (func $std/new/AClass#constructor (; 6 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) (local $2 i32) local.get $0 block (result i32) @@ -186,8 +182,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 8 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 8 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 1 @@ -212,7 +212,7 @@ f32.store offset=4 local.get $0 ) - (func $start:std/new (; 8 ;) (type $FUNCSIG$v) + (func $start:std/new (; 7 ;) (type $FUNCSIG$v) global.get $~lib/memory/HEAP_BASE i32.const 7 i32.add @@ -228,9 +228,9 @@ call $std/new/AClass#constructor global.set $std/new/aClass ) - (func $start (; 9 ;) (type $FUNCSIG$v) + (func $start (; 8 ;) (type $FUNCSIG$v) call $start:std/new ) - (func $null (; 10 ;) (type $FUNCSIG$v) + (func $null (; 9 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/operator-overloading.optimized.wat b/tests/compiler/std/operator-overloading.optimized.wat index 8542a050..32165621 100644 --- a/tests/compiler/std/operator-overloading.optimized.wat +++ b/tests/compiler/std/operator-overloading.optimized.wat @@ -167,7 +167,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -181,7 +181,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/operator-overloading.untouched.wat b/tests/compiler/std/operator-overloading.untouched.wat index 21a621b6..ea13f29e 100644 --- a/tests/compiler/std/operator-overloading.untouched.wat +++ b/tests/compiler/std/operator-overloading.untouched.wat @@ -203,11 +203,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -215,7 +211,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -230,13 +226,13 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -246,14 +242,18 @@ i32.store local.get $0 ) - (func $std/operator-overloading/Tester#constructor (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/operator-overloading/Tester#constructor (; 6 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 8 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 8 + local.set $3 + local.get $3 + call $~lib/runtime/doAllocate + end local.set $3 local.get $3 i32.const 1 @@ -269,7 +269,7 @@ i32.store offset=4 local.get $0 ) - (func $std/operator-overloading/Tester.add (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.add (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -283,7 +283,7 @@ i32.add call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.sub (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.sub (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -297,7 +297,7 @@ i32.sub call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.mul (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.mul (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -311,7 +311,7 @@ i32.mul call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.div (; 11 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.div (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -325,7 +325,7 @@ i32.div_s call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.mod (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.mod (; 11 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -339,7 +339,7 @@ i32.rem_s call $std/operator-overloading/Tester#constructor ) - (func $~lib/math/NativeMath.scalbn (; 13 ;) (type $FUNCSIG$ddi) (param $0 f64) (param $1 i32) (result f64) + (func $~lib/math/NativeMath.scalbn (; 12 ;) (type $FUNCSIG$ddi) (param $0 f64) (param $1 i32) (result f64) (local $2 f64) (local $3 i32) (local $4 i32) @@ -430,7 +430,7 @@ f64.reinterpret_i64 f64.mul ) - (func $~lib/math/NativeMath.pow (; 14 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (func $~lib/math/NativeMath.pow (; 13 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) (local $2 i64) (local $3 i32) (local $4 i32) @@ -1518,7 +1518,7 @@ local.get $16 f64.mul ) - (func $std/operator-overloading/Tester.pow (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.pow (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -1538,7 +1538,7 @@ i32.trunc_f64_s call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.and (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.and (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -1552,7 +1552,7 @@ i32.and call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.or (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.or (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -1566,7 +1566,7 @@ i32.or call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.xor (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.xor (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -1580,7 +1580,7 @@ i32.xor call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.equals (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.equals (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 i32.load @@ -1598,7 +1598,7 @@ local.get $2 end ) - (func $std/operator-overloading/Tester.notEquals (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.notEquals (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 i32.load @@ -1616,7 +1616,7 @@ local.get $2 end ) - (func $std/operator-overloading/Tester.greater (; 21 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.greater (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 i32.load @@ -1634,7 +1634,7 @@ local.get $2 end ) - (func $std/operator-overloading/Tester.greaterEquals (; 22 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.greaterEquals (; 21 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 i32.load @@ -1652,7 +1652,7 @@ local.get $2 end ) - (func $std/operator-overloading/Tester.less (; 23 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.less (; 22 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 i32.load @@ -1670,7 +1670,7 @@ local.get $2 end ) - (func $std/operator-overloading/Tester.lessEquals (; 24 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.lessEquals (; 23 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 i32.load @@ -1688,7 +1688,7 @@ local.get $2 end ) - (func $std/operator-overloading/Tester.shr (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.shr (; 24 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -1700,7 +1700,7 @@ i32.shr_s call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.shu (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.shu (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -1712,7 +1712,7 @@ i32.shr_u call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.shl (; 27 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/operator-overloading/Tester.shl (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -1724,7 +1724,7 @@ i32.shl call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.pos (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/operator-overloading/Tester.pos (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -1732,7 +1732,7 @@ i32.load offset=4 call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.neg (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/operator-overloading/Tester.neg (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 0 i32.const 0 local.get $0 @@ -1744,7 +1744,7 @@ i32.sub call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.not (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/operator-overloading/Tester.not (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -1756,7 +1756,7 @@ i32.xor call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester.excl (; 31 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/operator-overloading/Tester.excl (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.load @@ -1770,7 +1770,7 @@ local.get $1 end ) - (func $std/operator-overloading/Tester#inc (; 32 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/operator-overloading/Tester#inc (; 31 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 local.get $0 i32.load @@ -1785,7 +1785,7 @@ i32.store offset=4 local.get $0 ) - (func $std/operator-overloading/Tester#dec (; 33 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/operator-overloading/Tester#dec (; 32 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 local.get $0 i32.load @@ -1800,7 +1800,7 @@ i32.store offset=4 local.get $0 ) - (func $std/operator-overloading/Tester#postInc (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/operator-overloading/Tester#postInc (; 33 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -1812,7 +1812,7 @@ i32.add call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/Tester#postDec (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $std/operator-overloading/Tester#postDec (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const 0 local.get $0 i32.load @@ -1824,14 +1824,18 @@ i32.sub call $std/operator-overloading/Tester#constructor ) - (func $std/operator-overloading/TesterInlineStatic#constructor (; 36 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/operator-overloading/TesterInlineStatic#constructor (; 35 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 8 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + i32.const 8 + local.set $3 + local.get $3 + call $~lib/runtime/doAllocate + end local.set $3 local.get $3 i32.const 3 @@ -1847,14 +1851,18 @@ i32.store offset=4 local.get $0 ) - (func $std/operator-overloading/TesterInlineInstance#constructor (; 37 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/operator-overloading/TesterInlineInstance#constructor (; 36 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 8 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + i32.const 8 + local.set $3 + local.get $3 + call $~lib/runtime/doAllocate + end local.set $3 local.get $3 i32.const 4 @@ -1870,7 +1878,7 @@ i32.store offset=4 local.get $0 ) - (func $start:std/operator-overloading (; 38 ;) (type $FUNCSIG$v) + (func $start:std/operator-overloading (; 37 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) global.get $~lib/memory/HEAP_BASE @@ -2931,9 +2939,9 @@ unreachable end ) - (func $start (; 39 ;) (type $FUNCSIG$v) + (func $start (; 38 ;) (type $FUNCSIG$v) call $start:std/operator-overloading ) - (func $null (; 40 ;) (type $FUNCSIG$v) + (func $null (; 39 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/runtime.optimized.wat b/tests/compiler/std/runtime.optimized.wat index 2b0b25aa..acdde444 100644 --- a/tests/compiler/std/runtime.optimized.wat +++ b/tests/compiler/std/runtime.optimized.wat @@ -2616,7 +2616,7 @@ if i32.const 0 i32.const 232 - i32.const 100 + i32.const 107 i32.const 8 call $~lib/env/abort unreachable @@ -2653,7 +2653,7 @@ if i32.const 0 i32.const 232 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -2667,7 +2667,7 @@ if i32.const 0 i32.const 232 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/runtime.untouched.wat b/tests/compiler/std/runtime.untouched.wat index 492ff4fd..c1a04700 100644 --- a/tests/compiler/std/runtime.untouched.wat +++ b/tests/compiler/std/runtime.untouched.wat @@ -3301,7 +3301,7 @@ if i32.const 0 i32.const 232 - i32.const 100 + i32.const 107 i32.const 8 call $~lib/env/abort unreachable @@ -3342,7 +3342,7 @@ if i32.const 0 i32.const 232 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -3357,7 +3357,7 @@ if i32.const 0 i32.const 232 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index 73811b2e..7821ac7f 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -119,7 +119,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -133,7 +133,7 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/set.untouched.wat b/tests/compiler/std/set.untouched.wat index 73a1c56c..5e87e83b 100644 --- a/tests/compiler/std/set.untouched.wat +++ b/tests/compiler/std/set.untouched.wat @@ -148,11 +148,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -160,7 +156,7 @@ if i32.const 0 i32.const 16 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -175,13 +171,13 @@ if i32.const 0 i32.const 16 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -191,7 +187,7 @@ i32.store local.get $0 ) - (func $~lib/memory/memory.fill (; 7 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/memory/memory.fill (; 6 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i64) @@ -447,7 +443,7 @@ end end ) - (func $~lib/arraybuffer/ArrayBuffer#constructor (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/arraybuffer/ArrayBuffer#constructor (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $1 @@ -461,7 +457,7 @@ call $~lib/env/abort unreachable end - block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) local.get $1 local.set $2 local.get $2 @@ -480,7 +476,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/set/Set#clear (; 9 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/set/Set#clear (; 8 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -506,15 +502,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/set/Set#constructor (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#constructor (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 1 @@ -545,14 +545,14 @@ call $~lib/set/Set#clear local.get $0 ) - (func $~lib/util/hash/hash8 (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/hash/hash8 (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) i32.const -2128831035 local.get $0 i32.xor i32.const 16777619 i32.mul ) - (func $~lib/set/Set#find (; 12 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/set/Set#find (; 11 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -607,7 +607,7 @@ end i32.const 0 ) - (func $~lib/set/Set#has (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/set/Set#has (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -626,7 +626,7 @@ i32.const 0 i32.ne ) - (func $~lib/set/Set#rehash (; 14 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#rehash (; 13 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -756,7 +756,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/set/Set#add (; 15 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#add (; 14 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -858,11 +858,11 @@ i32.store end ) - (func $~lib/set/Set#get:size (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#get:size (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/set/Set#delete (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/set/Set#delete (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -939,7 +939,7 @@ end i32.const 1 ) - (func $std/set/test (; 18 ;) (type $FUNCSIG$v) + (func $std/set/test (; 17 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -1222,7 +1222,7 @@ unreachable end ) - (func $~lib/set/Set#clear (; 19 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/set/Set#clear (; 18 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -1248,15 +1248,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/set/Set#constructor (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#constructor (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 4 @@ -1287,7 +1291,7 @@ call $~lib/set/Set#clear local.get $0 ) - (func $~lib/set/Set#find (; 21 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/set/Set#find (; 20 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -1340,7 +1344,7 @@ end i32.const 0 ) - (func $~lib/set/Set#has (; 22 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/set/Set#has (; 21 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -1357,7 +1361,7 @@ i32.const 0 i32.ne ) - (func $~lib/set/Set#rehash (; 23 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#rehash (; 22 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -1487,7 +1491,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/set/Set#add (; 24 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#add (; 23 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -1587,11 +1591,11 @@ i32.store end ) - (func $~lib/set/Set#get:size (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#get:size (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/set/Set#delete (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/set/Set#delete (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -1666,7 +1670,7 @@ end i32.const 1 ) - (func $std/set/test (; 27 ;) (type $FUNCSIG$v) + (func $std/set/test (; 26 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -1949,7 +1953,7 @@ unreachable end ) - (func $~lib/set/Set#clear (; 28 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/set/Set#clear (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -1975,15 +1979,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/set/Set#constructor (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#constructor (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.3 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 5 @@ -2014,7 +2022,7 @@ call $~lib/set/Set#clear local.get $0 ) - (func $~lib/util/hash/hash16 (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/hash/hash16 (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) i32.const -2128831035 local.set $1 @@ -2036,7 +2044,7 @@ local.set $1 local.get $1 ) - (func $~lib/set/Set#find (; 31 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/set/Set#find (; 30 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -2091,7 +2099,7 @@ end i32.const 0 ) - (func $~lib/set/Set#has (; 32 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/set/Set#has (; 31 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -2110,7 +2118,7 @@ i32.const 0 i32.ne ) - (func $~lib/set/Set#rehash (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#rehash (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -2240,7 +2248,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/set/Set#add (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#add (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -2342,11 +2350,11 @@ i32.store end ) - (func $~lib/set/Set#get:size (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#get:size (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/set/Set#delete (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/set/Set#delete (; 35 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -2423,7 +2431,7 @@ end i32.const 1 ) - (func $std/set/test (; 37 ;) (type $FUNCSIG$v) + (func $std/set/test (; 36 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -2706,7 +2714,7 @@ unreachable end ) - (func $~lib/set/Set#clear (; 38 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/set/Set#clear (; 37 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -2732,15 +2740,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/set/Set#constructor (; 39 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#constructor (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.4 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 6 @@ -2771,7 +2783,7 @@ call $~lib/set/Set#clear local.get $0 ) - (func $~lib/set/Set#find (; 40 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/set/Set#find (; 39 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -2824,7 +2836,7 @@ end i32.const 0 ) - (func $~lib/set/Set#has (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/set/Set#has (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -2841,7 +2853,7 @@ i32.const 0 i32.ne ) - (func $~lib/set/Set#rehash (; 42 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#rehash (; 41 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -2971,7 +2983,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/set/Set#add (; 43 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#add (; 42 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3071,11 +3083,11 @@ i32.store end ) - (func $~lib/set/Set#get:size (; 44 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#get:size (; 43 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/set/Set#delete (; 45 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/set/Set#delete (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3150,7 +3162,7 @@ end i32.const 1 ) - (func $std/set/test (; 46 ;) (type $FUNCSIG$v) + (func $std/set/test (; 45 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -3433,7 +3445,7 @@ unreachable end ) - (func $~lib/set/Set#clear (; 47 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/set/Set#clear (; 46 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -3459,15 +3471,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/set/Set#constructor (; 48 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#constructor (; 47 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.5 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 7 @@ -3498,7 +3514,7 @@ call $~lib/set/Set#clear local.get $0 ) - (func $~lib/util/hash/hash32 (; 49 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/hash/hash32 (; 48 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) i32.const -2128831035 local.set $1 @@ -3540,7 +3556,7 @@ local.set $1 local.get $1 ) - (func $~lib/set/Set#find (; 50 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/set/Set#find (; 49 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -3591,7 +3607,7 @@ end i32.const 0 ) - (func $~lib/set/Set#has (; 51 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/set/Set#has (; 50 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -3606,7 +3622,7 @@ i32.const 0 i32.ne ) - (func $~lib/set/Set#rehash (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#rehash (; 51 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3736,7 +3752,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/set/Set#add (; 53 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#add (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3834,11 +3850,11 @@ i32.store end ) - (func $~lib/set/Set#get:size (; 54 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#get:size (; 53 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/set/Set#delete (; 55 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/set/Set#delete (; 54 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3911,7 +3927,7 @@ end i32.const 1 ) - (func $std/set/test (; 56 ;) (type $FUNCSIG$v) + (func $std/set/test (; 55 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -4194,7 +4210,7 @@ unreachable end ) - (func $~lib/set/Set#clear (; 57 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/set/Set#clear (; 56 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -4220,15 +4236,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/set/Set#constructor (; 58 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#constructor (; 57 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.6 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 8 @@ -4259,7 +4279,7 @@ call $~lib/set/Set#clear local.get $0 ) - (func $~lib/set/Set#find (; 59 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/set/Set#find (; 58 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -4310,7 +4330,7 @@ end i32.const 0 ) - (func $~lib/set/Set#has (; 60 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/set/Set#has (; 59 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -4325,7 +4345,7 @@ i32.const 0 i32.ne ) - (func $~lib/set/Set#rehash (; 61 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#rehash (; 60 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4455,7 +4475,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/set/Set#add (; 62 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#add (; 61 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4553,11 +4573,11 @@ i32.store end ) - (func $~lib/set/Set#get:size (; 63 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#get:size (; 62 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/set/Set#delete (; 64 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/set/Set#delete (; 63 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4630,7 +4650,7 @@ end i32.const 1 ) - (func $std/set/test (; 65 ;) (type $FUNCSIG$v) + (func $std/set/test (; 64 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -4913,7 +4933,7 @@ unreachable end ) - (func $~lib/set/Set#clear (; 66 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/set/Set#clear (; 65 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -4939,15 +4959,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/set/Set#constructor (; 67 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#constructor (; 66 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.7 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 9 @@ -4978,7 +5002,7 @@ call $~lib/set/Set#clear local.get $0 ) - (func $~lib/util/hash/hash64 (; 68 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (func $~lib/util/hash/hash64 (; 67 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -5066,7 +5090,7 @@ local.set $3 local.get $3 ) - (func $~lib/set/Set#find (; 69 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) + (func $~lib/set/Set#find (; 68 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -5117,7 +5141,7 @@ end i32.const 0 ) - (func $~lib/set/Set#has (; 70 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) + (func $~lib/set/Set#has (; 69 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (local $2 i64) local.get $0 local.get $1 @@ -5132,7 +5156,7 @@ i32.const 0 i32.ne ) - (func $~lib/set/Set#rehash (; 71 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#rehash (; 70 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -5263,7 +5287,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/set/Set#add (; 72 ;) (type $FUNCSIG$vij) (param $0 i32) (param $1 i64) + (func $~lib/set/Set#add (; 71 ;) (type $FUNCSIG$vij) (param $0 i32) (param $1 i64) (local $2 i64) (local $3 i32) (local $4 i32) @@ -5362,11 +5386,11 @@ i32.store end ) - (func $~lib/set/Set#get:size (; 73 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#get:size (; 72 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/set/Set#delete (; 74 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) + (func $~lib/set/Set#delete (; 73 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (local $2 i64) (local $3 i32) (local $4 i32) @@ -5440,7 +5464,7 @@ end i32.const 1 ) - (func $std/set/test (; 75 ;) (type $FUNCSIG$v) + (func $std/set/test (; 74 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i64) i32.const 0 @@ -5723,7 +5747,7 @@ unreachable end ) - (func $~lib/set/Set#clear (; 76 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/set/Set#clear (; 75 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -5749,15 +5773,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/set/Set#constructor (; 77 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#constructor (; 76 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.8 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 10 @@ -5788,7 +5816,7 @@ call $~lib/set/Set#clear local.get $0 ) - (func $~lib/set/Set#find (; 78 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) + (func $~lib/set/Set#find (; 77 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -5839,7 +5867,7 @@ end i32.const 0 ) - (func $~lib/set/Set#has (; 79 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) + (func $~lib/set/Set#has (; 78 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (local $2 i64) local.get $0 local.get $1 @@ -5854,7 +5882,7 @@ i32.const 0 i32.ne ) - (func $~lib/set/Set#rehash (; 80 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#rehash (; 79 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -5985,7 +6013,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/set/Set#add (; 81 ;) (type $FUNCSIG$vij) (param $0 i32) (param $1 i64) + (func $~lib/set/Set#add (; 80 ;) (type $FUNCSIG$vij) (param $0 i32) (param $1 i64) (local $2 i64) (local $3 i32) (local $4 i32) @@ -6084,11 +6112,11 @@ i32.store end ) - (func $~lib/set/Set#get:size (; 82 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#get:size (; 81 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/set/Set#delete (; 83 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) + (func $~lib/set/Set#delete (; 82 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (local $2 i64) (local $3 i32) (local $4 i32) @@ -6162,7 +6190,7 @@ end i32.const 1 ) - (func $std/set/test (; 84 ;) (type $FUNCSIG$v) + (func $std/set/test (; 83 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i64) i32.const 0 @@ -6445,7 +6473,7 @@ unreachable end ) - (func $~lib/set/Set#clear (; 85 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/set/Set#clear (; 84 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -6471,15 +6499,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/set/Set#constructor (; 86 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#constructor (; 85 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.9 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 11 @@ -6510,7 +6542,7 @@ call $~lib/set/Set#clear local.get $0 ) - (func $~lib/set/Set#find (; 87 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32) + (func $~lib/set/Set#find (; 86 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -6561,7 +6593,7 @@ end i32.const 0 ) - (func $~lib/set/Set#has (; 88 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) + (func $~lib/set/Set#has (; 87 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) (local $2 f32) local.get $0 local.get $1 @@ -6577,7 +6609,7 @@ i32.const 0 i32.ne ) - (func $~lib/set/Set#rehash (; 89 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#rehash (; 88 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -6709,7 +6741,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/set/Set#add (; 90 ;) (type $FUNCSIG$vif) (param $0 i32) (param $1 f32) + (func $~lib/set/Set#add (; 89 ;) (type $FUNCSIG$vif) (param $0 i32) (param $1 f32) (local $2 f32) (local $3 i32) (local $4 i32) @@ -6809,11 +6841,11 @@ i32.store end ) - (func $~lib/set/Set#get:size (; 91 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#get:size (; 90 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/set/Set#delete (; 92 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) + (func $~lib/set/Set#delete (; 91 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) (local $2 f32) (local $3 i32) (local $4 i32) @@ -6888,7 +6920,7 @@ end i32.const 1 ) - (func $std/set/test (; 93 ;) (type $FUNCSIG$v) + (func $std/set/test (; 92 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 f32) i32.const 0 @@ -7171,7 +7203,7 @@ unreachable end ) - (func $~lib/set/Set#clear (; 94 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/set/Set#clear (; 93 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -7197,15 +7229,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/set/Set#constructor (; 95 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#constructor (; 94 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.10 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 12 @@ -7236,7 +7272,7 @@ call $~lib/set/Set#clear local.get $0 ) - (func $~lib/set/Set#find (; 96 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32) + (func $~lib/set/Set#find (; 95 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -7287,7 +7323,7 @@ end i32.const 0 ) - (func $~lib/set/Set#has (; 97 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (func $~lib/set/Set#has (; 96 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) (local $2 f64) local.get $0 local.get $1 @@ -7303,7 +7339,7 @@ i32.const 0 i32.ne ) - (func $~lib/set/Set#rehash (; 98 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/set/Set#rehash (; 97 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -7435,7 +7471,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/set/Set#add (; 99 ;) (type $FUNCSIG$vid) (param $0 i32) (param $1 f64) + (func $~lib/set/Set#add (; 98 ;) (type $FUNCSIG$vid) (param $0 i32) (param $1 f64) (local $2 f64) (local $3 i32) (local $4 i32) @@ -7535,11 +7571,11 @@ i32.store end ) - (func $~lib/set/Set#get:size (; 100 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/set/Set#get:size (; 99 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=20 ) - (func $~lib/set/Set#delete (; 101 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (func $~lib/set/Set#delete (; 100 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) (local $2 f64) (local $3 i32) (local $4 i32) @@ -7614,7 +7650,7 @@ end i32.const 1 ) - (func $std/set/test (; 102 ;) (type $FUNCSIG$v) + (func $std/set/test (; 101 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 f64) i32.const 0 @@ -7897,7 +7933,7 @@ unreachable end ) - (func $start:std/set (; 103 ;) (type $FUNCSIG$v) + (func $start:std/set (; 102 ;) (type $FUNCSIG$v) global.get $~lib/memory/HEAP_BASE i32.const 7 i32.add @@ -7919,9 +7955,9 @@ call $std/set/test call $std/set/test ) - (func $start (; 104 ;) (type $FUNCSIG$v) + (func $start (; 103 ;) (type $FUNCSIG$v) call $start:std/set ) - (func $null (; 105 ;) (type $FUNCSIG$v) + (func $null (; 104 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/static-array.untouched.wat b/tests/compiler/std/static-array.untouched.wat index 85a9a4dc..83797ee8 100644 --- a/tests/compiler/std/static-array.untouched.wat +++ b/tests/compiler/std/static-array.untouched.wat @@ -1834,7 +1834,7 @@ if i32.const 0 i32.const 280 - i32.const 100 + i32.const 107 i32.const 8 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/string-utf8.optimized.wat b/tests/compiler/std/string-utf8.optimized.wat index a13199bf..3c99f906 100644 --- a/tests/compiler/std/string-utf8.optimized.wat +++ b/tests/compiler/std/string-utf8.optimized.wat @@ -1514,7 +1514,7 @@ if i32.const 0 i32.const 136 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -1528,7 +1528,7 @@ if i32.const 0 i32.const 136 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/string-utf8.untouched.wat b/tests/compiler/std/string-utf8.untouched.wat index 505a71eb..9dc4016a 100644 --- a/tests/compiler/std/string-utf8.untouched.wat +++ b/tests/compiler/std/string-utf8.untouched.wat @@ -1926,7 +1926,7 @@ if i32.const 0 i32.const 136 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -1941,7 +1941,7 @@ if i32.const 0 i32.const 136 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 4e3860b9..0d53a666 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -283,7 +283,7 @@ if i32.const 0 i32.const 96 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -297,7 +297,7 @@ if i32.const 0 i32.const 96 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -3052,7 +3052,7 @@ if i32.const 0 i32.const 96 - i32.const 227 + i32.const 234 i32.const 57 call $~lib/env/abort unreachable @@ -3177,7 +3177,7 @@ if i32.const 0 i32.const 96 - i32.const 100 + i32.const 107 i32.const 8 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/string.untouched.wat b/tests/compiler/std/string.untouched.wat index 828f2f2b..888a29ff 100644 --- a/tests/compiler/std/string.untouched.wat +++ b/tests/compiler/std/string.untouched.wat @@ -353,7 +353,7 @@ if i32.const 0 i32.const 96 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -368,7 +368,7 @@ if i32.const 0 i32.const 96 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -3766,11 +3766,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/runtime/ALLOCATE (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/ArrayBufferView#constructor (; 36 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/runtime/ArrayBufferView#constructor (; 35 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $1 @@ -3781,7 +3777,7 @@ if i32.const 0 i32.const 96 - i32.const 227 + i32.const 234 i32.const 57 call $~lib/env/abort unreachable @@ -3798,8 +3794,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.8 (result i32) + i32.const 12 + local.set $4 + local.get $4 + call $~lib/runtime/doAllocate + end local.set $4 local.get $4 i32.const 3 @@ -3828,14 +3828,18 @@ i32.store offset=8 local.get $0 ) - (func $~lib/array/Array#constructor (; 37 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#constructor (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 16 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.9 (result i32) + i32.const 16 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 4 @@ -3853,12 +3857,12 @@ i32.store offset=12 local.get $0 ) - (func $~lib/memory/memory.free (; 38 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/memory/memory.free (; 37 ;) (type $FUNCSIG$vi) (param $0 i32) (local $1 i32) local.get $0 local.set $1 ) - (func $~lib/runtime/doReallocate (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doReallocate (; 38 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3923,7 +3927,7 @@ if i32.const 0 i32.const 96 - i32.const 100 + i32.const 107 i32.const 8 call $~lib/env/abort unreachable @@ -3955,7 +3959,7 @@ i32.store offset=4 local.get $0 ) - (func $~lib/array/ensureCapacity (; 40 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/array/ensureCapacity (; 39 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4013,7 +4017,7 @@ i32.store offset=8 end ) - (func $~lib/array/Array#push (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#push (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 i32.load offset=12 @@ -4039,7 +4043,7 @@ i32.store local.get $2 ) - (func $~lib/string/String#split (; 42 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/string/String#split (; 41 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4141,7 +4145,7 @@ i32.eqz br_if $break|0 block - block $~lib/runtime/ALLOCATE|inlined.8 (result i32) + block $~lib/runtime/ALLOCATE|inlined.10 (result i32) i32.const 2 local.set $8 local.get $8 @@ -4226,7 +4230,7 @@ i32.const 0 i32.gt_s if - block $~lib/runtime/ALLOCATE|inlined.9 (result i32) + block $~lib/runtime/ALLOCATE|inlined.11 (result i32) local.get $3 i32.const 1 i32.shl @@ -4302,7 +4306,7 @@ i32.const 0 i32.gt_s if - block $~lib/runtime/ALLOCATE|inlined.10 (result i32) + block $~lib/runtime/ALLOCATE|inlined.12 (result i32) local.get $14 i32.const 1 i32.shl @@ -4339,11 +4343,11 @@ end local.get $10 ) - (func $~lib/array/Array#get:length (; 43 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#get:length (; 42 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array#__get (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#__get (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -4366,7 +4370,7 @@ i32.add i32.load ) - (func $~lib/util/number/decimalCount32 (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/number/decimalCount32 (; 44 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.const 100000 @@ -4435,7 +4439,7 @@ unreachable unreachable ) - (func $~lib/util/number/utoa32_lut (; 46 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/number/utoa32_lut (; 45 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4578,7 +4582,7 @@ i32.store16 end ) - (func $~lib/util/number/itoa32 (; 47 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/number/itoa32 (; 46 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -4607,7 +4611,7 @@ local.get $1 i32.add local.set $2 - block $~lib/runtime/ALLOCATE|inlined.11 (result i32) + block $~lib/runtime/ALLOCATE|inlined.13 (result i32) local.get $2 i32.const 1 i32.shl @@ -4642,7 +4646,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/util/number/utoa32 (; 48 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/number/utoa32 (; 47 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -4657,7 +4661,7 @@ local.get $0 call $~lib/util/number/decimalCount32 local.set $1 - block $~lib/runtime/ALLOCATE|inlined.12 (result i32) + block $~lib/runtime/ALLOCATE|inlined.14 (result i32) local.get $1 i32.const 1 i32.shl @@ -4686,7 +4690,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/util/number/decimalCount64 (; 49 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (func $~lib/util/number/decimalCount64 (; 48 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (local $1 i32) local.get $0 i64.const 1000000000000000 @@ -4755,7 +4759,7 @@ unreachable unreachable ) - (func $~lib/util/number/utoa64_lut (; 50 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) + (func $~lib/util/number/utoa64_lut (; 49 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) (local $4 i64) (local $5 i32) @@ -4883,7 +4887,7 @@ local.get $2 call $~lib/util/number/utoa32_lut ) - (func $~lib/util/number/utoa64 (; 51 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (func $~lib/util/number/utoa64 (; 50 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -4908,7 +4912,7 @@ local.get $2 call $~lib/util/number/decimalCount32 local.set $3 - block $~lib/runtime/ALLOCATE|inlined.13 (result i32) + block $~lib/runtime/ALLOCATE|inlined.15 (result i32) local.get $3 i32.const 1 i32.shl @@ -4933,7 +4937,7 @@ local.get $0 call $~lib/util/number/decimalCount64 local.set $3 - block $~lib/runtime/ALLOCATE|inlined.14 (result i32) + block $~lib/runtime/ALLOCATE|inlined.16 (result i32) local.get $3 i32.const 1 i32.shl @@ -4963,7 +4967,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/util/number/itoa64 (; 52 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (func $~lib/util/number/itoa64 (; 51 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -5002,7 +5006,7 @@ local.get $1 i32.add local.set $4 - block $~lib/runtime/ALLOCATE|inlined.15 (result i32) + block $~lib/runtime/ALLOCATE|inlined.17 (result i32) local.get $4 i32.const 1 i32.shl @@ -5029,7 +5033,7 @@ local.get $1 i32.add local.set $4 - block $~lib/runtime/ALLOCATE|inlined.16 (result i32) + block $~lib/runtime/ALLOCATE|inlined.18 (result i32) local.get $4 i32.const 1 i32.shl @@ -5065,19 +5069,19 @@ call $~lib/runtime/doRegister end ) - (func $~lib/builtins/isFinite (; 53 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (func $~lib/builtins/isFinite (; 52 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) local.get $0 local.get $0 f64.sub f64.const 0 f64.eq ) - (func $~lib/builtins/isNaN (; 54 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (func $~lib/builtins/isNaN (; 53 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) local.get $0 local.get $0 f64.ne ) - (func $~lib/util/number/genDigits (; 55 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) + (func $~lib/util/number/genDigits (; 54 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) (local $7 i32) (local $8 i64) (local $9 i64) @@ -5648,7 +5652,7 @@ end local.get $15 ) - (func $~lib/util/number/prettify (; 56 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/prettify (; 55 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5981,7 +5985,7 @@ unreachable unreachable ) - (func $~lib/util/number/dtoa_core (; 57 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (func $~lib/util/number/dtoa_core (; 56 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) (local $2 i32) (local $3 f64) (local $4 i32) @@ -6427,7 +6431,7 @@ local.get $2 i32.add ) - (func $~lib/string/String#substring (; 58 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/string/String#substring (; 57 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -6532,7 +6536,7 @@ local.get $0 return end - block $~lib/runtime/ALLOCATE|inlined.18 (result i32) + block $~lib/runtime/ALLOCATE|inlined.20 (result i32) local.get $3 local.set $4 local.get $4 @@ -6553,7 +6557,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/runtime/doDiscard (; 59 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/doDiscard (; 58 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -6561,7 +6565,7 @@ i32.sub call $~lib/memory/memory.free ) - (func $~lib/util/number/dtoa (; 60 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (func $~lib/util/number/dtoa (; 59 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -6591,7 +6595,7 @@ select return end - block $~lib/runtime/ALLOCATE|inlined.17 (result i32) + block $~lib/runtime/ALLOCATE|inlined.19 (result i32) i32.const 28 i32.const 1 i32.shl @@ -6617,7 +6621,7 @@ end local.get $4 ) - (func $start:std/string (; 61 ;) (type $FUNCSIG$v) + (func $start:std/string (; 60 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -10009,12 +10013,12 @@ unreachable end ) - (func $std/string/getString (; 62 ;) (type $FUNCSIG$i) (result i32) + (func $std/string/getString (; 61 ;) (type $FUNCSIG$i) (result i32) global.get $std/string/str ) - (func $start (; 63 ;) (type $FUNCSIG$v) + (func $start (; 62 ;) (type $FUNCSIG$v) call $start:std/string ) - (func $null (; 64 ;) (type $FUNCSIG$v) + (func $null (; 63 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index 759ef8a4..1c377a26 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -143,7 +143,7 @@ if i32.const 0 i32.const 72 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -157,7 +157,7 @@ if i32.const 0 i32.const 72 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/symbol.untouched.wat b/tests/compiler/std/symbol.untouched.wat index 3dd3e95e..5bdcfb14 100644 --- a/tests/compiler/std/symbol.untouched.wat +++ b/tests/compiler/std/symbol.untouched.wat @@ -193,11 +193,7 @@ global.get $~lib/runtime/HEADER_SIZE i32.add ) - (func $~lib/runtime/ALLOCATE (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/assertUnregistered (; 6 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 global.get $~lib/memory/HEAP_BASE i32.gt_u @@ -205,7 +201,7 @@ if i32.const 0 i32.const 72 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -220,13 +216,13 @@ if i32.const 0 i32.const 72 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable end ) - (func $~lib/runtime/doRegister (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/runtime/doRegister (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 call $~lib/runtime/assertUnregistered local.get $0 @@ -236,7 +232,7 @@ i32.store local.get $0 ) - (func $~lib/memory/memory.fill (; 8 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/memory/memory.fill (; 7 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i64) @@ -492,7 +488,7 @@ end end ) - (func $~lib/arraybuffer/ArrayBuffer#constructor (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/arraybuffer/ArrayBuffer#constructor (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $1 @@ -506,7 +502,7 @@ call $~lib/env/abort unreachable end - block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) local.get $1 local.set $2 local.get $2 @@ -525,7 +521,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/map/Map#clear (; 10 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/map/Map#clear (; 9 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -551,15 +547,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/map/Map#constructor (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#constructor (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.0 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 2 @@ -590,7 +590,7 @@ call $~lib/map/Map#clear local.get $0 ) - (func $~lib/map/Map#clear (; 12 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/map/Map#clear (; 11 ;) (type $FUNCSIG$vi) (param $0 i32) local.get $0 i32.const 0 i32.const 16 @@ -616,15 +616,19 @@ i32.const 0 i32.store offset=20 ) - (func $~lib/map/Map#constructor (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/map/Map#constructor (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block (result i32) local.get $0 i32.eqz if block $~lib/runtime/REGISTER>|inlined.0 (result i32) - i32.const 24 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + i32.const 24 + local.set $1 + local.get $1 + call $~lib/runtime/doAllocate + end local.set $1 local.get $1 i32.const 4 @@ -655,7 +659,7 @@ call $~lib/map/Map#clear local.get $0 ) - (func $~lib/string/String#get:length (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/string/String#get:length (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 global.get $~lib/runtime/HEADER_SIZE i32.sub @@ -663,7 +667,7 @@ i32.const 1 i32.shr_u ) - (func $~lib/util/hash/hashStr (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/hash/hashStr (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -710,7 +714,7 @@ end local.get $1 ) - (func $~lib/util/string/compareImpl (; 16 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) + (func $~lib/util/string/compareImpl (; 15 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) (local $5 i32) (local $6 i32) (local $7 i32) @@ -763,7 +767,7 @@ end local.get $5 ) - (func $~lib/string/String.__eq (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__eq (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -807,7 +811,7 @@ call $~lib/util/string/compareImpl i32.eqz ) - (func $~lib/map/Map#find (; 18 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/map/Map#find (; 17 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -858,7 +862,7 @@ end i32.const 0 ) - (func $~lib/map/Map#has (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#has (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -873,7 +877,7 @@ i32.const 0 i32.ne ) - (func $~lib/map/Map#get (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#get (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -895,7 +899,7 @@ unreachable end ) - (func $~lib/map/Map#rehash (; 21 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/map/Map#rehash (; 20 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -1029,7 +1033,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/map/Map#set (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/map/Map#set (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -1133,7 +1137,7 @@ i32.store end ) - (func $~lib/util/hash/hash32 (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/util/hash/hash32 (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) i32.const -2128831035 local.set $1 @@ -1175,7 +1179,7 @@ local.set $1 local.get $1 ) - (func $~lib/map/Map#find (; 24 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/map/Map#find (; 23 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -1226,7 +1230,7 @@ end i32.const 0 ) - (func $~lib/map/Map#rehash (; 25 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/map/Map#rehash (; 24 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -1360,7 +1364,7 @@ i32.load offset=20 i32.store offset=16 ) - (func $~lib/map/Map#set (; 26 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/map/Map#set (; 25 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -1464,7 +1468,7 @@ i32.store end ) - (func $~lib/symbol/_Symbol.for (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/symbol/_Symbol.for (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) global.get $~lib/symbol/stringToId @@ -1511,7 +1515,7 @@ call $~lib/map/Map#set local.get $2 ) - (func $~lib/map/Map#has (; 28 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#has (; 27 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 local.get $1 @@ -1526,7 +1530,7 @@ i32.const 0 i32.ne ) - (func $~lib/map/Map#get (; 29 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/map/Map#get (; 28 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -1548,7 +1552,7 @@ unreachable end ) - (func $~lib/symbol/_Symbol.keyFor (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/symbol/_Symbol.keyFor (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) global.get $~lib/symbol/idToString i32.const 0 @@ -1569,7 +1573,7 @@ i32.const 0 end ) - (func $~lib/util/memory/memcpy (; 31 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/memory/memcpy (; 30 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -2770,7 +2774,7 @@ i32.store8 end ) - (func $~lib/memory/memory.copy (; 32 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/memory/memory.copy (; 31 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) block $~lib/util/memory/memmove|inlined.0 local.get $0 @@ -2999,7 +3003,7 @@ end end ) - (func $~lib/string/String#concat (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String#concat (; 32 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3033,7 +3037,7 @@ i32.const 160 return end - block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + block $~lib/runtime/ALLOCATE|inlined.3 (result i32) local.get $4 local.set $5 local.get $5 @@ -3058,7 +3062,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/string/String.__concat (; 34 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__concat (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 i32.const 512 local.get $0 @@ -3068,7 +3072,7 @@ local.get $1 call $~lib/string/String#concat ) - (func $~lib/symbol/_Symbol#toString (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/symbol/_Symbol#toString (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -3254,7 +3258,7 @@ i32.const 528 call $~lib/string/String.__concat ) - (func $start:std/symbol (; 36 ;) (type $FUNCSIG$v) + (func $start:std/symbol (; 35 ;) (type $FUNCSIG$v) i32.const 16 call $~lib/symbol/Symbol global.set $std/symbol/sym1 @@ -3423,9 +3427,9 @@ global.get $~lib/symbol/_Symbol.isConcatSpreadable drop ) - (func $start (; 37 ;) (type $FUNCSIG$v) + (func $start (; 36 ;) (type $FUNCSIG$v) call $start:std/symbol ) - (func $null (; 38 ;) (type $FUNCSIG$v) + (func $null (; 37 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index d82c5665..2248e852 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -403,7 +403,7 @@ if i32.const 0 i32.const 64 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -417,7 +417,7 @@ if i32.const 0 i32.const 64 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -465,7 +465,7 @@ if i32.const 0 i32.const 64 - i32.const 227 + i32.const 234 i32.const 57 call $~lib/env/abort unreachable diff --git a/tests/compiler/std/typedarray.untouched.wat b/tests/compiler/std/typedarray.untouched.wat index 18a8381d..5e62bd2a 100644 --- a/tests/compiler/std/typedarray.untouched.wat +++ b/tests/compiler/std/typedarray.untouched.wat @@ -486,7 +486,7 @@ if i32.const 0 i32.const 64 - i32.const 192 + i32.const 199 i32.const 2 call $~lib/env/abort unreachable @@ -501,7 +501,7 @@ if i32.const 0 i32.const 64 - i32.const 193 + i32.const 200 i32.const 2 call $~lib/env/abort unreachable @@ -550,11 +550,7 @@ call $~lib/runtime/doRegister end ) - (func $~lib/runtime/ALLOCATE (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/runtime/doAllocate - ) - (func $~lib/runtime/ArrayBufferView#constructor (; 9 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/runtime/ArrayBufferView#constructor (; 8 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) local.get $1 @@ -565,7 +561,7 @@ if i32.const 0 i32.const 64 - i32.const 227 + i32.const 234 i32.const 57 call $~lib/env/abort unreachable @@ -582,8 +578,12 @@ i32.eqz if block $~lib/runtime/REGISTER|inlined.0 (result i32) - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + i32.const 12 + local.set $4 + local.get $4 + call $~lib/runtime/doAllocate + end local.set $4 local.get $4 i32.const 3 @@ -612,14 +612,18 @@ i32.store offset=8 local.get $0 ) - (func $~lib/typedarray/Int8Array#constructor (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int8Array#constructor (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 4 @@ -631,29 +635,33 @@ local.set $0 local.get $0 ) - (func $~lib/runtime/ArrayBufferView#get:byteOffset (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/runtime/ArrayBufferView#get:byteOffset (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=4 local.get $0 i32.load i32.sub ) - (func $~lib/runtime/ArrayBufferView#get:byteLength (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/runtime/ArrayBufferView#get:byteLength (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=8 ) - (func $~lib/typedarray/Int8Array#get:length (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Int8Array#get:length (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/runtime/ArrayBufferView#get:byteLength ) - (func $~lib/typedarray/Uint8Array#constructor (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8Array#constructor (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.3 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 5 @@ -665,18 +673,22 @@ local.set $0 local.get $0 ) - (func $~lib/typedarray/Uint8Array#get:length (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Uint8Array#get:length (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/runtime/ArrayBufferView#get:byteLength ) - (func $~lib/typedarray/Uint8ClampedArray#constructor (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8ClampedArray#constructor (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.4 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 6 @@ -688,18 +700,22 @@ local.set $0 local.get $0 ) - (func $~lib/typedarray/Uint8ClampedArray#get:length (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Uint8ClampedArray#get:length (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/runtime/ArrayBufferView#get:byteLength ) - (func $~lib/typedarray/Int16Array#constructor (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int16Array#constructor (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.5 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 7 @@ -711,20 +727,24 @@ local.set $0 local.get $0 ) - (func $~lib/typedarray/Int16Array#get:length (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Int16Array#get:length (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/runtime/ArrayBufferView#get:byteLength i32.const 1 i32.shr_u ) - (func $~lib/typedarray/Uint16Array#constructor (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint16Array#constructor (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.6 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 8 @@ -736,20 +756,24 @@ local.set $0 local.get $0 ) - (func $~lib/typedarray/Uint16Array#get:length (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Uint16Array#get:length (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/runtime/ArrayBufferView#get:byteLength i32.const 1 i32.shr_u ) - (func $~lib/typedarray/Int32Array#constructor (; 22 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int32Array#constructor (; 21 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.7 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 9 @@ -761,20 +785,24 @@ local.set $0 local.get $0 ) - (func $~lib/typedarray/Int32Array#get:length (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Int32Array#get:length (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/runtime/ArrayBufferView#get:byteLength i32.const 2 i32.shr_u ) - (func $~lib/typedarray/Uint32Array#constructor (; 24 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint32Array#constructor (; 23 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.8 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 10 @@ -786,20 +814,24 @@ local.set $0 local.get $0 ) - (func $~lib/typedarray/Uint32Array#get:length (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Uint32Array#get:length (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/runtime/ArrayBufferView#get:byteLength i32.const 2 i32.shr_u ) - (func $~lib/typedarray/Int64Array#constructor (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int64Array#constructor (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.9 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 11 @@ -811,20 +843,24 @@ local.set $0 local.get $0 ) - (func $~lib/typedarray/Int64Array#get:length (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Int64Array#get:length (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/runtime/ArrayBufferView#get:byteLength i32.const 3 i32.shr_u ) - (func $~lib/typedarray/Uint64Array#constructor (; 28 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint64Array#constructor (; 27 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.10 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 12 @@ -836,20 +872,24 @@ local.set $0 local.get $0 ) - (func $~lib/typedarray/Uint64Array#get:length (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Uint64Array#get:length (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/runtime/ArrayBufferView#get:byteLength i32.const 3 i32.shr_u ) - (func $~lib/typedarray/Float32Array#constructor (; 30 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float32Array#constructor (; 29 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.11 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 13 @@ -861,20 +901,24 @@ local.set $0 local.get $0 ) - (func $~lib/typedarray/Float32Array#get:length (; 31 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Float32Array#get:length (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/runtime/ArrayBufferView#get:byteLength i32.const 2 i32.shr_u ) - (func $~lib/typedarray/Float64Array#constructor (; 32 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float64Array#constructor (; 31 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 if (result i32) local.get $0 else - i32.const 12 - call $~lib/runtime/ALLOCATE + block $~lib/runtime/ALLOCATE|inlined.12 (result i32) + i32.const 12 + local.set $2 + local.get $2 + call $~lib/runtime/doAllocate + end local.set $2 local.get $2 i32.const 14 @@ -886,13 +930,13 @@ local.set $0 local.get $0 ) - (func $~lib/typedarray/Float64Array#get:length (; 33 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Float64Array#get:length (; 32 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 call $~lib/runtime/ArrayBufferView#get:byteLength i32.const 3 i32.shr_u ) - (func $std/typedarray/testInstantiate (; 34 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $std/typedarray/testInstantiate (; 33 ;) (type $FUNCSIG$vi) (param $0 i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -1400,7 +1444,7 @@ unreachable end ) - (func $~lib/typedarray/Int32Array#__set (; 35 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/typedarray/Int32Array#__set (; 34 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 local.get $0 i32.load offset=8 @@ -1424,7 +1468,7 @@ local.get $2 i32.store ) - (func $~lib/typedarray/Int32Array#__get (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int32Array#__get (; 35 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -1447,7 +1491,7 @@ i32.add i32.load ) - (func $~lib/typedarray/Int32Array#subarray (; 37 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Int32Array#subarray (; 36 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -1524,7 +1568,7 @@ local.set $5 end block $~lib/runtime/REGISTER|inlined.1 (result i32) - block $~lib/runtime/ALLOCATE|inlined.1 (result i32) + block $~lib/runtime/ALLOCATE|inlined.13 (result i32) i32.const 12 local.set $7 local.get $7 @@ -1561,7 +1605,7 @@ i32.store offset=8 local.get $7 ) - (func $~lib/typedarray/Float64Array#__set (; 38 ;) (type $FUNCSIG$viid) (param $0 i32) (param $1 i32) (param $2 f64) + (func $~lib/typedarray/Float64Array#__set (; 37 ;) (type $FUNCSIG$viid) (param $0 i32) (param $1 i32) (param $2 f64) local.get $1 local.get $0 i32.load offset=8 @@ -1585,7 +1629,7 @@ local.get $2 f64.store ) - (func $~lib/typedarray/Float64Array#subarray (; 39 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Float64Array#subarray (; 38 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -1662,7 +1706,7 @@ local.set $5 end block $~lib/runtime/REGISTER|inlined.1 (result i32) - block $~lib/runtime/ALLOCATE|inlined.2 (result i32) + block $~lib/runtime/ALLOCATE|inlined.14 (result i32) i32.const 12 local.set $7 local.get $7 @@ -1699,7 +1743,7 @@ i32.store offset=8 local.get $7 ) - (func $~lib/util/sort/insertionSort (; 40 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort (; 39 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 f64) (local $5 i32) @@ -1795,12 +1839,12 @@ unreachable end ) - (func $~lib/memory/memory.free (; 41 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/memory/memory.free (; 40 ;) (type $FUNCSIG$vi) (param $0 i32) (local $1 i32) local.get $0 local.set $1 ) - (func $~lib/util/sort/weakHeapSort (; 42 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/weakHeapSort (; 41 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -2100,7 +2144,7 @@ local.get $10 f64.store ) - (func $~lib/typedarray/Float64Array#sort (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float64Array#sort (; 42 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -2184,7 +2228,7 @@ local.get $2 end ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 44 ;) (type $FUNCSIG$idd) (param $0 f64) (param $1 f64) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 43 ;) (type $FUNCSIG$idd) (param $0 f64) (param $1 f64) (result i32) (local $2 i64) (local $3 i64) local.get $0 @@ -2217,7 +2261,7 @@ i64.lt_s i32.sub ) - (func $~lib/typedarray/Float64Array#sort|trampoline (; 45 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float64Array#sort|trampoline (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) block $1of1 block $0of1 block $outOfRange @@ -2236,7 +2280,7 @@ local.get $1 call $~lib/typedarray/Float64Array#sort ) - (func $~lib/typedarray/Float64Array#__get (; 46 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) + (func $~lib/typedarray/Float64Array#__get (; 45 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) local.get $1 local.get $0 i32.load offset=8 @@ -2259,7 +2303,7 @@ i32.add f64.load ) - (func $~lib/typedarray/Uint8ClampedArray#__set (; 47 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/typedarray/Uint8ClampedArray#__set (; 46 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 local.get $0 i32.load offset=8 @@ -2291,7 +2335,7 @@ i32.and i32.store8 ) - (func $~lib/typedarray/Uint8ClampedArray#__get (; 48 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8ClampedArray#__get (; 47 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -2310,7 +2354,7 @@ i32.add i32.load8_u ) - (func $~lib/typedarray/Int8Array#__set (; 49 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/typedarray/Int8Array#__set (; 48 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 local.get $0 i32.load offset=8 @@ -2330,7 +2374,7 @@ local.get $2 i32.store8 ) - (func $~lib/typedarray/Int8Array#fill (; 50 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $~lib/typedarray/Int8Array#fill (; 49 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -2418,13 +2462,13 @@ end local.get $4 ) - (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 51 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 50 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 global.get $~lib/runtime/HEADER_SIZE i32.sub i32.load offset=4 ) - (func $~lib/util/memory/memcpy (; 52 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/memory/memcpy (; 51 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -3625,7 +3669,7 @@ i32.store8 end ) - (func $~lib/memory/memory.copy (; 53 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/memory/memory.copy (; 52 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) block $~lib/util/memory/memmove|inlined.0 local.get $0 @@ -3854,7 +3898,7 @@ end end ) - (func $~lib/runtime/doWrapArray (; 54 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/runtime/doWrapArray (; 53 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -3891,11 +3935,11 @@ call $~lib/memory/memory.copy local.get $3 ) - (func $~lib/array/Array#get:length (; 55 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#get:length (; 54 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/typedarray/Int8Array#__get (; 56 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int8Array#__get (; 55 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -3914,7 +3958,7 @@ i32.add i32.load8_s ) - (func $~lib/array/Array#__get (; 57 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#__get (; 56 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -3937,7 +3981,7 @@ i32.add i32.load8_s ) - (func $std/typedarray/isInt8ArrayEqual (; 58 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/typedarray/isInt8ArrayEqual (; 57 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -3985,7 +4029,7 @@ end i32.const 1 ) - (func $~lib/typedarray/Int8Array#subarray (; 59 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Int8Array#subarray (; 58 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4062,7 +4106,7 @@ local.set $5 end block $~lib/runtime/REGISTER|inlined.1 (result i32) - block $~lib/runtime/ALLOCATE|inlined.3 (result i32) + block $~lib/runtime/ALLOCATE|inlined.15 (result i32) i32.const 12 local.set $7 local.get $7 @@ -4099,7 +4143,7 @@ i32.store offset=8 local.get $7 ) - (func $~lib/typedarray/Int32Array#fill (; 60 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $~lib/typedarray/Int32Array#fill (; 59 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) (local $5 i32) (local $6 i32) @@ -4197,11 +4241,11 @@ end local.get $4 ) - (func $~lib/array/Array#get:length (; 61 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/array/Array#get:length (; 60 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array#__get (; 62 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#__get (; 61 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -4224,7 +4268,7 @@ i32.add i32.load ) - (func $std/typedarray/isInt32ArrayEqual (; 63 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $std/typedarray/isInt32ArrayEqual (; 62 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -4272,12 +4316,12 @@ end i32.const 1 ) - (func $std/typedarray/testReduce~anonymous|0 (; 64 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduce~anonymous|0 (; 63 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Int8Array#reduce (; 65 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Int8Array#reduce (; 64 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4334,7 +4378,7 @@ end local.get $5 ) - (func $std/typedarray/testReduce (; 66 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduce (; 65 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -4375,7 +4419,7 @@ unreachable end ) - (func $~lib/typedarray/Uint8Array#__set (; 67 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/typedarray/Uint8Array#__set (; 66 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 local.get $0 i32.load offset=8 @@ -4395,12 +4439,12 @@ local.get $2 i32.store8 ) - (func $std/typedarray/testReduce~anonymous|0 (; 68 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduce~anonymous|0 (; 67 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Uint8Array#reduce (; 69 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint8Array#reduce (; 68 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4457,7 +4501,7 @@ end local.get $5 ) - (func $std/typedarray/testReduce (; 70 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduce (; 69 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -4496,12 +4540,12 @@ unreachable end ) - (func $std/typedarray/testReduce~anonymous|0 (; 71 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduce~anonymous|0 (; 70 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Uint8ClampedArray#reduce (; 72 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint8ClampedArray#reduce (; 71 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4558,7 +4602,7 @@ end local.get $5 ) - (func $std/typedarray/testReduce (; 73 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduce (; 72 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -4597,7 +4641,7 @@ unreachable end ) - (func $~lib/typedarray/Int16Array#__set (; 74 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/typedarray/Int16Array#__set (; 73 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 local.get $0 i32.load offset=8 @@ -4621,12 +4665,12 @@ local.get $2 i32.store16 ) - (func $std/typedarray/testReduce~anonymous|0 (; 75 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduce~anonymous|0 (; 74 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Int16Array#reduce (; 76 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Int16Array#reduce (; 75 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4683,7 +4727,7 @@ end local.get $5 ) - (func $std/typedarray/testReduce (; 77 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduce (; 76 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -4724,7 +4768,7 @@ unreachable end ) - (func $~lib/typedarray/Uint16Array#__set (; 78 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/typedarray/Uint16Array#__set (; 77 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 local.get $0 i32.load offset=8 @@ -4748,12 +4792,12 @@ local.get $2 i32.store16 ) - (func $std/typedarray/testReduce~anonymous|0 (; 79 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduce~anonymous|0 (; 78 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Uint16Array#reduce (; 80 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint16Array#reduce (; 79 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4810,7 +4854,7 @@ end local.get $5 ) - (func $std/typedarray/testReduce (; 81 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduce (; 80 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -4849,12 +4893,12 @@ unreachable end ) - (func $std/typedarray/testReduce~anonymous|0 (; 82 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduce~anonymous|0 (; 81 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Int32Array#reduce (; 83 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Int32Array#reduce (; 82 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -4911,7 +4955,7 @@ end local.get $5 ) - (func $std/typedarray/testReduce (; 84 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduce (; 83 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -4948,7 +4992,7 @@ unreachable end ) - (func $~lib/typedarray/Uint32Array#__set (; 85 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/typedarray/Uint32Array#__set (; 84 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 local.get $0 i32.load offset=8 @@ -4972,12 +5016,12 @@ local.get $2 i32.store ) - (func $std/typedarray/testReduce~anonymous|0 (; 86 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduce~anonymous|0 (; 85 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Uint32Array#reduce (; 87 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint32Array#reduce (; 86 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5034,7 +5078,7 @@ end local.get $5 ) - (func $std/typedarray/testReduce (; 88 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduce (; 87 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -5071,7 +5115,7 @@ unreachable end ) - (func $~lib/typedarray/Int64Array#__set (; 89 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) + (func $~lib/typedarray/Int64Array#__set (; 88 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) local.get $1 local.get $0 i32.load offset=8 @@ -5095,12 +5139,12 @@ local.get $2 i64.store ) - (func $std/typedarray/testReduce~anonymous|0 (; 90 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) + (func $std/typedarray/testReduce~anonymous|0 (; 89 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) local.get $0 local.get $1 i64.add ) - (func $~lib/typedarray/Int64Array#reduce (; 91 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) + (func $~lib/typedarray/Int64Array#reduce (; 90 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) (local $3 i32) (local $4 i32) (local $5 i64) @@ -5157,7 +5201,7 @@ end local.get $5 ) - (func $std/typedarray/testReduce (; 92 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduce (; 91 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i64) i32.const 0 @@ -5194,7 +5238,7 @@ unreachable end ) - (func $~lib/typedarray/Uint64Array#__set (; 93 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) + (func $~lib/typedarray/Uint64Array#__set (; 92 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) local.get $1 local.get $0 i32.load offset=8 @@ -5218,12 +5262,12 @@ local.get $2 i64.store ) - (func $std/typedarray/testReduce~anonymous|0 (; 94 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) + (func $std/typedarray/testReduce~anonymous|0 (; 93 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) local.get $0 local.get $1 i64.add ) - (func $~lib/typedarray/Uint64Array#reduce (; 95 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) + (func $~lib/typedarray/Uint64Array#reduce (; 94 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) (local $3 i32) (local $4 i32) (local $5 i64) @@ -5280,7 +5324,7 @@ end local.get $5 ) - (func $std/typedarray/testReduce (; 96 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduce (; 95 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i64) i32.const 0 @@ -5317,7 +5361,7 @@ unreachable end ) - (func $~lib/typedarray/Float32Array#__set (; 97 ;) (type $FUNCSIG$viif) (param $0 i32) (param $1 i32) (param $2 f32) + (func $~lib/typedarray/Float32Array#__set (; 96 ;) (type $FUNCSIG$viif) (param $0 i32) (param $1 i32) (param $2 f32) local.get $1 local.get $0 i32.load offset=8 @@ -5341,12 +5385,12 @@ local.get $2 f32.store ) - (func $std/typedarray/testReduce~anonymous|0 (; 98 ;) (type $FUNCSIG$fffii) (param $0 f32) (param $1 f32) (param $2 i32) (param $3 i32) (result f32) + (func $std/typedarray/testReduce~anonymous|0 (; 97 ;) (type $FUNCSIG$fffii) (param $0 f32) (param $1 f32) (param $2 i32) (param $3 i32) (result f32) local.get $0 local.get $1 f32.add ) - (func $~lib/typedarray/Float32Array#reduce (; 99 ;) (type $FUNCSIG$fiif) (param $0 i32) (param $1 i32) (param $2 f32) (result f32) + (func $~lib/typedarray/Float32Array#reduce (; 98 ;) (type $FUNCSIG$fiif) (param $0 i32) (param $1 i32) (param $2 f32) (result f32) (local $3 i32) (local $4 i32) (local $5 f32) @@ -5403,7 +5447,7 @@ end local.get $5 ) - (func $std/typedarray/testReduce (; 100 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduce (; 99 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 f32) i32.const 0 @@ -5440,12 +5484,12 @@ unreachable end ) - (func $std/typedarray/testReduce~anonymous|0 (; 101 ;) (type $FUNCSIG$dddii) (param $0 f64) (param $1 f64) (param $2 i32) (param $3 i32) (result f64) + (func $std/typedarray/testReduce~anonymous|0 (; 100 ;) (type $FUNCSIG$dddii) (param $0 f64) (param $1 f64) (param $2 i32) (param $3 i32) (result f64) local.get $0 local.get $1 f64.add ) - (func $~lib/typedarray/Float64Array#reduce (; 102 ;) (type $FUNCSIG$diid) (param $0 i32) (param $1 i32) (param $2 f64) (result f64) + (func $~lib/typedarray/Float64Array#reduce (; 101 ;) (type $FUNCSIG$diid) (param $0 i32) (param $1 i32) (param $2 f64) (result f64) (local $3 i32) (local $4 i32) (local $5 f64) @@ -5502,7 +5546,7 @@ end local.get $5 ) - (func $std/typedarray/testReduce (; 103 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduce (; 102 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 f64) i32.const 0 @@ -5539,12 +5583,12 @@ unreachable end ) - (func $std/typedarray/testReduceRight~anonymous|0 (; 104 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduceRight~anonymous|0 (; 103 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Int8Array#reduceRight (; 105 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Int8Array#reduceRight (; 104 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5598,7 +5642,7 @@ end local.get $5 ) - (func $std/typedarray/testReduceRight (; 106 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduceRight (; 105 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -5639,12 +5683,12 @@ unreachable end ) - (func $std/typedarray/testReduceRight~anonymous|0 (; 107 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduceRight~anonymous|0 (; 106 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Uint8Array#reduceRight (; 108 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint8Array#reduceRight (; 107 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5698,7 +5742,7 @@ end local.get $5 ) - (func $std/typedarray/testReduceRight (; 109 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduceRight (; 108 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -5737,12 +5781,12 @@ unreachable end ) - (func $std/typedarray/testReduceRight~anonymous|0 (; 110 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduceRight~anonymous|0 (; 109 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Uint8ClampedArray#reduceRight (; 111 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint8ClampedArray#reduceRight (; 110 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5796,7 +5840,7 @@ end local.get $5 ) - (func $std/typedarray/testReduceRight (; 112 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduceRight (; 111 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -5835,12 +5879,12 @@ unreachable end ) - (func $std/typedarray/testReduceRight~anonymous|0 (; 113 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduceRight~anonymous|0 (; 112 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Int16Array#reduceRight (; 114 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Int16Array#reduceRight (; 113 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5894,7 +5938,7 @@ end local.get $5 ) - (func $std/typedarray/testReduceRight (; 115 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduceRight (; 114 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -5935,12 +5979,12 @@ unreachable end ) - (func $std/typedarray/testReduceRight~anonymous|0 (; 116 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduceRight~anonymous|0 (; 115 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Uint16Array#reduceRight (; 117 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint16Array#reduceRight (; 116 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5994,7 +6038,7 @@ end local.get $5 ) - (func $std/typedarray/testReduceRight (; 118 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduceRight (; 117 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -6033,12 +6077,12 @@ unreachable end ) - (func $std/typedarray/testReduceRight~anonymous|0 (; 119 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduceRight~anonymous|0 (; 118 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Int32Array#reduceRight (; 120 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Int32Array#reduceRight (; 119 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -6092,7 +6136,7 @@ end local.get $5 ) - (func $std/typedarray/testReduceRight (; 121 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduceRight (; 120 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -6129,12 +6173,12 @@ unreachable end ) - (func $std/typedarray/testReduceRight~anonymous|0 (; 122 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $std/typedarray/testReduceRight~anonymous|0 (; 121 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) local.get $0 local.get $1 i32.add ) - (func $~lib/typedarray/Uint32Array#reduceRight (; 123 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint32Array#reduceRight (; 122 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -6188,7 +6232,7 @@ end local.get $5 ) - (func $std/typedarray/testReduceRight (; 124 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduceRight (; 123 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -6225,12 +6269,12 @@ unreachable end ) - (func $std/typedarray/testReduceRight~anonymous|0 (; 125 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) + (func $std/typedarray/testReduceRight~anonymous|0 (; 124 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) local.get $0 local.get $1 i64.add ) - (func $~lib/typedarray/Int64Array#reduceRight (; 126 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) + (func $~lib/typedarray/Int64Array#reduceRight (; 125 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) (local $3 i32) (local $4 i32) (local $5 i64) @@ -6284,7 +6328,7 @@ end local.get $5 ) - (func $std/typedarray/testReduceRight (; 127 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduceRight (; 126 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i64) i32.const 0 @@ -6321,12 +6365,12 @@ unreachable end ) - (func $std/typedarray/testReduceRight~anonymous|0 (; 128 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) + (func $std/typedarray/testReduceRight~anonymous|0 (; 127 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) local.get $0 local.get $1 i64.add ) - (func $~lib/typedarray/Uint64Array#reduceRight (; 129 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) + (func $~lib/typedarray/Uint64Array#reduceRight (; 128 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) (local $3 i32) (local $4 i32) (local $5 i64) @@ -6380,7 +6424,7 @@ end local.get $5 ) - (func $std/typedarray/testReduceRight (; 130 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduceRight (; 129 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i64) i32.const 0 @@ -6417,12 +6461,12 @@ unreachable end ) - (func $std/typedarray/testReduceRight~anonymous|0 (; 131 ;) (type $FUNCSIG$fffii) (param $0 f32) (param $1 f32) (param $2 i32) (param $3 i32) (result f32) + (func $std/typedarray/testReduceRight~anonymous|0 (; 130 ;) (type $FUNCSIG$fffii) (param $0 f32) (param $1 f32) (param $2 i32) (param $3 i32) (result f32) local.get $0 local.get $1 f32.add ) - (func $~lib/typedarray/Float32Array#reduceRight (; 132 ;) (type $FUNCSIG$fiif) (param $0 i32) (param $1 i32) (param $2 f32) (result f32) + (func $~lib/typedarray/Float32Array#reduceRight (; 131 ;) (type $FUNCSIG$fiif) (param $0 i32) (param $1 i32) (param $2 f32) (result f32) (local $3 i32) (local $4 i32) (local $5 f32) @@ -6476,7 +6520,7 @@ end local.get $5 ) - (func $std/typedarray/testReduceRight (; 133 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduceRight (; 132 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 f32) i32.const 0 @@ -6513,12 +6557,12 @@ unreachable end ) - (func $std/typedarray/testReduceRight~anonymous|0 (; 134 ;) (type $FUNCSIG$dddii) (param $0 f64) (param $1 f64) (param $2 i32) (param $3 i32) (result f64) + (func $std/typedarray/testReduceRight~anonymous|0 (; 133 ;) (type $FUNCSIG$dddii) (param $0 f64) (param $1 f64) (param $2 i32) (param $3 i32) (result f64) local.get $0 local.get $1 f64.add ) - (func $~lib/typedarray/Float64Array#reduceRight (; 135 ;) (type $FUNCSIG$diid) (param $0 i32) (param $1 i32) (param $2 f64) (result f64) + (func $~lib/typedarray/Float64Array#reduceRight (; 134 ;) (type $FUNCSIG$diid) (param $0 i32) (param $1 i32) (param $2 f64) (result f64) (local $3 i32) (local $4 i32) (local $5 f64) @@ -6572,7 +6616,7 @@ end local.get $5 ) - (func $std/typedarray/testReduceRight (; 136 ;) (type $FUNCSIG$v) + (func $std/typedarray/testReduceRight (; 135 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 f64) i32.const 0 @@ -6609,12 +6653,12 @@ unreachable end ) - (func $std/typedarray/testArrayMap~anonymous|0 (; 137 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayMap~anonymous|0 (; 136 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 local.get $0 i32.mul ) - (func $~lib/typedarray/Int8Array#map (; 138 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int8Array#map (; 137 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -6679,7 +6723,7 @@ end local.get $6 ) - (func $std/typedarray/testArrayMap (; 139 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayMap (; 138 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -6745,12 +6789,12 @@ unreachable end ) - (func $std/typedarray/testArrayMap~anonymous|0 (; 140 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayMap~anonymous|0 (; 139 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 local.get $0 i32.mul ) - (func $~lib/typedarray/Uint8Array#map (; 141 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8Array#map (; 140 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -6815,7 +6859,7 @@ end local.get $6 ) - (func $~lib/typedarray/Uint8Array#__get (; 142 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8Array#__get (; 141 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -6834,7 +6878,7 @@ i32.add i32.load8_u ) - (func $std/typedarray/testArrayMap (; 143 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayMap (; 142 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -6900,12 +6944,12 @@ unreachable end ) - (func $std/typedarray/testArrayMap~anonymous|0 (; 144 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayMap~anonymous|0 (; 143 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 local.get $0 i32.mul ) - (func $~lib/typedarray/Uint8ClampedArray#map (; 145 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8ClampedArray#map (; 144 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -6970,7 +7014,7 @@ end local.get $6 ) - (func $std/typedarray/testArrayMap (; 146 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayMap (; 145 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -7036,12 +7080,12 @@ unreachable end ) - (func $std/typedarray/testArrayMap~anonymous|0 (; 147 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayMap~anonymous|0 (; 146 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 local.get $0 i32.mul ) - (func $~lib/typedarray/Int16Array#map (; 148 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int16Array#map (; 147 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -7106,7 +7150,7 @@ end local.get $6 ) - (func $~lib/typedarray/Int16Array#__get (; 149 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int16Array#__get (; 148 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -7129,7 +7173,7 @@ i32.add i32.load16_s ) - (func $std/typedarray/testArrayMap (; 150 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayMap (; 149 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -7195,12 +7239,12 @@ unreachable end ) - (func $std/typedarray/testArrayMap~anonymous|0 (; 151 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayMap~anonymous|0 (; 150 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 local.get $0 i32.mul ) - (func $~lib/typedarray/Uint16Array#map (; 152 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint16Array#map (; 151 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -7265,7 +7309,7 @@ end local.get $6 ) - (func $~lib/typedarray/Uint16Array#__get (; 153 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint16Array#__get (; 152 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -7288,7 +7332,7 @@ i32.add i32.load16_u ) - (func $std/typedarray/testArrayMap (; 154 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayMap (; 153 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -7354,12 +7398,12 @@ unreachable end ) - (func $std/typedarray/testArrayMap~anonymous|0 (; 155 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayMap~anonymous|0 (; 154 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 local.get $0 i32.mul ) - (func $~lib/typedarray/Int32Array#map (; 156 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int32Array#map (; 155 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -7424,7 +7468,7 @@ end local.get $6 ) - (func $std/typedarray/testArrayMap (; 157 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayMap (; 156 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -7490,12 +7534,12 @@ unreachable end ) - (func $std/typedarray/testArrayMap~anonymous|0 (; 158 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayMap~anonymous|0 (; 157 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 local.get $0 i32.mul ) - (func $~lib/typedarray/Uint32Array#map (; 159 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint32Array#map (; 158 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -7560,7 +7604,7 @@ end local.get $6 ) - (func $~lib/typedarray/Uint32Array#__get (; 160 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint32Array#__get (; 159 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -7583,7 +7627,7 @@ i32.add i32.load ) - (func $std/typedarray/testArrayMap (; 161 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayMap (; 160 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -7649,12 +7693,12 @@ unreachable end ) - (func $std/typedarray/testArrayMap~anonymous|0 (; 162 ;) (type $FUNCSIG$jjii) (param $0 i64) (param $1 i32) (param $2 i32) (result i64) + (func $std/typedarray/testArrayMap~anonymous|0 (; 161 ;) (type $FUNCSIG$jjii) (param $0 i64) (param $1 i32) (param $2 i32) (result i64) local.get $0 local.get $0 i64.mul ) - (func $~lib/typedarray/Int64Array#map (; 163 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int64Array#map (; 162 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -7719,7 +7763,7 @@ end local.get $6 ) - (func $~lib/typedarray/Int64Array#__get (; 164 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + (func $~lib/typedarray/Int64Array#__get (; 163 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $1 local.get $0 i32.load offset=8 @@ -7742,7 +7786,7 @@ i32.add i64.load ) - (func $std/typedarray/testArrayMap (; 165 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayMap (; 164 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -7808,12 +7852,12 @@ unreachable end ) - (func $std/typedarray/testArrayMap~anonymous|0 (; 166 ;) (type $FUNCSIG$jjii) (param $0 i64) (param $1 i32) (param $2 i32) (result i64) + (func $std/typedarray/testArrayMap~anonymous|0 (; 165 ;) (type $FUNCSIG$jjii) (param $0 i64) (param $1 i32) (param $2 i32) (result i64) local.get $0 local.get $0 i64.mul ) - (func $~lib/typedarray/Uint64Array#map (; 167 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint64Array#map (; 166 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -7878,7 +7922,7 @@ end local.get $6 ) - (func $~lib/typedarray/Uint64Array#__get (; 168 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + (func $~lib/typedarray/Uint64Array#__get (; 167 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $1 local.get $0 i32.load offset=8 @@ -7901,7 +7945,7 @@ i32.add i64.load ) - (func $std/typedarray/testArrayMap (; 169 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayMap (; 168 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -7967,12 +8011,12 @@ unreachable end ) - (func $std/typedarray/testArrayMap~anonymous|0 (; 170 ;) (type $FUNCSIG$ffii) (param $0 f32) (param $1 i32) (param $2 i32) (result f32) + (func $std/typedarray/testArrayMap~anonymous|0 (; 169 ;) (type $FUNCSIG$ffii) (param $0 f32) (param $1 i32) (param $2 i32) (result f32) local.get $0 local.get $0 f32.mul ) - (func $~lib/typedarray/Float32Array#map (; 171 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float32Array#map (; 170 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8037,7 +8081,7 @@ end local.get $6 ) - (func $~lib/typedarray/Float32Array#__get (; 172 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) + (func $~lib/typedarray/Float32Array#__get (; 171 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) local.get $1 local.get $0 i32.load offset=8 @@ -8060,7 +8104,7 @@ i32.add f32.load ) - (func $std/typedarray/testArrayMap (; 173 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayMap (; 172 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -8126,12 +8170,12 @@ unreachable end ) - (func $std/typedarray/testArrayMap~anonymous|0 (; 174 ;) (type $FUNCSIG$ddii) (param $0 f64) (param $1 i32) (param $2 i32) (result f64) + (func $std/typedarray/testArrayMap~anonymous|0 (; 173 ;) (type $FUNCSIG$ddii) (param $0 f64) (param $1 i32) (param $2 i32) (result f64) local.get $0 local.get $0 f64.mul ) - (func $~lib/typedarray/Float64Array#map (; 175 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float64Array#map (; 174 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8196,7 +8240,7 @@ end local.get $6 ) - (func $std/typedarray/testArrayMap (; 176 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayMap (; 175 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) i32.const 0 @@ -8262,7 +8306,7 @@ unreachable end ) - (func $std/typedarray/testArraySome~anonymous|0 (; 177 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|0 (; 176 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 24 i32.shl @@ -8271,7 +8315,7 @@ i32.const 2 i32.eq ) - (func $~lib/typedarray/Int8Array#some (; 178 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int8Array#some (; 177 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8331,7 +8375,7 @@ i32.const 0 end ) - (func $std/typedarray/testArraySome~anonymous|1 (; 179 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|1 (; 178 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 24 i32.shl @@ -8340,7 +8384,7 @@ i32.const 0 i32.eq ) - (func $std/typedarray/testArraySome (; 180 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArraySome (; 179 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -8394,14 +8438,14 @@ unreachable end ) - (func $std/typedarray/testArraySome~anonymous|0 (; 181 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|0 (; 180 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 255 i32.and i32.const 2 i32.eq ) - (func $~lib/typedarray/Uint8Array#some (; 182 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8Array#some (; 181 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8461,14 +8505,14 @@ i32.const 0 end ) - (func $std/typedarray/testArraySome~anonymous|1 (; 183 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|1 (; 182 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 255 i32.and i32.const 0 i32.eq ) - (func $std/typedarray/testArraySome (; 184 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArraySome (; 183 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -8522,14 +8566,14 @@ unreachable end ) - (func $std/typedarray/testArraySome~anonymous|0 (; 185 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|0 (; 184 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 255 i32.and i32.const 2 i32.eq ) - (func $~lib/typedarray/Uint8ClampedArray#some (; 186 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8ClampedArray#some (; 185 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8589,14 +8633,14 @@ i32.const 0 end ) - (func $std/typedarray/testArraySome~anonymous|1 (; 187 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|1 (; 186 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 255 i32.and i32.const 0 i32.eq ) - (func $std/typedarray/testArraySome (; 188 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArraySome (; 187 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -8650,7 +8694,7 @@ unreachable end ) - (func $std/typedarray/testArraySome~anonymous|0 (; 189 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|0 (; 188 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 16 i32.shl @@ -8659,7 +8703,7 @@ i32.const 2 i32.eq ) - (func $~lib/typedarray/Int16Array#some (; 190 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int16Array#some (; 189 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8719,7 +8763,7 @@ i32.const 0 end ) - (func $std/typedarray/testArraySome~anonymous|1 (; 191 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|1 (; 190 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 16 i32.shl @@ -8728,7 +8772,7 @@ i32.const 0 i32.eq ) - (func $std/typedarray/testArraySome (; 192 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArraySome (; 191 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -8782,14 +8826,14 @@ unreachable end ) - (func $std/typedarray/testArraySome~anonymous|0 (; 193 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|0 (; 192 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 65535 i32.and i32.const 2 i32.eq ) - (func $~lib/typedarray/Uint16Array#some (; 194 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint16Array#some (; 193 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8849,14 +8893,14 @@ i32.const 0 end ) - (func $std/typedarray/testArraySome~anonymous|1 (; 195 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|1 (; 194 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 65535 i32.and i32.const 0 i32.eq ) - (func $std/typedarray/testArraySome (; 196 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArraySome (; 195 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -8910,12 +8954,12 @@ unreachable end ) - (func $std/typedarray/testArraySome~anonymous|0 (; 197 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|0 (; 196 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 2 i32.eq ) - (func $~lib/typedarray/Int32Array#some (; 198 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int32Array#some (; 197 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8975,12 +9019,12 @@ i32.const 0 end ) - (func $std/typedarray/testArraySome~anonymous|1 (; 199 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|1 (; 198 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 0 i32.eq ) - (func $std/typedarray/testArraySome (; 200 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArraySome (; 199 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -9034,12 +9078,12 @@ unreachable end ) - (func $std/typedarray/testArraySome~anonymous|0 (; 201 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|0 (; 200 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 2 i32.eq ) - (func $~lib/typedarray/Uint32Array#some (; 202 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint32Array#some (; 201 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9099,12 +9143,12 @@ i32.const 0 end ) - (func $std/typedarray/testArraySome~anonymous|1 (; 203 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|1 (; 202 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 0 i32.eq ) - (func $std/typedarray/testArraySome (; 204 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArraySome (; 203 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -9158,12 +9202,12 @@ unreachable end ) - (func $std/typedarray/testArraySome~anonymous|0 (; 205 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|0 (; 204 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) local.get $0 i64.const 2 i64.eq ) - (func $~lib/typedarray/Int64Array#some (; 206 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int64Array#some (; 205 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9223,12 +9267,12 @@ i32.const 0 end ) - (func $std/typedarray/testArraySome~anonymous|1 (; 207 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|1 (; 206 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) local.get $0 i64.const 0 i64.eq ) - (func $std/typedarray/testArraySome (; 208 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArraySome (; 207 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -9282,12 +9326,12 @@ unreachable end ) - (func $std/typedarray/testArraySome~anonymous|0 (; 209 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|0 (; 208 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) local.get $0 i64.const 2 i64.eq ) - (func $~lib/typedarray/Uint64Array#some (; 210 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint64Array#some (; 209 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9347,12 +9391,12 @@ i32.const 0 end ) - (func $std/typedarray/testArraySome~anonymous|1 (; 211 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|1 (; 210 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) local.get $0 i64.const 0 i64.eq ) - (func $std/typedarray/testArraySome (; 212 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArraySome (; 211 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -9406,12 +9450,12 @@ unreachable end ) - (func $std/typedarray/testArraySome~anonymous|0 (; 213 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|0 (; 212 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) local.get $0 f32.const 2 f32.eq ) - (func $~lib/typedarray/Float32Array#some (; 214 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float32Array#some (; 213 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9471,12 +9515,12 @@ i32.const 0 end ) - (func $std/typedarray/testArraySome~anonymous|1 (; 215 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|1 (; 214 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) local.get $0 f32.const 0 f32.eq ) - (func $std/typedarray/testArraySome (; 216 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArraySome (; 215 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -9530,12 +9574,12 @@ unreachable end ) - (func $std/typedarray/testArraySome~anonymous|0 (; 217 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|0 (; 216 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) local.get $0 f64.const 2 f64.eq ) - (func $~lib/typedarray/Float64Array#some (; 218 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float64Array#some (; 217 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9595,12 +9639,12 @@ i32.const 0 end ) - (func $std/typedarray/testArraySome~anonymous|1 (; 219 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArraySome~anonymous|1 (; 218 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) local.get $0 f64.const 0 f64.eq ) - (func $std/typedarray/testArraySome (; 220 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArraySome (; 219 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -9654,7 +9698,7 @@ unreachable end ) - (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 221 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 220 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 24 i32.shl @@ -9663,7 +9707,7 @@ i32.const 2 i32.eq ) - (func $~lib/typedarray/Int8Array#findIndex (; 222 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int8Array#findIndex (; 221 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9723,7 +9767,7 @@ i32.const -1 end ) - (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 223 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 222 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 24 i32.shl @@ -9732,7 +9776,7 @@ i32.const 4 i32.eq ) - (func $std/typedarray/testArrayFindIndex (; 224 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayFindIndex (; 223 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -9785,14 +9829,14 @@ unreachable end ) - (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 225 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 224 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 255 i32.and i32.const 2 i32.eq ) - (func $~lib/typedarray/Uint8Array#findIndex (; 226 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8Array#findIndex (; 225 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9852,14 +9896,14 @@ i32.const -1 end ) - (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 227 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 226 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 255 i32.and i32.const 4 i32.eq ) - (func $std/typedarray/testArrayFindIndex (; 228 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayFindIndex (; 227 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -9912,14 +9956,14 @@ unreachable end ) - (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 229 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 228 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 255 i32.and i32.const 2 i32.eq ) - (func $~lib/typedarray/Uint8ClampedArray#findIndex (; 230 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8ClampedArray#findIndex (; 229 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9979,14 +10023,14 @@ i32.const -1 end ) - (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 231 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 230 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 255 i32.and i32.const 4 i32.eq ) - (func $std/typedarray/testArrayFindIndex (; 232 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayFindIndex (; 231 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -10039,7 +10083,7 @@ unreachable end ) - (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 233 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 232 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 16 i32.shl @@ -10048,7 +10092,7 @@ i32.const 2 i32.eq ) - (func $~lib/typedarray/Int16Array#findIndex (; 234 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int16Array#findIndex (; 233 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10108,7 +10152,7 @@ i32.const -1 end ) - (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 235 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 234 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 16 i32.shl @@ -10117,7 +10161,7 @@ i32.const 4 i32.eq ) - (func $std/typedarray/testArrayFindIndex (; 236 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayFindIndex (; 235 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -10170,14 +10214,14 @@ unreachable end ) - (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 237 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 236 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 65535 i32.and i32.const 2 i32.eq ) - (func $~lib/typedarray/Uint16Array#findIndex (; 238 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint16Array#findIndex (; 237 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10237,14 +10281,14 @@ i32.const -1 end ) - (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 239 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 238 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 65535 i32.and i32.const 4 i32.eq ) - (func $std/typedarray/testArrayFindIndex (; 240 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayFindIndex (; 239 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -10297,12 +10341,12 @@ unreachable end ) - (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 241 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 240 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 2 i32.eq ) - (func $~lib/typedarray/Int32Array#findIndex (; 242 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int32Array#findIndex (; 241 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10362,12 +10406,12 @@ i32.const -1 end ) - (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 243 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 242 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 4 i32.eq ) - (func $std/typedarray/testArrayFindIndex (; 244 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayFindIndex (; 243 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -10420,12 +10464,12 @@ unreachable end ) - (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 245 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 244 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 2 i32.eq ) - (func $~lib/typedarray/Uint32Array#findIndex (; 246 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint32Array#findIndex (; 245 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10485,12 +10529,12 @@ i32.const -1 end ) - (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 247 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 246 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 4 i32.eq ) - (func $std/typedarray/testArrayFindIndex (; 248 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayFindIndex (; 247 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -10543,12 +10587,12 @@ unreachable end ) - (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 249 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 248 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) local.get $0 i64.const 2 i64.eq ) - (func $~lib/typedarray/Int64Array#findIndex (; 250 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int64Array#findIndex (; 249 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10608,12 +10652,12 @@ i32.const -1 end ) - (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 251 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 250 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) local.get $0 i64.const 4 i64.eq ) - (func $std/typedarray/testArrayFindIndex (; 252 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayFindIndex (; 251 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -10666,12 +10710,12 @@ unreachable end ) - (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 253 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 252 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) local.get $0 i64.const 2 i64.eq ) - (func $~lib/typedarray/Uint64Array#findIndex (; 254 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint64Array#findIndex (; 253 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10731,12 +10775,12 @@ i32.const -1 end ) - (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 255 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 254 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) local.get $0 i64.const 4 i64.eq ) - (func $std/typedarray/testArrayFindIndex (; 256 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayFindIndex (; 255 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -10789,12 +10833,12 @@ unreachable end ) - (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 257 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 256 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) local.get $0 f32.const 2 f32.eq ) - (func $~lib/typedarray/Float32Array#findIndex (; 258 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float32Array#findIndex (; 257 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10854,12 +10898,12 @@ i32.const -1 end ) - (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 259 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 258 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) local.get $0 f32.const 4 f32.eq ) - (func $std/typedarray/testArrayFindIndex (; 260 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayFindIndex (; 259 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -10912,12 +10956,12 @@ unreachable end ) - (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 261 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|0 (; 260 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) local.get $0 f64.const 2 f64.eq ) - (func $~lib/typedarray/Float64Array#findIndex (; 262 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float64Array#findIndex (; 261 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10977,12 +11021,12 @@ i32.const -1 end ) - (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 263 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayFindIndex~anonymous|1 (; 262 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) local.get $0 f64.const 4 f64.eq ) - (func $std/typedarray/testArrayFindIndex (; 264 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayFindIndex (; 263 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -11035,7 +11079,7 @@ unreachable end ) - (func $std/typedarray/testArrayEvery~anonymous|0 (; 265 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|0 (; 264 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 24 i32.shl @@ -11046,7 +11090,7 @@ i32.const 0 i32.eq ) - (func $~lib/typedarray/Int8Array#every (; 266 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int8Array#every (; 265 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11113,7 +11157,7 @@ i32.const 1 end ) - (func $std/typedarray/testArrayEvery~anonymous|1 (; 267 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|1 (; 266 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 24 i32.shl @@ -11122,7 +11166,7 @@ i32.const 2 i32.eq ) - (func $std/typedarray/testArrayEvery (; 268 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayEvery (; 267 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -11176,7 +11220,7 @@ unreachable end ) - (func $std/typedarray/testArrayEvery~anonymous|0 (; 269 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|0 (; 268 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 255 i32.and @@ -11185,7 +11229,7 @@ i32.const 0 i32.eq ) - (func $~lib/typedarray/Uint8Array#every (; 270 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8Array#every (; 269 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11252,14 +11296,14 @@ i32.const 1 end ) - (func $std/typedarray/testArrayEvery~anonymous|1 (; 271 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|1 (; 270 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 255 i32.and i32.const 2 i32.eq ) - (func $std/typedarray/testArrayEvery (; 272 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayEvery (; 271 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -11313,7 +11357,7 @@ unreachable end ) - (func $std/typedarray/testArrayEvery~anonymous|0 (; 273 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|0 (; 272 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 255 i32.and @@ -11322,7 +11366,7 @@ i32.const 0 i32.eq ) - (func $~lib/typedarray/Uint8ClampedArray#every (; 274 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8ClampedArray#every (; 273 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11389,14 +11433,14 @@ i32.const 1 end ) - (func $std/typedarray/testArrayEvery~anonymous|1 (; 275 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|1 (; 274 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 255 i32.and i32.const 2 i32.eq ) - (func $std/typedarray/testArrayEvery (; 276 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayEvery (; 275 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -11450,7 +11494,7 @@ unreachable end ) - (func $std/typedarray/testArrayEvery~anonymous|0 (; 277 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|0 (; 276 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 16 i32.shl @@ -11461,7 +11505,7 @@ i32.const 0 i32.eq ) - (func $~lib/typedarray/Int16Array#every (; 278 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int16Array#every (; 277 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11528,7 +11572,7 @@ i32.const 1 end ) - (func $std/typedarray/testArrayEvery~anonymous|1 (; 279 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|1 (; 278 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 16 i32.shl @@ -11537,7 +11581,7 @@ i32.const 2 i32.eq ) - (func $std/typedarray/testArrayEvery (; 280 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayEvery (; 279 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -11591,7 +11635,7 @@ unreachable end ) - (func $std/typedarray/testArrayEvery~anonymous|0 (; 281 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|0 (; 280 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 65535 i32.and @@ -11600,7 +11644,7 @@ i32.const 0 i32.eq ) - (func $~lib/typedarray/Uint16Array#every (; 282 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint16Array#every (; 281 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11667,14 +11711,14 @@ i32.const 1 end ) - (func $std/typedarray/testArrayEvery~anonymous|1 (; 283 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|1 (; 282 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 65535 i32.and i32.const 2 i32.eq ) - (func $std/typedarray/testArrayEvery (; 284 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayEvery (; 283 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -11728,14 +11772,14 @@ unreachable end ) - (func $std/typedarray/testArrayEvery~anonymous|0 (; 285 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|0 (; 284 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 2 i32.rem_s i32.const 0 i32.eq ) - (func $~lib/typedarray/Int32Array#every (; 286 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int32Array#every (; 285 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11802,12 +11846,12 @@ i32.const 1 end ) - (func $std/typedarray/testArrayEvery~anonymous|1 (; 287 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|1 (; 286 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 2 i32.eq ) - (func $std/typedarray/testArrayEvery (; 288 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayEvery (; 287 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -11861,14 +11905,14 @@ unreachable end ) - (func $std/typedarray/testArrayEvery~anonymous|0 (; 289 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|0 (; 288 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 2 i32.rem_u i32.const 0 i32.eq ) - (func $~lib/typedarray/Uint32Array#every (; 290 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint32Array#every (; 289 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11935,12 +11979,12 @@ i32.const 1 end ) - (func $std/typedarray/testArrayEvery~anonymous|1 (; 291 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|1 (; 290 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $0 i32.const 2 i32.eq ) - (func $std/typedarray/testArrayEvery (; 292 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayEvery (; 291 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -11994,14 +12038,14 @@ unreachable end ) - (func $std/typedarray/testArrayEvery~anonymous|0 (; 293 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|0 (; 292 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) local.get $0 i64.const 2 i64.rem_s i64.const 0 i64.eq ) - (func $~lib/typedarray/Int64Array#every (; 294 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int64Array#every (; 293 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12068,12 +12112,12 @@ i32.const 1 end ) - (func $std/typedarray/testArrayEvery~anonymous|1 (; 295 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|1 (; 294 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) local.get $0 i64.const 2 i64.eq ) - (func $std/typedarray/testArrayEvery (; 296 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayEvery (; 295 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -12127,14 +12171,14 @@ unreachable end ) - (func $std/typedarray/testArrayEvery~anonymous|0 (; 297 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|0 (; 296 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) local.get $0 i64.const 2 i64.rem_u i64.const 0 i64.eq ) - (func $~lib/typedarray/Uint64Array#every (; 298 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint64Array#every (; 297 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12201,12 +12245,12 @@ i32.const 1 end ) - (func $std/typedarray/testArrayEvery~anonymous|1 (; 299 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|1 (; 298 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) local.get $0 i64.const 2 i64.eq ) - (func $std/typedarray/testArrayEvery (; 300 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayEvery (; 299 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -12260,12 +12304,12 @@ unreachable end ) - (func $~lib/builtins/isNaN (; 301 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + (func $~lib/builtins/isNaN (; 300 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) local.get $0 local.get $0 f32.ne ) - (func $~lib/math/NativeMathf.mod (; 302 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (func $~lib/math/NativeMathf.mod (; 301 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12516,14 +12560,14 @@ local.get $2 f32.reinterpret_i32 ) - (func $std/typedarray/testArrayEvery~anonymous|0 (; 303 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|0 (; 302 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) local.get $0 f32.const 2 call $~lib/math/NativeMathf.mod f32.const 0 f32.eq ) - (func $~lib/typedarray/Float32Array#every (; 304 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float32Array#every (; 303 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12590,12 +12634,12 @@ i32.const 1 end ) - (func $std/typedarray/testArrayEvery~anonymous|1 (; 305 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|1 (; 304 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) local.get $0 f32.const 2 f32.eq ) - (func $std/typedarray/testArrayEvery (; 306 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayEvery (; 305 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -12649,12 +12693,12 @@ unreachable end ) - (func $~lib/builtins/isNaN (; 307 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (func $~lib/builtins/isNaN (; 306 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) local.get $0 local.get $0 f64.ne ) - (func $~lib/math/NativeMath.mod (; 308 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (func $~lib/math/NativeMath.mod (; 307 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) (local $2 i64) (local $3 i64) (local $4 i64) @@ -12907,14 +12951,14 @@ local.get $2 f64.reinterpret_i64 ) - (func $std/typedarray/testArrayEvery~anonymous|0 (; 309 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|0 (; 308 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) local.get $0 f64.const 2 call $~lib/math/NativeMath.mod f64.const 0 f64.eq ) - (func $~lib/typedarray/Float64Array#every (; 310 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float64Array#every (; 309 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12981,12 +13025,12 @@ i32.const 1 end ) - (func $std/typedarray/testArrayEvery~anonymous|1 (; 311 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (func $std/typedarray/testArrayEvery~anonymous|1 (; 310 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) local.get $0 f64.const 2 f64.eq ) - (func $std/typedarray/testArrayEvery (; 312 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayEvery (; 311 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -13040,7 +13084,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach~anonymous|0 (; 313 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $std/typedarray/testArrayForEach~anonymous|0 (; 312 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) global.get $std/typedarray/forEachValues local.get $1 @@ -13095,7 +13139,7 @@ i32.add global.set $std/typedarray/forEachCallCount ) - (func $~lib/typedarray/Int8Array#forEach (; 314 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/typedarray/Int8Array#forEach (; 313 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -13140,7 +13184,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach (; 315 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayForEach (; 314 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 global.set $std/typedarray/forEachCallCount @@ -13196,7 +13240,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach~anonymous|0 (; 316 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $std/typedarray/testArrayForEach~anonymous|0 (; 315 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) global.get $std/typedarray/forEachValues local.get $1 @@ -13247,7 +13291,7 @@ i32.add global.set $std/typedarray/forEachCallCount ) - (func $~lib/typedarray/Uint8Array#forEach (; 317 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/typedarray/Uint8Array#forEach (; 316 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -13292,7 +13336,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach (; 318 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayForEach (; 317 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 global.set $std/typedarray/forEachCallCount @@ -13342,7 +13386,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach~anonymous|0 (; 319 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $std/typedarray/testArrayForEach~anonymous|0 (; 318 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) global.get $std/typedarray/forEachValues local.get $1 @@ -13393,7 +13437,7 @@ i32.add global.set $std/typedarray/forEachCallCount ) - (func $~lib/typedarray/Uint8ClampedArray#forEach (; 320 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/typedarray/Uint8ClampedArray#forEach (; 319 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -13438,7 +13482,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach (; 321 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayForEach (; 320 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 global.set $std/typedarray/forEachCallCount @@ -13488,7 +13532,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach~anonymous|0 (; 322 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $std/typedarray/testArrayForEach~anonymous|0 (; 321 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) global.get $std/typedarray/forEachValues local.get $1 @@ -13543,7 +13587,7 @@ i32.add global.set $std/typedarray/forEachCallCount ) - (func $~lib/typedarray/Int16Array#forEach (; 323 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/typedarray/Int16Array#forEach (; 322 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -13588,7 +13632,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach (; 324 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayForEach (; 323 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 global.set $std/typedarray/forEachCallCount @@ -13644,7 +13688,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach~anonymous|0 (; 325 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $std/typedarray/testArrayForEach~anonymous|0 (; 324 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) global.get $std/typedarray/forEachValues local.get $1 @@ -13695,7 +13739,7 @@ i32.add global.set $std/typedarray/forEachCallCount ) - (func $~lib/typedarray/Uint16Array#forEach (; 326 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/typedarray/Uint16Array#forEach (; 325 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -13740,7 +13784,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach (; 327 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayForEach (; 326 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 global.set $std/typedarray/forEachCallCount @@ -13790,7 +13834,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach~anonymous|0 (; 328 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $std/typedarray/testArrayForEach~anonymous|0 (; 327 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) global.get $std/typedarray/forEachValues local.get $1 @@ -13837,7 +13881,7 @@ i32.add global.set $std/typedarray/forEachCallCount ) - (func $~lib/typedarray/Int32Array#forEach (; 329 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/typedarray/Int32Array#forEach (; 328 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -13882,7 +13926,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach (; 330 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayForEach (; 329 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 global.set $std/typedarray/forEachCallCount @@ -13926,7 +13970,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach~anonymous|0 (; 331 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $std/typedarray/testArrayForEach~anonymous|0 (; 330 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) global.get $std/typedarray/forEachValues local.get $1 @@ -13973,7 +14017,7 @@ i32.add global.set $std/typedarray/forEachCallCount ) - (func $~lib/typedarray/Uint32Array#forEach (; 332 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/typedarray/Uint32Array#forEach (; 331 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -14018,7 +14062,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach (; 333 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayForEach (; 332 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 global.set $std/typedarray/forEachCallCount @@ -14062,7 +14106,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach~anonymous|0 (; 334 ;) (type $FUNCSIG$vjii) (param $0 i64) (param $1 i32) (param $2 i32) + (func $std/typedarray/testArrayForEach~anonymous|0 (; 333 ;) (type $FUNCSIG$vjii) (param $0 i64) (param $1 i32) (param $2 i32) (local $3 i32) global.get $std/typedarray/forEachValues local.get $1 @@ -14110,7 +14154,7 @@ i32.add global.set $std/typedarray/forEachCallCount ) - (func $~lib/typedarray/Int64Array#forEach (; 335 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/typedarray/Int64Array#forEach (; 334 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -14155,7 +14199,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach (; 336 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayForEach (; 335 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 global.set $std/typedarray/forEachCallCount @@ -14202,7 +14246,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach~anonymous|0 (; 337 ;) (type $FUNCSIG$vjii) (param $0 i64) (param $1 i32) (param $2 i32) + (func $std/typedarray/testArrayForEach~anonymous|0 (; 336 ;) (type $FUNCSIG$vjii) (param $0 i64) (param $1 i32) (param $2 i32) (local $3 i32) global.get $std/typedarray/forEachValues local.get $1 @@ -14250,7 +14294,7 @@ i32.add global.set $std/typedarray/forEachCallCount ) - (func $~lib/typedarray/Uint64Array#forEach (; 338 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/typedarray/Uint64Array#forEach (; 337 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -14295,7 +14339,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach (; 339 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayForEach (; 338 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 global.set $std/typedarray/forEachCallCount @@ -14342,7 +14386,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach~anonymous|0 (; 340 ;) (type $FUNCSIG$vfii) (param $0 f32) (param $1 i32) (param $2 i32) + (func $std/typedarray/testArrayForEach~anonymous|0 (; 339 ;) (type $FUNCSIG$vfii) (param $0 f32) (param $1 i32) (param $2 i32) (local $3 i32) global.get $std/typedarray/forEachValues local.get $1 @@ -14390,7 +14434,7 @@ i32.add global.set $std/typedarray/forEachCallCount ) - (func $~lib/typedarray/Float32Array#forEach (; 341 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/typedarray/Float32Array#forEach (; 340 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -14435,7 +14479,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach (; 342 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayForEach (; 341 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 global.set $std/typedarray/forEachCallCount @@ -14482,7 +14526,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach~anonymous|0 (; 343 ;) (type $FUNCSIG$vdii) (param $0 f64) (param $1 i32) (param $2 i32) + (func $std/typedarray/testArrayForEach~anonymous|0 (; 342 ;) (type $FUNCSIG$vdii) (param $0 f64) (param $1 i32) (param $2 i32) (local $3 i32) global.get $std/typedarray/forEachValues local.get $1 @@ -14530,7 +14574,7 @@ i32.add global.set $std/typedarray/forEachCallCount ) - (func $~lib/typedarray/Float64Array#forEach (; 344 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/typedarray/Float64Array#forEach (; 343 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -14575,7 +14619,7 @@ unreachable end ) - (func $std/typedarray/testArrayForEach (; 345 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayForEach (; 344 ;) (type $FUNCSIG$v) (local $0 i32) i32.const 0 global.set $std/typedarray/forEachCallCount @@ -14622,7 +14666,7 @@ unreachable end ) - (func $~lib/typedarray/Int8Array#reverse (; 346 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Int8Array#reverse (; 345 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -14692,7 +14736,7 @@ end local.get $1 ) - (func $std/typedarray/testArrayReverse (; 347 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayReverse (; 346 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -14856,7 +14900,7 @@ unreachable end ) - (func $~lib/typedarray/Uint8Array#reverse (; 348 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Uint8Array#reverse (; 347 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -14926,7 +14970,7 @@ end local.get $1 ) - (func $~lib/typedarray/Uint8Array#subarray (; 349 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint8Array#subarray (; 348 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -15003,7 +15047,7 @@ local.set $5 end block $~lib/runtime/REGISTER|inlined.1 (result i32) - block $~lib/runtime/ALLOCATE|inlined.4 (result i32) + block $~lib/runtime/ALLOCATE|inlined.16 (result i32) i32.const 12 local.set $7 local.get $7 @@ -15040,7 +15084,7 @@ i32.store offset=8 local.get $7 ) - (func $std/typedarray/testArrayReverse (; 350 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayReverse (; 349 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -15198,7 +15242,7 @@ unreachable end ) - (func $~lib/typedarray/Uint8ClampedArray#reverse (; 351 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Uint8ClampedArray#reverse (; 350 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -15268,7 +15312,7 @@ end local.get $1 ) - (func $~lib/typedarray/Uint8ClampedArray#subarray (; 352 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint8ClampedArray#subarray (; 351 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -15345,7 +15389,7 @@ local.set $5 end block $~lib/runtime/REGISTER|inlined.1 (result i32) - block $~lib/runtime/ALLOCATE|inlined.5 (result i32) + block $~lib/runtime/ALLOCATE|inlined.17 (result i32) i32.const 12 local.set $7 local.get $7 @@ -15382,7 +15426,7 @@ i32.store offset=8 local.get $7 ) - (func $std/typedarray/testArrayReverse (; 353 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayReverse (; 352 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -15540,7 +15584,7 @@ unreachable end ) - (func $~lib/typedarray/Int16Array#reverse (; 354 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Int16Array#reverse (; 353 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -15610,7 +15654,7 @@ end local.get $1 ) - (func $~lib/typedarray/Int16Array#subarray (; 355 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Int16Array#subarray (; 354 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -15687,7 +15731,7 @@ local.set $5 end block $~lib/runtime/REGISTER|inlined.1 (result i32) - block $~lib/runtime/ALLOCATE|inlined.6 (result i32) + block $~lib/runtime/ALLOCATE|inlined.18 (result i32) i32.const 12 local.set $7 local.get $7 @@ -15724,7 +15768,7 @@ i32.store offset=8 local.get $7 ) - (func $std/typedarray/testArrayReverse (; 356 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayReverse (; 355 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -15888,7 +15932,7 @@ unreachable end ) - (func $~lib/typedarray/Uint16Array#reverse (; 357 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Uint16Array#reverse (; 356 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -15958,7 +16002,7 @@ end local.get $1 ) - (func $~lib/typedarray/Uint16Array#subarray (; 358 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint16Array#subarray (; 357 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -16035,7 +16079,7 @@ local.set $5 end block $~lib/runtime/REGISTER|inlined.1 (result i32) - block $~lib/runtime/ALLOCATE|inlined.7 (result i32) + block $~lib/runtime/ALLOCATE|inlined.19 (result i32) i32.const 12 local.set $7 local.get $7 @@ -16072,7 +16116,7 @@ i32.store offset=8 local.get $7 ) - (func $std/typedarray/testArrayReverse (; 359 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayReverse (; 358 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -16230,7 +16274,7 @@ unreachable end ) - (func $~lib/typedarray/Int32Array#reverse (; 360 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Int32Array#reverse (; 359 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -16300,7 +16344,7 @@ end local.get $1 ) - (func $std/typedarray/testArrayReverse (; 361 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayReverse (; 360 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -16452,7 +16496,7 @@ unreachable end ) - (func $~lib/typedarray/Uint32Array#reverse (; 362 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Uint32Array#reverse (; 361 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -16522,7 +16566,7 @@ end local.get $1 ) - (func $~lib/typedarray/Uint32Array#subarray (; 363 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint32Array#subarray (; 362 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -16599,7 +16643,7 @@ local.set $5 end block $~lib/runtime/REGISTER|inlined.1 (result i32) - block $~lib/runtime/ALLOCATE|inlined.8 (result i32) + block $~lib/runtime/ALLOCATE|inlined.20 (result i32) i32.const 12 local.set $7 local.get $7 @@ -16636,7 +16680,7 @@ i32.store offset=8 local.get $7 ) - (func $std/typedarray/testArrayReverse (; 364 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayReverse (; 363 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -16788,7 +16832,7 @@ unreachable end ) - (func $~lib/typedarray/Int64Array#reverse (; 365 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Int64Array#reverse (; 364 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -16858,7 +16902,7 @@ end local.get $1 ) - (func $~lib/typedarray/Int64Array#subarray (; 366 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Int64Array#subarray (; 365 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -16935,7 +16979,7 @@ local.set $5 end block $~lib/runtime/REGISTER|inlined.1 (result i32) - block $~lib/runtime/ALLOCATE|inlined.9 (result i32) + block $~lib/runtime/ALLOCATE|inlined.21 (result i32) i32.const 12 local.set $7 local.get $7 @@ -16972,7 +17016,7 @@ i32.store offset=8 local.get $7 ) - (func $std/typedarray/testArrayReverse (; 367 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayReverse (; 366 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -17127,7 +17171,7 @@ unreachable end ) - (func $~lib/typedarray/Uint64Array#reverse (; 368 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Uint64Array#reverse (; 367 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -17197,7 +17241,7 @@ end local.get $1 ) - (func $~lib/typedarray/Uint64Array#subarray (; 369 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Uint64Array#subarray (; 368 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -17274,7 +17318,7 @@ local.set $5 end block $~lib/runtime/REGISTER|inlined.1 (result i32) - block $~lib/runtime/ALLOCATE|inlined.10 (result i32) + block $~lib/runtime/ALLOCATE|inlined.22 (result i32) i32.const 12 local.set $7 local.get $7 @@ -17311,7 +17355,7 @@ i32.store offset=8 local.get $7 ) - (func $std/typedarray/testArrayReverse (; 370 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayReverse (; 369 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -17466,7 +17510,7 @@ unreachable end ) - (func $~lib/typedarray/Float32Array#reverse (; 371 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Float32Array#reverse (; 370 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -17536,7 +17580,7 @@ end local.get $1 ) - (func $~lib/typedarray/Float32Array#subarray (; 372 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/typedarray/Float32Array#subarray (; 371 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -17613,7 +17657,7 @@ local.set $5 end block $~lib/runtime/REGISTER|inlined.1 (result i32) - block $~lib/runtime/ALLOCATE|inlined.11 (result i32) + block $~lib/runtime/ALLOCATE|inlined.23 (result i32) i32.const 12 local.set $7 local.get $7 @@ -17650,7 +17694,7 @@ i32.store offset=8 local.get $7 ) - (func $std/typedarray/testArrayReverse (; 373 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayReverse (; 372 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -17805,7 +17849,7 @@ unreachable end ) - (func $~lib/typedarray/Float64Array#reverse (; 374 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/typedarray/Float64Array#reverse (; 373 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -17875,7 +17919,7 @@ end local.get $1 ) - (func $std/typedarray/testArrayReverse (; 375 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayReverse (; 374 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -18030,7 +18074,7 @@ unreachable end ) - (func $start:std/typedarray (; 376 ;) (type $FUNCSIG$v) + (func $start:std/typedarray (; 375 ;) (type $FUNCSIG$v) (local $0 i32) global.get $~lib/typedarray/Int8Array.BYTES_PER_ELEMENT i32.const 1 @@ -19306,9 +19350,9 @@ call $std/typedarray/testArrayReverse call $std/typedarray/testArrayReverse ) - (func $start (; 377 ;) (type $FUNCSIG$v) + (func $start (; 376 ;) (type $FUNCSIG$v) call $start:std/typedarray ) - (func $null (; 378 ;) (type $FUNCSIG$v) + (func $null (; 377 ;) (type $FUNCSIG$v) ) )