aliased makeCallInline, unmanaged rt alloc

This commit is contained in:
dcode 2019-03-19 14:40:37 +01:00
parent d42ef51cf0
commit 74789c9c1e
51 changed files with 1992 additions and 1655 deletions

View File

@ -4293,20 +4293,10 @@ export function compileBuiltinArraySetWithValue(
let linkPrototype = assert(program.linkPrototype); let linkPrototype = assert(program.linkPrototype);
let linkInstance = compiler.resolver.resolveFunction(linkPrototype, [ type, target.type ]); let linkInstance = compiler.resolver.resolveFunction(linkPrototype, [ type, target.type ]);
if (!linkInstance) return module.createUnreachable(); if (!linkInstance) return module.createUnreachable();
let previousFlow = compiler.currentFlow; valueExpr = compiler.makeCallInline(linkInstance, [
let tempValue = previousFlow.getTempLocal(type, false); valueExpr,
let flow = Flow.createInline(previousFlow.parentFunction, linkInstance); module.createGetLocal(assert(tempThis).index, nativeSizeType)
compiler.currentFlow = flow; ], 0, true);
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);
// handle Uint8ClampedArray: value = ~(value >> 31) & (((255 - value) >> 31) | value) // handle Uint8ClampedArray: value = ~(value >> 31) & (((255 - value) >> 31) | value)
} else if (target.internalName == BuiltinSymbols.Uint8ClampedArray) { } else if (target.internalName == BuiltinSymbols.Uint8ClampedArray) {

View File

@ -182,6 +182,7 @@ export namespace LibrarySymbols {
// runtime // runtime
export const abort = "abort"; export const abort = "abort";
export const ALLOCATE = "ALLOCATE"; export const ALLOCATE = "ALLOCATE";
export const ALLOCATE_UNMANAGED = "ALLOCATE_UNMANAGED";
export const REALLOCATE = "REALLOCATE"; export const REALLOCATE = "REALLOCATE";
export const DISCARD = "DISCARD"; export const DISCARD = "DISCARD";
export const REGISTER = "REGISTER"; export const REGISTER = "REGISTER";

View File

@ -1086,16 +1086,15 @@ export class Compiler extends DiagnosticEmitter {
} }
/** Compiles the body of a function within the specified flow. */ /** 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 module = this.module;
var bodyNode = assert(instance.prototype.bodyNode); var bodyNode = assert(instance.prototype.bodyNode);
var returnType = instance.signature.returnType; var returnType = instance.signature.returnType;
var flow = this.currentFlow; var flow = this.currentFlow;
// compile statements // compile statements
var stmts: BinaryenExportRef[];
if (bodyNode.kind == NodeKind.BLOCK) { if (bodyNode.kind == NodeKind.BLOCK) {
stmts = this.compileStatements((<BlockStatement>bodyNode).statements, true); stmts = this.compileStatements((<BlockStatement>bodyNode).statements, true, stmts);
} else { } else {
// must be an expression statement if not a block // must be an expression statement if not a block
assert(bodyNode.kind == NodeKind.EXPRESSION); assert(bodyNode.kind == NodeKind.EXPRESSION);
@ -1114,7 +1113,8 @@ export class Compiler extends DiagnosticEmitter {
); );
flow.set(FlowFlags.RETURNS); flow.set(FlowFlags.RETURNS);
if (!flow.canOverflow(stmt, returnType)) flow.set(FlowFlags.RETURNS_WRAPPED); 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 // make the main function call `start` implicitly, but only once
@ -1574,10 +1574,16 @@ export class Compiler extends DiagnosticEmitter {
return stmt; 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 numStatements = statements.length;
var stmts = new Array<ExpressionRef>(numStatements); if (!stmts) {
stmts = new Array<ExpressionRef>(numStatements);
stmts.length = 0; stmts.length = 0;
}
var flow = this.currentFlow; var flow = this.currentFlow;
for (let i = 0; i < numStatements; ++i) { for (let i = 0; i < numStatements; ++i) {
let stmt = this.compileStatement(statements[i], isBody && i == numStatements - 1); let stmt = this.compileStatement(statements[i], isBody && i == numStatements - 1);
@ -5471,13 +5477,13 @@ export class Compiler extends DiagnosticEmitter {
): ExpressionRef { ): ExpressionRef {
var numArguments = argumentExpressions.length; var numArguments = argumentExpressions.length;
var signature = instance.signature; var signature = instance.signature;
if (!this.checkCallSignature( // reports if (!this.checkCallSignature( // reports
signature, signature,
numArguments, numArguments,
thisArg != 0, thisArg != 0,
reportNode reportNode
)) { )) {
this.currentType = signature.returnType;
return this.module.createUnreachable(); return this.module.createUnreachable();
} }
@ -5518,23 +5524,62 @@ export class Compiler extends DiagnosticEmitter {
return this.makeCallDirect(instance, operands, reportNode); 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( private compileCallInlinePrechecked(
instance: Function, instance: Function,
argumentExpressions: Expression[], argumentExpressions: Expression[],
thisArg: ExpressionRef = 0, thisArg: ExpressionRef = 0,
canAlias: bool = false canAlias: bool = false
): ExpressionRef {
var numArguments = argumentExpressions.length;
var signature = instance.signature;
var parameterTypes = signature.parameterTypes;
var args = new Array<ExpressionRef>(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 { ): ExpressionRef {
var module = this.module; var module = this.module;
// Create a new inline flow and use it to compile the function as a block // Create a new inline flow and use it to compile the function as a block
var previousFlow = this.currentFlow; var previousFlow = this.currentFlow;
var flow = Flow.createInline(previousFlow.parentFunction, instance); 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 = []; var body = [];
// Convert provided call arguments to temporary locals
if (thisArg) { if (thisArg) {
let classInstance = assert(instance.parent); assert(classInstance.kind == ElementKind.CLASS); let classInstance = assert(instance.parent); assert(classInstance.kind == ElementKind.CLASS);
let thisType = assert(instance.signature.thisType); let thisType = assert(instance.signature.thisType);
@ -5550,18 +5595,14 @@ export class Compiler extends DiagnosticEmitter {
let baseInstance = (<Class>classInstance).base; let baseInstance = (<Class>classInstance).base;
if (baseInstance) flow.addScopedAlias(CommonSymbols.super_, baseInstance.type, thisLocal.index); if (baseInstance) flow.addScopedAlias(CommonSymbols.super_, baseInstance.type, thisLocal.index);
} }
} else {
assert(!instance.signature.thisType);
} }
var numArguments = args.length;
var numArguments = argumentExpressions.length;
var signature = instance.signature; var signature = instance.signature;
var parameterTypes = signature.parameterTypes; var parameterTypes = signature.parameterTypes;
for (let i = 0; i < numArguments; ++i) { for (let i = 0; i < numArguments; ++i) {
let paramExpr = this.compileExpression( let paramExpr = args[i];
argumentExpressions[i],
parameterTypes[i],
ConversionKind.IMPLICIT,
WrapMode.NONE
);
if (canAlias && getExpressionId(paramExpr) == ExpressionId.GetLocal) { if (canAlias && getExpressionId(paramExpr) == ExpressionId.GetLocal) {
flow.addScopedAlias(signature.getParameterName(i), parameterTypes[i], getGetLocalIndex(paramExpr)); flow.addScopedAlias(signature.getParameterName(i), parameterTypes[i], getGetLocalIndex(paramExpr));
} else { } else {
@ -5601,10 +5642,7 @@ export class Compiler extends DiagnosticEmitter {
} }
// Compile the called function's body in the scope of the inlined flow // Compile the called function's body in the scope of the inlined flow
{ this.compileFunctionBody(instance, body);
let stmts = this.compileFunctionBody(instance);
for (let i = 0, k = stmts.length; i < k; ++i) body.push(stmts[i]);
}
// Free any new scoped locals and reset to the original flow // Free any new scoped locals and reset to the original flow
flow.freeScopedLocals(); flow.freeScopedLocals();
@ -6679,23 +6717,13 @@ export class Compiler extends DiagnosticEmitter {
this.currentType = arrayType; this.currentType = arrayType;
return module.createUnreachable(); return module.createUnreachable();
} }
let previousFlow = this.currentFlow; let body = this.makeCallInline(wrapArrayInstance, [
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 program.options.isWasm64
? this.module.createI64(i64_low(bufferAddress), i64_high(bufferAddress)) ? this.module.createI64(i64_low(bufferAddress), i64_high(bufferAddress))
: this.module.createI32(i64_low(bufferAddress)) : this.module.createI32(i64_low(bufferAddress))
) ], 0, true);
);
previousFlow.freeTempLocal(tempLocal);
this.currentFlow = previousFlow;
this.currentType = arrayType; 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(); valueExpr = module.createUnreachable();
} else { } else {
// value = LINK(value, tempThis) // value = LINK(value, tempThis)
let tempValue = flow.getAndFreeTempLocal(elementType, false); valueExpr = this.makeCallInline(linkInstance, [
let inlineFlow = Flow.createInline(flow.parentFunction, linkInstance); valueExpr,
inlineFlow.addScopedAlias(linkInstance.signature.getParameterName(0), elementType, tempValue.index); module.createGetLocal(tempThis.index, nativeArrayType)
inlineFlow.addScopedAlias(linkInstance.signature.getParameterName(1), arrayType, tempThis.index); ], 0, true);
this.currentFlow = inlineFlow;
let body = this.compileFunctionBody(linkInstance);
stmts.push(
module.createSetLocal(tempValue.index, valueExpr)
);
valueExpr = module.createBlock(inlineFlow.inlineReturnLabel, body, nativeElementType);
this.currentFlow = flow; this.currentFlow = flow;
} }
} }
@ -7985,47 +8007,40 @@ export class Compiler extends DiagnosticEmitter {
assert(classInstance.program == program); assert(classInstance.program == program);
var module = this.module; var module = this.module;
var options = this.options; var options = this.options;
var nativeSizeType = options.nativeSizeType;
var classType = classInstance.type; var classType = classInstance.type;
var body: ExpressionRef;
// ALLOCATE(payloadSize: usize) -> usize if (classInstance.hasDecorator(DecoratorFlags.UNMANAGED)) {
var allocateInstance = assert(program.allocateInstance); // ALLOCATE_UNMANAGED(sizeof<T>())
if (!this.compileFunction(allocateInstance)) { let allocateInstance = assert(program.allocateUnmanagedInstance);
this.currentType = classInstance.type; body = this.makeCallInline(allocateInstance, [
return module.createUnreachable(); options.isWasm64
} ? module.createI64(classInstance.currentMemoryOffset)
: module.createI32(classInstance.currentMemoryOffset)
], 0, true);
// REGISTER<T>(ref: usize) -> usize this.currentType = classType;
var registerPrototype = assert(program.registerPrototype); return body;
var registerInstance = this.resolver.resolveFunction(registerPrototype, [ classType ]);
} else {
// REGISTER<T>(ALLOCATE(sizeof<T>()))
let allocateInstance = assert(program.allocateInstance);
let registerPrototype = assert(program.registerPrototype);
let registerInstance = this.resolver.resolveFunction(registerPrototype, [ classType ]);
if (!registerInstance) { if (!registerInstance) {
this.currentType = classType; this.currentType = classType;
return module.createUnreachable(); return module.createUnreachable();
} }
body = this.makeCallInline(registerInstance, [
// REGISTER<T>(ALLOCATE(sizeof<T>())) this.makeCallInline(allocateInstance, [
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 options.isWasm64
? module.createI64(classInstance.currentMemoryOffset) ? module.createI64(classInstance.currentMemoryOffset)
: module.createI32(classInstance.currentMemoryOffset) : module.createI32(classInstance.currentMemoryOffset)
], ], 0, true)
nativeSizeType ], 0, true);
) }
)
);
previousFlow.freeTempLocal(tempLocal);
this.currentFlow = previousFlow;
this.currentType = classType; this.currentType = classType;
return module.createBlock(flow.inlineReturnLabel, body, nativeSizeType); return body;
} }
/** Makes the initializers for a class's fields. */ /** Makes the initializers for a class's fields. */

View File

@ -354,6 +354,8 @@ export class Program extends DiagnosticEmitter {
abortInstance: Function | null = null; abortInstance: Function | null = null;
/** Runtime allocation function. */ /** Runtime allocation function. */
allocateInstance: Function | null = null; allocateInstance: Function | null = null;
/** Unmanaged allocation function. */
allocateUnmanagedInstance: Function | null = null;
/** Runtime reallocation function. */ /** Runtime reallocation function. */
reallocateInstance: Function | null = null; reallocateInstance: Function | null = null;
/** Runtime discard function. */ /** Runtime discard function. */
@ -804,6 +806,10 @@ export class Program extends DiagnosticEmitter {
assert(element.kind == ElementKind.FUNCTION_PROTOTYPE); assert(element.kind == ElementKind.FUNCTION_PROTOTYPE);
this.allocateInstance = this.resolver.resolveFunction(<FunctionPrototype>element, null); this.allocateInstance = this.resolver.resolveFunction(<FunctionPrototype>element, null);
} }
if (element = this.lookupGlobal(LibrarySymbols.ALLOCATE_UNMANAGED)) {
assert(element.kind == ElementKind.FUNCTION_PROTOTYPE);
this.allocateUnmanagedInstance = this.resolver.resolveFunction(<FunctionPrototype>element, null);
}
if (element = this.lookupGlobal(LibrarySymbols.REALLOCATE)) { if (element = this.lookupGlobal(LibrarySymbols.REALLOCATE)) {
assert(element.kind == ElementKind.FUNCTION_PROTOTYPE); assert(element.kind == ElementKind.FUNCTION_PROTOTYPE);
this.reallocateInstance = this.resolver.resolveFunction(<FunctionPrototype>element, null); this.reallocateInstance = this.resolver.resolveFunction(<FunctionPrototype>element, null);

View File

@ -68,6 +68,13 @@ function doAllocate(payloadSize: usize): usize {
return changetype<usize>(header) + HEADER_SIZE; return changetype<usize>(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. */ /** Reallocates an object if necessary. Returns a pointer to its (moved) payload. */
// @ts-ignore: decorator // @ts-ignore: decorator
@unsafe @inline @unsafe @inline

View File

@ -106,7 +106,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -120,7 +120,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -389,11 +389,9 @@
) )
(func $call-super/test4 (; 13 ;) (type $FUNCSIG$v) (func $call-super/test4 (; 13 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
block (result i32)
block (result i32) block (result i32)
call $call-super/H#constructor call $call-super/H#constructor
end end
end
local.tee $0 local.tee $0
i32.load i32.load
i32.const 1 i32.const 1
@ -444,11 +442,9 @@
) )
(func $call-super/test5 (; 15 ;) (type $FUNCSIG$v) (func $call-super/test5 (; 15 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
block (result i32)
block (result i32) block (result i32)
call $call-super/J#constructor call $call-super/J#constructor
end end
end
local.tee $0 local.tee $0
i32.load i32.load
i32.const 1 i32.const 1

View File

@ -133,11 +133,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -145,7 +141,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -160,13 +156,13 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -176,15 +172,19 @@
i32.store i32.store
local.get $0 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) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<A>|inlined.0 (result i32) block $~lib/runtime/REGISTER<A>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 1 i32.const 1
@ -211,14 +211,18 @@
end end
local.get $0 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 $1 i32)
local.get $0 local.get $0
if (result i32) if (result i32)
local.get $0 local.get $0
else else
block $~lib/runtime/ALLOCATE|inlined.1 (result i32)
i32.const 8 i32.const 8
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 3 i32.const 3
@ -257,7 +261,7 @@
end end
local.get $0 local.get $0
) )
(func $call-super/test1 (; 9 ;) (type $FUNCSIG$v) (func $call-super/test1 (; 8 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
i32.const 0 i32.const 0
call $call-super/B#constructor call $call-super/B#constructor
@ -289,14 +293,18 @@
unreachable unreachable
end 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<C>|inlined.0 (result i32) block $~lib/runtime/REGISTER<C>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.2 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 4 i32.const 4
@ -309,14 +317,18 @@
i32.store i32.store
local.get $0 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 $1 i32)
local.get $0 local.get $0
if (result i32) if (result i32)
local.get $0 local.get $0
else else
block $~lib/runtime/ALLOCATE|inlined.3 (result i32)
i32.const 8 i32.const 8
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 5 i32.const 5
@ -355,7 +367,7 @@
end end
local.get $0 local.get $0
) )
(func $call-super/test2 (; 12 ;) (type $FUNCSIG$v) (func $call-super/test2 (; 11 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
i32.const 0 i32.const 0
call $call-super/D#constructor call $call-super/D#constructor
@ -387,15 +399,19 @@
unreachable unreachable
end 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) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<E>|inlined.0 (result i32) block $~lib/runtime/REGISTER<E>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.4 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 6 i32.const 6
@ -422,14 +438,18 @@
end end
local.get $0 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<F>|inlined.0 (result i32) block $~lib/runtime/REGISTER<F>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.5 (result i32)
i32.const 8 i32.const 8
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 7 i32.const 7
@ -445,7 +465,7 @@
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
) )
(func $call-super/test3 (; 15 ;) (type $FUNCSIG$v) (func $call-super/test3 (; 14 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
i32.const 0 i32.const 0
call $call-super/F#constructor call $call-super/F#constructor
@ -477,14 +497,18 @@
unreachable unreachable
end 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<G>|inlined.0 (result i32) block $~lib/runtime/REGISTER<G>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.6 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 8 i32.const 8
@ -497,14 +521,18 @@
i32.store i32.store
local.get $0 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<H>|inlined.0 (result i32) block $~lib/runtime/REGISTER<H>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.7 (result i32)
i32.const 8 i32.const 8
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 9 i32.const 9
@ -520,7 +548,7 @@
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
) )
(func $call-super/test4 (; 18 ;) (type $FUNCSIG$v) (func $call-super/test4 (; 17 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
i32.const 0 i32.const 0
call $call-super/H#constructor call $call-super/H#constructor
@ -552,14 +580,18 @@
unreachable unreachable
end 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<I>|inlined.0 (result i32) block $~lib/runtime/REGISTER<I>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.8 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 10 i32.const 10
@ -572,14 +604,18 @@
i32.store i32.store
local.get $0 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<J>|inlined.0 (result i32) block $~lib/runtime/REGISTER<J>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.9 (result i32)
i32.const 8 i32.const 8
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 11 i32.const 11
@ -595,7 +631,7 @@
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
) )
(func $call-super/test5 (; 21 ;) (type $FUNCSIG$v) (func $call-super/test5 (; 20 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
i32.const 0 i32.const 0
call $call-super/J#constructor call $call-super/J#constructor
@ -627,7 +663,7 @@
unreachable unreachable
end end
) )
(func $start:call-super (; 22 ;) (type $FUNCSIG$v) (func $start:call-super (; 21 ;) (type $FUNCSIG$v)
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.const 7 i32.const 7
i32.add i32.add
@ -644,9 +680,9 @@
call $call-super/test4 call $call-super/test4
call $call-super/test5 call $call-super/test5
) )
(func $start (; 23 ;) (type $FUNCSIG$v) (func $start (; 22 ;) (type $FUNCSIG$v)
call $start:call-super call $start:call-super
) )
(func $null (; 24 ;) (type $FUNCSIG$v) (func $null (; 23 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -116,7 +116,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -130,7 +130,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -160,14 +160,14 @@
local.get $0 local.get $0
i32.eqz i32.eqz
end end
if (result i32) if
i32.const 0 i32.const 0
call $~lib/runtime/doAllocate call $~lib/runtime/doAllocate
i32.const 10 i32.const 10
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
else local.set $0
local.get $0
end end
local.get $0
) )
(func $start:constructor (; 6 ;) (type $FUNCSIG$v) (func $start:constructor (; 6 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)

View File

@ -143,11 +143,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -155,7 +151,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -170,13 +166,13 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -186,14 +182,18 @@
i32.store i32.store
local.get $0 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<EmptyCtor>|inlined.0 (result i32) block $~lib/runtime/REGISTER<EmptyCtor>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 0 i32.const 0
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 1 i32.const 1
@ -203,14 +203,18 @@
end end
local.get $0 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<EmptyCtorWithFieldInit>|inlined.0 (result i32) block $~lib/runtime/REGISTER<EmptyCtorWithFieldInit>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.1 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 3 i32.const 3
@ -223,14 +227,18 @@
i32.store i32.store
local.get $0 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<EmptyCtorWithFieldNoInit>|inlined.0 (result i32) block $~lib/runtime/REGISTER<EmptyCtorWithFieldNoInit>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.2 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 4 i32.const 4
@ -243,14 +251,18 @@
i32.store i32.store
local.get $0 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<None>|inlined.0 (result i32) block $~lib/runtime/REGISTER<None>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.3 (result i32)
i32.const 0 i32.const 0
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 5 i32.const 5
@ -260,14 +272,18 @@
end end
local.get $0 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<JustFieldInit>|inlined.0 (result i32) block $~lib/runtime/REGISTER<JustFieldInit>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.4 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 6 i32.const 6
@ -280,14 +296,18 @@
i32.store i32.store
local.get $0 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<JustFieldNoInit>|inlined.0 (result i32) block $~lib/runtime/REGISTER<JustFieldNoInit>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.5 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 7 i32.const 7
@ -300,11 +320,11 @@
i32.store i32.store
local.get $0 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 i32.const 0
call $~lib/memory/memory.allocate 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) (local $1 i32)
global.get $constructor/b global.get $constructor/b
if if
@ -316,8 +336,12 @@
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<CtorConditionallyReturns>|inlined.0 (result i32) block $~lib/runtime/REGISTER<CtorConditionallyReturns>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.6 (result i32)
i32.const 0 i32.const 0
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 8 i32.const 8
@ -327,15 +351,19 @@
end end
local.get $0 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) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<CtorAllocates>|inlined.0 (result i32) block $~lib/runtime/REGISTER<CtorAllocates>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.7 (result i32)
i32.const 0 i32.const 0
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 9 i32.const 9
@ -348,7 +376,7 @@
drop drop
local.get $0 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) (local $1 i32)
global.get $constructor/b global.get $constructor/b
if if
@ -357,8 +385,12 @@
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<CtorConditionallyAllocates>|inlined.0 (result i32) block $~lib/runtime/REGISTER<CtorConditionallyAllocates>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.8 (result i32)
i32.const 0 i32.const 0
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 10 i32.const 10
@ -374,8 +406,12 @@
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<CtorConditionallyAllocates>|inlined.1 (result i32) block $~lib/runtime/REGISTER<CtorConditionallyAllocates>|inlined.1 (result i32)
block $~lib/runtime/ALLOCATE|inlined.9 (result i32)
i32.const 0 i32.const 0
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 10 i32.const 10
@ -385,7 +421,7 @@
end end
local.get $0 local.get $0
) )
(func $start:constructor (; 17 ;) (type $FUNCSIG$v) (func $start:constructor (; 16 ;) (type $FUNCSIG$v)
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.const 7 i32.const 7
i32.add i32.add
@ -427,9 +463,9 @@
call $constructor/CtorConditionallyAllocates#constructor call $constructor/CtorConditionallyAllocates#constructor
global.set $constructor/ctorConditionallyAllocates global.set $constructor/ctorConditionallyAllocates
) )
(func $start (; 18 ;) (type $FUNCSIG$v) (func $start (; 17 ;) (type $FUNCSIG$v)
call $start:constructor call $start:constructor
) )
(func $null (; 19 ;) (type $FUNCSIG$v) (func $null (; 18 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -131,7 +131,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -145,7 +145,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -185,11 +185,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 8 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 9 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -197,7 +193,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -212,13 +208,13 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -228,15 +224,19 @@
i32.store i32.store
local.get $0 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) (local $2 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Car>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Car>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 1 i32.const 1
@ -253,30 +253,34 @@
i32.store i32.store
local.get $0 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 local.get $0
i32.load 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 $0
local.get $1 local.get $1
i32.store 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 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 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) (local $2 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Car>|inlined.1 (result i32) block $~lib/runtime/REGISTER<Car>|inlined.1 (result i32)
block $~lib/runtime/ALLOCATE|inlined.1 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 1 i32.const 1
@ -293,19 +297,19 @@
i32.store i32.store
local.get $0 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 local.get $0
i32.load 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 $0
local.get $1 local.get $1
i32.store 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 nop
) )
(func $start (; 20 ;) (type $FUNCSIG$v) (func $start (; 19 ;) (type $FUNCSIG$v)
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.const 7 i32.const 7
i32.add i32.add
@ -317,9 +321,9 @@
global.get $~lib/allocator/arena/startOffset global.get $~lib/allocator/arena/startOffset
global.set $~lib/allocator/arena/offset 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 $1of1
block $0of1 block $0of1
block $outOfRange block $outOfRange
@ -337,20 +341,20 @@
local.get $1 local.get $1
call $exports/subOpt 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 local.get $0
global.set $~lib/argc 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 local.get $0
i32.load 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 $0
local.get $1 local.get $1
i32.store 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 $1of1
block $0of1 block $0of1
block $outOfRange block $outOfRange
@ -366,16 +370,16 @@
local.get $1 local.get $1
call $exports/Car#constructor 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 local.get $0
i32.load 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 $0
local.get $1 local.get $1
i32.store 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 $1of1
block $0of1 block $0of1
block $outOfRange block $outOfRange

View File

@ -85,7 +85,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -99,7 +99,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -135,11 +135,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -147,7 +143,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -162,13 +158,13 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -178,14 +174,18 @@
i32.store i32.store
local.get $0 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<C>|inlined.0 (result i32) block $~lib/runtime/REGISTER<C>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 0 i32.const 0
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 1 i32.const 1
@ -195,13 +195,13 @@
end end
local.get $0 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 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 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) (local $0 i32)
i32.const 0 i32.const 0
call $getter-call/C#constructor call $getter-call/C#constructor
@ -212,7 +212,7 @@
call $getter-call/C#get:x call $getter-call/C#get:x
call_indirect (type $FUNCSIG$i) call_indirect (type $FUNCSIG$i)
) )
(func $start (; 11 ;) (type $FUNCSIG$v) (func $start (; 10 ;) (type $FUNCSIG$v)
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.const 7 i32.const 7
i32.add i32.add
@ -224,6 +224,6 @@
global.get $~lib/allocator/arena/startOffset global.get $~lib/allocator/arena/startOffset
global.set $~lib/allocator/arena/offset global.set $~lib/allocator/arena/offset
) )
(func $null (; 12 ;) (type $FUNCSIG$v) (func $null (; 11 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -131,7 +131,7 @@
if if
i32.const 0 i32.const 0
i32.const 48 i32.const 48
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -145,7 +145,7 @@
if if
i32.const 0 i32.const 0
i32.const 48 i32.const 48
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -399,11 +399,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 7 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 8 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -411,7 +407,7 @@
if if
i32.const 0 i32.const 0
i32.const 48 i32.const 48
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -426,13 +422,13 @@
if if
i32.const 0 i32.const 0
i32.const 48 i32.const 48
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -442,7 +438,7 @@
i32.store i32.store
local.get $0 local.get $0
) )
(func $inlining/test_ctor (; 10 ;) (type $FUNCSIG$v) (func $inlining/test_ctor (; 9 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -459,8 +455,12 @@
if (result i32) if (result i32)
local.get $0 local.get $0
else else
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 16 i32.const 16
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 2 i32.const 2
@ -474,8 +474,12 @@
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Baz>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Baz>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.1 (result i32)
i32.const 8 i32.const 8
call $~lib/runtime/ALLOCATE local.set $4
local.get $4
call $~lib/runtime/doAllocate
end
local.set $4 local.set $4
local.get $4 local.get $4
i32.const 3 i32.const 3
@ -561,7 +565,7 @@
unreachable unreachable
end end
) )
(func $start:inlining (; 11 ;) (type $FUNCSIG$v) (func $start:inlining (; 10 ;) (type $FUNCSIG$v)
call $inlining/test call $inlining/test
i32.const 3 i32.const 3
i32.eq i32.eq
@ -587,9 +591,9 @@
global.set $~lib/allocator/arena/offset global.set $~lib/allocator/arena/offset
call $inlining/test_ctor call $inlining/test_ctor
) )
(func $start (; 12 ;) (type $FUNCSIG$v) (func $start (; 11 ;) (type $FUNCSIG$v)
call $start:inlining call $start:inlining
) )
(func $null (; 13 ;) (type $FUNCSIG$v) (func $null (; 12 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -49,11 +49,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -61,7 +57,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -76,13 +72,13 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -92,14 +88,18 @@
i32.store i32.store
local.get $0 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<A>|inlined.0 (result i32) block $~lib/runtime/REGISTER<A>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 0 i32.const 0
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 1 i32.const 1
@ -109,13 +109,13 @@
end end
local.get $0 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) (local $0 i32)
i32.const 0 i32.const 0
call $new-without-allocator/A#constructor call $new-without-allocator/A#constructor
local.set $0 local.set $0
i32.const 3 i32.const 3
) )
(func $null (; 9 ;) (type $FUNCSIG$v) (func $null (; 8 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -302,7 +302,7 @@
if if
i32.const 0 i32.const 0
i32.const 464 i32.const 464
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -316,7 +316,7 @@
if if
i32.const 0 i32.const 0
i32.const 464 i32.const 464
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -399,7 +399,7 @@
if if
i32.const 0 i32.const 0
i32.const 464 i32.const 464
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -414,7 +414,7 @@
if if
i32.const 0 i32.const 0
i32.const 464 i32.const 464
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -106,7 +106,7 @@
if if
i32.const 0 i32.const 0
i32.const 48 i32.const 48
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -120,7 +120,7 @@
if if
i32.const 0 i32.const 0
i32.const 48 i32.const 48
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -135,11 +135,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -147,7 +143,7 @@
if if
i32.const 0 i32.const 0
i32.const 48 i32.const 48
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -162,13 +158,13 @@
if if
i32.const 0 i32.const 0
i32.const 48 i32.const 48
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -178,7 +174,7 @@
i32.store i32.store
local.get $0 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 local.get $0
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.sub i32.sub
@ -186,7 +182,7 @@
i32.const 1 i32.const 1
i32.shr_u 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 $5 i32)
(local $6 i32) (local $6 i32)
(local $7 i32) (local $7 i32)
@ -239,7 +235,7 @@
end end
local.get $5 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 $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -283,7 +279,7 @@
call $~lib/util/string/compareImpl call $~lib/util/string/compareImpl
i32.eqz 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 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -311,7 +307,7 @@
unreachable unreachable
end 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 local.get $0
i32.load i32.load
i32.const 2 i32.const 2
@ -326,7 +322,7 @@
unreachable unreachable
end 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 local.get $0
i32.load i32.load
i32.const 3 i32.const 3
@ -341,7 +337,7 @@
unreachable unreachable
end end
) )
(func $start:object-literal (; 13 ;) (type $FUNCSIG$v) (func $start:object-literal (; 12 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -358,8 +354,12 @@
global.set $~lib/allocator/arena/offset global.set $~lib/allocator/arena/offset
block (result i32) block (result i32)
block $~lib/runtime/REGISTER<Foo>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Foo>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 8 i32.const 8
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 2 i32.const 2
@ -377,8 +377,12 @@
call $object-literal/bar call $object-literal/bar
block (result i32) block (result i32)
block $~lib/runtime/REGISTER<Foo2>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Foo2>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.1 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 3 i32.const 3
@ -393,8 +397,12 @@
call $object-literal/bar2 call $object-literal/bar2
block (result i32) block (result i32)
block $~lib/runtime/REGISTER<Foo2>|inlined.1 (result i32) block $~lib/runtime/REGISTER<Foo2>|inlined.1 (result i32)
block $~lib/runtime/ALLOCATE|inlined.2 (result i32)
i32.const 4 i32.const 4
call $~lib/runtime/ALLOCATE local.set $3
local.get $3
call $~lib/runtime/doAllocate
end
local.set $3 local.set $3
local.get $3 local.get $3
i32.const 3 i32.const 3
@ -408,9 +416,9 @@
end end
call $object-literal/Foo2#test call $object-literal/Foo2#test
) )
(func $start (; 14 ;) (type $FUNCSIG$v) (func $start (; 13 ;) (type $FUNCSIG$v)
call $start:object-literal call $start:object-literal
) )
(func $null (; 15 ;) (type $FUNCSIG$v) (func $null (; 14 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -100,7 +100,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -114,7 +114,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -142,11 +142,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 6 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 7 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -154,7 +150,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -169,13 +165,13 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -185,14 +181,18 @@
i32.store i32.store
local.get $0 local.get $0
) )
(func $optional-typeparameters/TestConcrete<i32,i32>#constructor (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $optional-typeparameters/TestConcrete<i32,i32>#constructor (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<TestConcrete<i32,i32>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<TestConcrete<i32,i32>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 0 i32.const 0
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 1 i32.const 1
@ -202,19 +202,23 @@
end end
local.get $0 local.get $0
) )
(func $optional-typeparameters/TestConcrete<i32,i32>#test<i32> (; 10 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $optional-typeparameters/TestConcrete<i32,i32>#test<i32> (; 9 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
local.get $1 local.get $1
local.get $2 local.get $2
i32.add i32.add
) )
(func $optional-typeparameters/TestDerived<f64,f64>#constructor (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $optional-typeparameters/TestDerived<f64,f64>#constructor (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<TestDerived<f64,f64>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<TestDerived<f64,f64>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.1 (result i32)
i32.const 0 i32.const 0
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 3 i32.const 3
@ -224,12 +228,12 @@
end end
local.get $0 local.get $0
) )
(func $optional-typeparameters/TestDerived<f64,f64>#test<f64> (; 12 ;) (type $FUNCSIG$didd) (param $0 i32) (param $1 f64) (param $2 f64) (result f64) (func $optional-typeparameters/TestDerived<f64,f64>#test<f64> (; 11 ;) (type $FUNCSIG$didd) (param $0 i32) (param $1 f64) (param $2 f64) (result f64)
local.get $1 local.get $1
local.get $2 local.get $2
f64.add f64.add
) )
(func $start:optional-typeparameters (; 13 ;) (type $FUNCSIG$v) (func $start:optional-typeparameters (; 12 ;) (type $FUNCSIG$v)
i32.const 1 i32.const 1
call $optional-typeparameters/testConcrete<i32,i32> call $optional-typeparameters/testConcrete<i32,i32>
drop drop
@ -263,9 +267,9 @@
call $optional-typeparameters/TestDerived<f64,f64>#test<f64> call $optional-typeparameters/TestDerived<f64,f64>#test<f64>
drop drop
) )
(func $start (; 14 ;) (type $FUNCSIG$v) (func $start (; 13 ;) (type $FUNCSIG$v)
call $start:optional-typeparameters call $start:optional-typeparameters
) )
(func $null (; 15 ;) (type $FUNCSIG$v) (func $null (; 14 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -374,7 +374,7 @@
if if
i32.const 0 i32.const 0
i32.const 224 i32.const 224
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -388,7 +388,7 @@
if if
i32.const 0 i32.const 0
i32.const 224 i32.const 224
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -436,7 +436,7 @@
if if
i32.const 0 i32.const 0
i32.const 224 i32.const 224
i32.const 227 i32.const 234
i32.const 57 i32.const 57
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -470,7 +470,7 @@
if if
i32.const 0 i32.const 0
i32.const 224 i32.const 224
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -485,7 +485,7 @@
if if
i32.const 0 i32.const 0
i32.const 224 i32.const 224
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -534,11 +534,7 @@
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
end end
) )
(func $~lib/runtime/ALLOCATE (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/ArrayBufferView#constructor (; 12 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 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)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -549,7 +545,7 @@
if if
i32.const 0 i32.const 0
i32.const 224 i32.const 224
i32.const 227 i32.const 234
i32.const 57 i32.const 57
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -566,8 +562,12 @@
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<ArrayBufferView>|inlined.0 (result i32) block $~lib/runtime/REGISTER<ArrayBufferView>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.1 (result i32)
i32.const 12 i32.const 12
call $~lib/runtime/ALLOCATE local.set $4
local.get $4
call $~lib/runtime/doAllocate
end
local.set $4 local.set $4
local.get $4 local.get $4
i32.const 5 i32.const 5
@ -596,14 +596,18 @@
i32.store offset=8 i32.store offset=8
local.get $0 local.get $0
) )
(func $~lib/array/Array<i8>#constructor (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<i8>#constructor (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
if (result i32) if (result i32)
local.get $0 local.get $0
else else
block $~lib/runtime/ALLOCATE|inlined.2 (result i32)
i32.const 16 i32.const 16
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 2 i32.const 2
@ -621,14 +625,18 @@
i32.store offset=12 i32.store offset=12
local.get $0 local.get $0
) )
(func $~lib/array/Array<i32>#constructor (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<i32>#constructor (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
if (result i32) if (result i32)
local.get $0 local.get $0
else else
block $~lib/runtime/ALLOCATE|inlined.3 (result i32)
i32.const 16 i32.const 16
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 4 i32.const 4
@ -646,14 +654,18 @@
i32.store offset=12 i32.store offset=12
local.get $0 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Ref>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Ref>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.4 (result i32)
i32.const 0 i32.const 0
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 6 i32.const 6
@ -663,14 +675,18 @@
end end
local.get $0 local.get $0
) )
(func $~lib/array/Array<Ref>#constructor (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<Ref>#constructor (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
if (result i32) if (result i32)
local.get $0 local.get $0
else else
block $~lib/runtime/ALLOCATE|inlined.5 (result i32)
i32.const 16 i32.const 16
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 7 i32.const 7
@ -688,18 +704,22 @@
i32.store offset=12 i32.store offset=12
local.get $0 local.get $0
) )
(func $~lib/array/Array<Ref>#get:length (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/array/Array<Ref>#get:length (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=12 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 $1 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<RefWithCtor>|inlined.0 (result i32) block $~lib/runtime/REGISTER<RefWithCtor>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.6 (result i32)
i32.const 0 i32.const 0
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 8 i32.const 8
@ -709,14 +729,18 @@
end end
local.get $0 local.get $0
) )
(func $~lib/array/Array<RefWithCtor>#constructor (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<RefWithCtor>#constructor (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
if (result i32) if (result i32)
local.get $0 local.get $0
else else
block $~lib/runtime/ALLOCATE|inlined.7 (result i32)
i32.const 16 i32.const 16
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 9 i32.const 9
@ -734,11 +758,11 @@
i32.store offset=12 i32.store offset=12
local.get $0 local.get $0
) )
(func $~lib/array/Array<RefWithCtor>#get:length (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/array/Array<RefWithCtor>#get:length (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=12 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 $0 i32)
(local $1 i32) (local $1 i32)
global.get $std/array-literal/staticArrayI8 global.get $std/array-literal/staticArrayI8
@ -1123,9 +1147,9 @@
unreachable unreachable
end end
) )
(func $start (; 23 ;) (type $FUNCSIG$v) (func $start (; 22 ;) (type $FUNCSIG$v)
call $start:std/array-literal call $start:std/array-literal
) )
(func $null (; 24 ;) (type $FUNCSIG$v) (func $null (; 23 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -601,7 +601,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -615,7 +615,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -663,7 +663,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 227 i32.const 234
i32.const 57 i32.const 57
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -2193,7 +2193,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 100 i32.const 107
i32.const 8 i32.const 8
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -5530,10 +5530,6 @@
if if
local.get $0 local.get $0
i32.load offset=12 i32.load offset=12
i32.const 1
i32.sub
local.get $1
i32.sub
local.set $2 local.set $2
i32.const 4 i32.const 4
call $~lib/runtime/doAllocate call $~lib/runtime/doAllocate
@ -5541,6 +5537,10 @@
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
local.tee $3 local.tee $3
local.get $2 local.get $2
i32.const 1
i32.sub
local.get $1
i32.sub
i32.store i32.store
local.get $0 local.get $0
local.get $1 local.get $1

File diff suppressed because it is too large Load Diff

View File

@ -326,7 +326,7 @@
if if
i32.const 0 i32.const 0
i32.const 64 i32.const 64
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -340,7 +340,7 @@
if if
i32.const 0 i32.const 0
i32.const 64 i32.const 64
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -1552,7 +1552,7 @@
if if
i32.const 0 i32.const 0
i32.const 64 i32.const 64
i32.const 227 i32.const 234
i32.const 57 i32.const 57
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -1884,10 +1884,12 @@
global.set $std/arraybuffer/arr8 global.set $std/arraybuffer/arr8
call $~lib/runtime/doWrapArray call $~lib/runtime/doWrapArray
drop drop
i32.const 1
i32.const 0
global.get $std/arraybuffer/arr8 global.get $std/arraybuffer/arr8
select if (result i32)
i32.const 1
else
i32.const 0
end
i32.eqz i32.eqz
if if
i32.const 0 i32.const 0

View File

@ -408,7 +408,7 @@
if if
i32.const 0 i32.const 0
i32.const 64 i32.const 64
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -423,7 +423,7 @@
if if
i32.const 0 i32.const 0
i32.const 64 i32.const 64
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -2037,11 +2037,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/runtime/ALLOCATE (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/ArrayBufferView#constructor (; 17 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 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)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -2052,7 +2048,7 @@
if if
i32.const 0 i32.const 0
i32.const 64 i32.const 64
i32.const 227 i32.const 234
i32.const 57 i32.const 57
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -2069,8 +2065,12 @@
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<ArrayBufferView>|inlined.0 (result i32) block $~lib/runtime/REGISTER<ArrayBufferView>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.2 (result i32)
i32.const 12 i32.const 12
call $~lib/runtime/ALLOCATE local.set $4
local.get $4
call $~lib/runtime/doAllocate
end
local.set $4 local.set $4
local.get $4 local.get $4
i32.const 3 i32.const 3
@ -2099,14 +2099,18 @@
i32.store offset=8 i32.store offset=8
local.get $0 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 $2 i32)
local.get $0 local.get $0
if (result i32) if (result i32)
local.get $0 local.get $0
else else
block $~lib/runtime/ALLOCATE|inlined.3 (result i32)
i32.const 12 i32.const 12
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 4 i32.const 4
@ -2118,7 +2122,7 @@
local.set $0 local.set $0
local.get $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 $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2155,14 +2159,18 @@
call $~lib/memory/memory.copy call $~lib/memory/memory.copy
local.get $3 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 $2 i32)
local.get $0 local.get $0
if (result i32) if (result i32)
local.get $0 local.get $0
else else
block $~lib/runtime/ALLOCATE|inlined.4 (result i32)
i32.const 12 i32.const 12
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 6 i32.const 6
@ -2174,7 +2182,7 @@
local.set $0 local.set $0
local.get $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 $4 i32)
(local $5 i32) (local $5 i32)
local.get $3 local.get $3
@ -2217,8 +2225,12 @@
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<DataView>|inlined.0 (result i32) block $~lib/runtime/REGISTER<DataView>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.5 (result i32)
i32.const 12 i32.const 12
call $~lib/runtime/ALLOCATE local.set $4
local.get $4
call $~lib/runtime/doAllocate
end
local.set $4 local.set $4
local.get $4 local.get $4
i32.const 7 i32.const 7
@ -2251,11 +2263,11 @@
i32.store offset=8 i32.store offset=8
local.get $0 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 local.get $0
i32.load i32.load
) )
(func $start:std/arraybuffer (; 24 ;) (type $FUNCSIG$v) (func $start:std/arraybuffer (; 23 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.const 7 i32.const 7
@ -2576,9 +2588,9 @@
unreachable unreachable
end end
) )
(func $start (; 25 ;) (type $FUNCSIG$v) (func $start (; 24 ;) (type $FUNCSIG$v)
call $start:std/arraybuffer call $start:std/arraybuffer
) )
(func $null (; 26 ;) (type $FUNCSIG$v) (func $null (; 25 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -163,7 +163,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -177,7 +177,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -1012,14 +1012,14 @@
i32.const 95 i32.const 95
call $~lib/typedarray/Uint8Array#__set call $~lib/typedarray/Uint8Array#__set
global.get $std/dataview/array global.get $std/dataview/array
local.tee $0
i32.load i32.load
local.get $0 global.get $std/dataview/array
local.tee $0
i32.load offset=4 i32.load offset=4
local.get $0 local.get $0
i32.load i32.load
i32.sub i32.sub
local.get $0 global.get $std/dataview/array
i32.load offset=8 i32.load offset=8
call $~lib/dataview/DataView#constructor call $~lib/dataview/DataView#constructor
global.set $std/dataview/view global.set $std/dataview/view

View File

@ -414,7 +414,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -429,7 +429,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -478,11 +478,7 @@
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
end end
) )
(func $~lib/runtime/ALLOCATE (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/ArrayBufferView#constructor (; 8 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 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)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -493,7 +489,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 227 i32.const 234
i32.const 57 i32.const 57
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -510,8 +506,12 @@
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<ArrayBufferView>|inlined.0 (result i32) block $~lib/runtime/REGISTER<ArrayBufferView>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.1 (result i32)
i32.const 12 i32.const 12
call $~lib/runtime/ALLOCATE local.set $4
local.get $4
call $~lib/runtime/doAllocate
end
local.set $4 local.set $4
local.get $4 local.get $4
i32.const 3 i32.const 3
@ -540,14 +540,18 @@
i32.store offset=8 i32.store offset=8
local.get $0 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 $2 i32)
local.get $0 local.get $0
if (result i32) if (result i32)
local.get $0 local.get $0
else else
block $~lib/runtime/ALLOCATE|inlined.2 (result i32)
i32.const 12 i32.const 12
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 4 i32.const 4
@ -559,7 +563,7 @@
local.set $0 local.set $0
local.get $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 $1
local.get $0 local.get $0
i32.load offset=8 i32.load offset=8
@ -579,13 +583,13 @@
local.get $2 local.get $2
i32.store8 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 local.get $0
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.sub i32.sub
i32.load offset=4 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 $4 i32)
(local $5 i32) (local $5 i32)
local.get $3 local.get $3
@ -628,8 +632,12 @@
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<DataView>|inlined.0 (result i32) block $~lib/runtime/REGISTER<DataView>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.3 (result i32)
i32.const 12 i32.const 12
call $~lib/runtime/ALLOCATE local.set $4
local.get $4
call $~lib/runtime/doAllocate
end
local.set $4 local.set $4
local.get $4 local.get $4
i32.const 5 i32.const 5
@ -662,22 +670,22 @@
i32.store offset=8 i32.store offset=8
local.get $0 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 local.get $0
i32.load 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 local.get $0
i32.load offset=4 i32.load offset=4
local.get $0 local.get $0
i32.load i32.load
i32.sub 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 local.get $0
i32.load offset=8 i32.load offset=8
) )
(func $~lib/polyfills/bswap<u32> (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/polyfills/bswap<u32> (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const -16711936 i32.const -16711936
i32.and i32.and
@ -691,7 +699,7 @@
i32.or i32.or
return 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 local.get $1
i32.const 0 i32.const 0
i32.lt_s i32.lt_s
@ -729,7 +737,7 @@
f32.reinterpret_i32 f32.reinterpret_i32
end end
) )
(func $~lib/polyfills/bswap<u64> (; 19 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) (func $~lib/polyfills/bswap<u64> (; 18 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64)
(local $1 i64) (local $1 i64)
(local $2 i64) (local $2 i64)
(local $3 i64) (local $3 i64)
@ -768,7 +776,7 @@
i64.rotr i64.rotr
return 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 local.get $1
i32.const 0 i32.const 0
i32.lt_s i32.lt_s
@ -806,7 +814,7 @@
f64.reinterpret_i64 f64.reinterpret_i64
end 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 $1
local.get $0 local.get $0
i32.load offset=8 i32.load offset=8
@ -825,7 +833,7 @@
i32.add i32.add
i32.load8_s i32.load8_s
) )
(func $~lib/polyfills/bswap<i16> (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/polyfills/bswap<i16> (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 8 i32.const 8
i32.shl i32.shl
@ -841,7 +849,7 @@
i32.or i32.or
return 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 $3 i32)
local.get $1 local.get $1
i32.const 0 i32.const 0
@ -877,7 +885,7 @@
call $~lib/polyfills/bswap<i16> call $~lib/polyfills/bswap<i16>
end end
) )
(func $~lib/polyfills/bswap<i32> (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/polyfills/bswap<i32> (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const -16711936 i32.const -16711936
i32.and i32.and
@ -891,7 +899,7 @@
i32.or i32.or
return 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 $3 i32)
local.get $1 local.get $1
i32.const 0 i32.const 0
@ -927,7 +935,7 @@
call $~lib/polyfills/bswap<i32> call $~lib/polyfills/bswap<i32>
end end
) )
(func $~lib/polyfills/bswap<i64> (; 26 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) (func $~lib/polyfills/bswap<i64> (; 25 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64)
(local $1 i64) (local $1 i64)
(local $2 i64) (local $2 i64)
(local $3 i64) (local $3 i64)
@ -966,7 +974,7 @@
i64.rotr i64.rotr
return 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 $3 i64)
local.get $1 local.get $1
i32.const 0 i32.const 0
@ -1002,7 +1010,7 @@
call $~lib/polyfills/bswap<i64> call $~lib/polyfills/bswap<i64>
end 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 $1
local.get $0 local.get $0
i32.load offset=8 i32.load offset=8
@ -1021,7 +1029,7 @@
i32.add i32.add
i32.load8_u i32.load8_u
) )
(func $~lib/polyfills/bswap<u16> (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/polyfills/bswap<u16> (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 8 i32.const 8
i32.shl i32.shl
@ -1035,7 +1043,7 @@
i32.or i32.or
return 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 $3 i32)
local.get $1 local.get $1
i32.const 0 i32.const 0
@ -1071,7 +1079,7 @@
call $~lib/polyfills/bswap<u16> call $~lib/polyfills/bswap<u16>
end 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 $3 i32)
local.get $1 local.get $1
i32.const 0 i32.const 0
@ -1107,7 +1115,7 @@
call $~lib/polyfills/bswap<u32> call $~lib/polyfills/bswap<u32>
end 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 $3 i64)
local.get $1 local.get $1
i32.const 0 i32.const 0
@ -1143,7 +1151,7 @@
call $~lib/polyfills/bswap<u64> call $~lib/polyfills/bswap<u64>
end 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 local.get $1
i32.const 0 i32.const 0
i32.lt_s i32.lt_s
@ -1183,7 +1191,7 @@
i32.store i32.store
end 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 local.get $1
i32.const 0 i32.const 0
i32.lt_s i32.lt_s
@ -1223,7 +1231,7 @@
i64.store i64.store
end 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 $1
local.get $0 local.get $0
i32.load offset=8 i32.load offset=8
@ -1243,7 +1251,7 @@
local.get $2 local.get $2
i32.store8 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 local.get $1
i32.const 0 i32.const 0
i32.lt_s i32.lt_s
@ -1277,7 +1285,7 @@
end end
i32.store16 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 local.get $1
i32.const 0 i32.const 0
i32.lt_s i32.lt_s
@ -1311,7 +1319,7 @@
end end
i32.store 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 local.get $1
i32.const 0 i32.const 0
i32.lt_s i32.lt_s
@ -1345,7 +1353,7 @@
end end
i64.store 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 $1
local.get $0 local.get $0
i32.load offset=8 i32.load offset=8
@ -1365,7 +1373,7 @@
local.get $2 local.get $2
i32.store8 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 local.get $1
i32.const 0 i32.const 0
i32.lt_s i32.lt_s
@ -1399,7 +1407,7 @@
end end
i32.store16 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 local.get $1
i32.const 0 i32.const 0
i32.lt_s i32.lt_s
@ -1433,7 +1441,7 @@
end end
i32.store 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 local.get $1
i32.const 0 i32.const 0
i32.lt_s i32.lt_s
@ -1467,7 +1475,7 @@
end end
i64.store i64.store
) )
(func $start:std/dataview (; 43 ;) (type $FUNCSIG$v) (func $start:std/dataview (; 42 ;) (type $FUNCSIG$v)
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.const 7 i32.const 7
i32.add i32.add
@ -3160,9 +3168,9 @@
unreachable unreachable
end end
) )
(func $start (; 44 ;) (type $FUNCSIG$v) (func $start (; 43 ;) (type $FUNCSIG$v)
call $start:std/dataview call $start:std/dataview
) )
(func $null (; 45 ;) (type $FUNCSIG$v) (func $null (; 44 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -90,7 +90,7 @@
if if
i32.const 0 i32.const 0
i32.const 48 i32.const 48
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -104,7 +104,7 @@
if if
i32.const 0 i32.const 0
i32.const 48 i32.const 48
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -142,11 +142,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 6 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 7 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -154,7 +150,7 @@
if if
i32.const 0 i32.const 0
i32.const 48 i32.const 48
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -169,13 +165,13 @@
if if
i32.const 0 i32.const 0
i32.const 48 i32.const 48
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -185,15 +181,19 @@
i32.store i32.store
local.get $0 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) (local $2 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Date>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Date>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 8 i32.const 8
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 2 i32.const 2
@ -210,17 +210,17 @@
i64.store i64.store
local.get $0 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 local.get $0
i64.load 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 $0
local.get $1 local.get $1
i64.store i64.store
local.get $1 local.get $1
) )
(func $start:std/date (; 12 ;) (type $FUNCSIG$v) (func $start:std/date (; 11 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -405,9 +405,9 @@
unreachable unreachable
end end
) )
(func $start (; 13 ;) (type $FUNCSIG$v) (func $start (; 12 ;) (type $FUNCSIG$v)
call $start:std/date call $start:std/date
) )
(func $null (; 14 ;) (type $FUNCSIG$v) (func $null (; 13 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -123,7 +123,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -137,7 +137,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

File diff suppressed because it is too large Load Diff

View File

@ -84,7 +84,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -98,7 +98,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -135,11 +135,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -147,7 +143,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -162,13 +158,13 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -178,7 +174,7 @@
i32.store i32.store
local.get $0 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 $2 i32)
local.get $0 local.get $0
block (result i32) block (result i32)
@ -186,8 +182,12 @@
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<AClass>|inlined.0 (result i32) block $~lib/runtime/REGISTER<AClass>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 8 i32.const 8
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 1 i32.const 1
@ -212,7 +212,7 @@
f32.store offset=4 f32.store offset=4
local.get $0 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 global.get $~lib/memory/HEAP_BASE
i32.const 7 i32.const 7
i32.add i32.add
@ -228,9 +228,9 @@
call $std/new/AClass#constructor call $std/new/AClass#constructor
global.set $std/new/aClass global.set $std/new/aClass
) )
(func $start (; 9 ;) (type $FUNCSIG$v) (func $start (; 8 ;) (type $FUNCSIG$v)
call $start:std/new call $start:std/new
) )
(func $null (; 10 ;) (type $FUNCSIG$v) (func $null (; 9 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -167,7 +167,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -181,7 +181,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -203,11 +203,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -215,7 +211,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -230,13 +226,13 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -246,14 +242,18 @@
i32.store i32.store
local.get $0 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 $3 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Tester>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Tester>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 8 i32.const 8
call $~lib/runtime/ALLOCATE local.set $3
local.get $3
call $~lib/runtime/doAllocate
end
local.set $3 local.set $3
local.get $3 local.get $3
i32.const 1 i32.const 1
@ -269,7 +269,7 @@
i32.store offset=4 i32.store offset=4
local.get $0 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -283,7 +283,7 @@
i32.add i32.add
call $std/operator-overloading/Tester#constructor 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -297,7 +297,7 @@
i32.sub i32.sub
call $std/operator-overloading/Tester#constructor 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -311,7 +311,7 @@
i32.mul i32.mul
call $std/operator-overloading/Tester#constructor 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -325,7 +325,7 @@
i32.div_s i32.div_s
call $std/operator-overloading/Tester#constructor 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -339,7 +339,7 @@
i32.rem_s i32.rem_s
call $std/operator-overloading/Tester#constructor 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 $2 f64)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -430,7 +430,7 @@
f64.reinterpret_i64 f64.reinterpret_i64
f64.mul 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 $2 i64)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1518,7 +1518,7 @@
local.get $16 local.get $16
f64.mul 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -1538,7 +1538,7 @@
i32.trunc_f64_s i32.trunc_f64_s
call $std/operator-overloading/Tester#constructor 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -1552,7 +1552,7 @@
i32.and i32.and
call $std/operator-overloading/Tester#constructor 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -1566,7 +1566,7 @@
i32.or i32.or
call $std/operator-overloading/Tester#constructor 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -1580,7 +1580,7 @@
i32.xor i32.xor
call $std/operator-overloading/Tester#constructor 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 $2 i32)
local.get $0 local.get $0
i32.load i32.load
@ -1598,7 +1598,7 @@
local.get $2 local.get $2
end 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 $2 i32)
local.get $0 local.get $0
i32.load i32.load
@ -1616,7 +1616,7 @@
local.get $2 local.get $2
end 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 $2 i32)
local.get $0 local.get $0
i32.load i32.load
@ -1634,7 +1634,7 @@
local.get $2 local.get $2
end 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 $2 i32)
local.get $0 local.get $0
i32.load i32.load
@ -1652,7 +1652,7 @@
local.get $2 local.get $2
end 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 $2 i32)
local.get $0 local.get $0
i32.load i32.load
@ -1670,7 +1670,7 @@
local.get $2 local.get $2
end 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 $2 i32)
local.get $0 local.get $0
i32.load i32.load
@ -1688,7 +1688,7 @@
local.get $2 local.get $2
end 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -1700,7 +1700,7 @@
i32.shr_s i32.shr_s
call $std/operator-overloading/Tester#constructor 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -1712,7 +1712,7 @@
i32.shr_u i32.shr_u
call $std/operator-overloading/Tester#constructor 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -1724,7 +1724,7 @@
i32.shl i32.shl
call $std/operator-overloading/Tester#constructor 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -1732,7 +1732,7 @@
i32.load offset=4 i32.load offset=4
call $std/operator-overloading/Tester#constructor 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
i32.const 0 i32.const 0
local.get $0 local.get $0
@ -1744,7 +1744,7 @@
i32.sub i32.sub
call $std/operator-overloading/Tester#constructor 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -1756,7 +1756,7 @@
i32.xor i32.xor
call $std/operator-overloading/Tester#constructor 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 $1 i32)
local.get $0 local.get $0
i32.load i32.load
@ -1770,7 +1770,7 @@
local.get $1 local.get $1
end 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
local.get $0 local.get $0
i32.load i32.load
@ -1785,7 +1785,7 @@
i32.store offset=4 i32.store offset=4
local.get $0 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
local.get $0 local.get $0
i32.load i32.load
@ -1800,7 +1800,7 @@
i32.store offset=4 i32.store offset=4
local.get $0 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -1812,7 +1812,7 @@
i32.add i32.add
call $std/operator-overloading/Tester#constructor 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 i32.const 0
local.get $0 local.get $0
i32.load i32.load
@ -1824,14 +1824,18 @@
i32.sub i32.sub
call $std/operator-overloading/Tester#constructor 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 $3 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<TesterInlineStatic>|inlined.0 (result i32) block $~lib/runtime/REGISTER<TesterInlineStatic>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.1 (result i32)
i32.const 8 i32.const 8
call $~lib/runtime/ALLOCATE local.set $3
local.get $3
call $~lib/runtime/doAllocate
end
local.set $3 local.set $3
local.get $3 local.get $3
i32.const 3 i32.const 3
@ -1847,14 +1851,18 @@
i32.store offset=4 i32.store offset=4
local.get $0 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 $3 i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<TesterInlineInstance>|inlined.0 (result i32) block $~lib/runtime/REGISTER<TesterInlineInstance>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.2 (result i32)
i32.const 8 i32.const 8
call $~lib/runtime/ALLOCATE local.set $3
local.get $3
call $~lib/runtime/doAllocate
end
local.set $3 local.set $3
local.get $3 local.get $3
i32.const 4 i32.const 4
@ -1870,7 +1878,7 @@
i32.store offset=4 i32.store offset=4
local.get $0 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 $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
@ -2931,9 +2939,9 @@
unreachable unreachable
end end
) )
(func $start (; 39 ;) (type $FUNCSIG$v) (func $start (; 38 ;) (type $FUNCSIG$v)
call $start:std/operator-overloading call $start:std/operator-overloading
) )
(func $null (; 40 ;) (type $FUNCSIG$v) (func $null (; 39 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -2616,7 +2616,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 100 i32.const 107
i32.const 8 i32.const 8
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -2653,7 +2653,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -2667,7 +2667,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -3301,7 +3301,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 100 i32.const 107
i32.const 8 i32.const 8
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -3342,7 +3342,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -3357,7 +3357,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -119,7 +119,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -133,7 +133,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -148,11 +148,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -160,7 +156,7 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -175,13 +171,13 @@
if if
i32.const 0 i32.const 0
i32.const 16 i32.const 16
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -191,7 +187,7 @@
i32.store i32.store
local.get $0 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 $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i64) (local $5 i64)
@ -447,7 +443,7 @@
end end
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 $2 i32)
(local $3 i32) (local $3 i32)
local.get $1 local.get $1
@ -461,7 +457,7 @@
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end end
block $~lib/runtime/ALLOCATE|inlined.0 (result i32) block $~lib/runtime/ALLOCATE|inlined.1 (result i32)
local.get $1 local.get $1
local.set $2 local.set $2
local.get $2 local.get $2
@ -480,7 +476,7 @@
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
end end
) )
(func $~lib/set/Set<i8>#clear (; 9 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/set/Set<i8>#clear (; 8 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 0 i32.const 0
i32.const 16 i32.const 16
@ -506,15 +502,19 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/set/Set<i8>#constructor (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<i8>#constructor (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Set<i8>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Set<i8>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 24 i32.const 24
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 1 i32.const 1
@ -545,14 +545,14 @@
call $~lib/set/Set<i8>#clear call $~lib/set/Set<i8>#clear
local.get $0 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 i32.const -2128831035
local.get $0 local.get $0
i32.xor i32.xor
i32.const 16777619 i32.const 16777619
i32.mul i32.mul
) )
(func $~lib/set/Set<i8>#find (; 12 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/set/Set<i8>#find (; 11 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $0 local.get $0
@ -607,7 +607,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<i8>#has (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<i8>#has (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -626,7 +626,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<i8>#rehash (; 14 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i8>#rehash (; 13 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -756,7 +756,7 @@
i32.load offset=20 i32.load offset=20
i32.store offset=16 i32.store offset=16
) )
(func $~lib/set/Set<i8>#add (; 15 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i8>#add (; 14 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -858,11 +858,11 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<i8>#get:size (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<i8>#get:size (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=20 i32.load offset=20
) )
(func $~lib/set/Set<i8>#delete (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<i8>#delete (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -939,7 +939,7 @@
end end
i32.const 1 i32.const 1
) )
(func $std/set/test<i8> (; 18 ;) (type $FUNCSIG$v) (func $std/set/test<i8> (; 17 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 0 i32.const 0
@ -1222,7 +1222,7 @@
unreachable unreachable
end end
) )
(func $~lib/set/Set<u8>#clear (; 19 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/set/Set<u8>#clear (; 18 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 0 i32.const 0
i32.const 16 i32.const 16
@ -1248,15 +1248,19 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/set/Set<u8>#constructor (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<u8>#constructor (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Set<u8>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Set<u8>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.2 (result i32)
i32.const 24 i32.const 24
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 4 i32.const 4
@ -1287,7 +1291,7 @@
call $~lib/set/Set<u8>#clear call $~lib/set/Set<u8>#clear
local.get $0 local.get $0
) )
(func $~lib/set/Set<u8>#find (; 21 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/set/Set<u8>#find (; 20 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $0 local.get $0
@ -1340,7 +1344,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<u8>#has (; 22 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<u8>#has (; 21 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -1357,7 +1361,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<u8>#rehash (; 23 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u8>#rehash (; 22 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1487,7 +1491,7 @@
i32.load offset=20 i32.load offset=20
i32.store offset=16 i32.store offset=16
) )
(func $~lib/set/Set<u8>#add (; 24 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u8>#add (; 23 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1587,11 +1591,11 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<u8>#get:size (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<u8>#get:size (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=20 i32.load offset=20
) )
(func $~lib/set/Set<u8>#delete (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<u8>#delete (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1666,7 +1670,7 @@
end end
i32.const 1 i32.const 1
) )
(func $std/set/test<u8> (; 27 ;) (type $FUNCSIG$v) (func $std/set/test<u8> (; 26 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 0 i32.const 0
@ -1949,7 +1953,7 @@
unreachable unreachable
end end
) )
(func $~lib/set/Set<i16>#clear (; 28 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/set/Set<i16>#clear (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 0 i32.const 0
i32.const 16 i32.const 16
@ -1975,15 +1979,19 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/set/Set<i16>#constructor (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<i16>#constructor (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Set<i16>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Set<i16>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.3 (result i32)
i32.const 24 i32.const 24
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 5 i32.const 5
@ -2014,7 +2022,7 @@
call $~lib/set/Set<i16>#clear call $~lib/set/Set<i16>#clear
local.get $0 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) (local $1 i32)
i32.const -2128831035 i32.const -2128831035
local.set $1 local.set $1
@ -2036,7 +2044,7 @@
local.set $1 local.set $1
local.get $1 local.get $1
) )
(func $~lib/set/Set<i16>#find (; 31 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/set/Set<i16>#find (; 30 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $0 local.get $0
@ -2091,7 +2099,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<i16>#has (; 32 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<i16>#has (; 31 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -2110,7 +2118,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<i16>#rehash (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i16>#rehash (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2240,7 +2248,7 @@
i32.load offset=20 i32.load offset=20
i32.store offset=16 i32.store offset=16
) )
(func $~lib/set/Set<i16>#add (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i16>#add (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2342,11 +2350,11 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<i16>#get:size (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<i16>#get:size (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=20 i32.load offset=20
) )
(func $~lib/set/Set<i16>#delete (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<i16>#delete (; 35 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2423,7 +2431,7 @@
end end
i32.const 1 i32.const 1
) )
(func $std/set/test<i16> (; 37 ;) (type $FUNCSIG$v) (func $std/set/test<i16> (; 36 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 0 i32.const 0
@ -2706,7 +2714,7 @@
unreachable unreachable
end end
) )
(func $~lib/set/Set<u16>#clear (; 38 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/set/Set<u16>#clear (; 37 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 0 i32.const 0
i32.const 16 i32.const 16
@ -2732,15 +2740,19 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/set/Set<u16>#constructor (; 39 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<u16>#constructor (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Set<u16>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Set<u16>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.4 (result i32)
i32.const 24 i32.const 24
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 6 i32.const 6
@ -2771,7 +2783,7 @@
call $~lib/set/Set<u16>#clear call $~lib/set/Set<u16>#clear
local.get $0 local.get $0
) )
(func $~lib/set/Set<u16>#find (; 40 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/set/Set<u16>#find (; 39 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $0 local.get $0
@ -2824,7 +2836,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<u16>#has (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<u16>#has (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -2841,7 +2853,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<u16>#rehash (; 42 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u16>#rehash (; 41 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2971,7 +2983,7 @@
i32.load offset=20 i32.load offset=20
i32.store offset=16 i32.store offset=16
) )
(func $~lib/set/Set<u16>#add (; 43 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u16>#add (; 42 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3071,11 +3083,11 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<u16>#get:size (; 44 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<u16>#get:size (; 43 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=20 i32.load offset=20
) )
(func $~lib/set/Set<u16>#delete (; 45 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<u16>#delete (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3150,7 +3162,7 @@
end end
i32.const 1 i32.const 1
) )
(func $std/set/test<u16> (; 46 ;) (type $FUNCSIG$v) (func $std/set/test<u16> (; 45 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 0 i32.const 0
@ -3433,7 +3445,7 @@
unreachable unreachable
end end
) )
(func $~lib/set/Set<i32>#clear (; 47 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/set/Set<i32>#clear (; 46 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 0 i32.const 0
i32.const 16 i32.const 16
@ -3459,15 +3471,19 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/set/Set<i32>#constructor (; 48 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<i32>#constructor (; 47 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Set<i32>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Set<i32>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.5 (result i32)
i32.const 24 i32.const 24
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 7 i32.const 7
@ -3498,7 +3514,7 @@
call $~lib/set/Set<i32>#clear call $~lib/set/Set<i32>#clear
local.get $0 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) (local $1 i32)
i32.const -2128831035 i32.const -2128831035
local.set $1 local.set $1
@ -3540,7 +3556,7 @@
local.set $1 local.set $1
local.get $1 local.get $1
) )
(func $~lib/set/Set<i32>#find (; 50 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/set/Set<i32>#find (; 49 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $0 local.get $0
@ -3591,7 +3607,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<i32>#has (; 51 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<i32>#has (; 50 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -3606,7 +3622,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<i32>#rehash (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i32>#rehash (; 51 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3736,7 +3752,7 @@
i32.load offset=20 i32.load offset=20
i32.store offset=16 i32.store offset=16
) )
(func $~lib/set/Set<i32>#add (; 53 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i32>#add (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3834,11 +3850,11 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<i32>#get:size (; 54 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<i32>#get:size (; 53 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=20 i32.load offset=20
) )
(func $~lib/set/Set<i32>#delete (; 55 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<i32>#delete (; 54 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3911,7 +3927,7 @@
end end
i32.const 1 i32.const 1
) )
(func $std/set/test<i32> (; 56 ;) (type $FUNCSIG$v) (func $std/set/test<i32> (; 55 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 0 i32.const 0
@ -4194,7 +4210,7 @@
unreachable unreachable
end end
) )
(func $~lib/set/Set<u32>#clear (; 57 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/set/Set<u32>#clear (; 56 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 0 i32.const 0
i32.const 16 i32.const 16
@ -4220,15 +4236,19 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/set/Set<u32>#constructor (; 58 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<u32>#constructor (; 57 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Set<u32>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Set<u32>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.6 (result i32)
i32.const 24 i32.const 24
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 8 i32.const 8
@ -4259,7 +4279,7 @@
call $~lib/set/Set<u32>#clear call $~lib/set/Set<u32>#clear
local.get $0 local.get $0
) )
(func $~lib/set/Set<u32>#find (; 59 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/set/Set<u32>#find (; 58 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $0 local.get $0
@ -4310,7 +4330,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<u32>#has (; 60 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<u32>#has (; 59 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -4325,7 +4345,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<u32>#rehash (; 61 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u32>#rehash (; 60 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -4455,7 +4475,7 @@
i32.load offset=20 i32.load offset=20
i32.store offset=16 i32.store offset=16
) )
(func $~lib/set/Set<u32>#add (; 62 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u32>#add (; 61 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -4553,11 +4573,11 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<u32>#get:size (; 63 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<u32>#get:size (; 62 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=20 i32.load offset=20
) )
(func $~lib/set/Set<u32>#delete (; 64 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<u32>#delete (; 63 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -4630,7 +4650,7 @@
end end
i32.const 1 i32.const 1
) )
(func $std/set/test<u32> (; 65 ;) (type $FUNCSIG$v) (func $std/set/test<u32> (; 64 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 0 i32.const 0
@ -4913,7 +4933,7 @@
unreachable unreachable
end end
) )
(func $~lib/set/Set<i64>#clear (; 66 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/set/Set<i64>#clear (; 65 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 0 i32.const 0
i32.const 16 i32.const 16
@ -4939,15 +4959,19 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/set/Set<i64>#constructor (; 67 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<i64>#constructor (; 66 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Set<i64>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Set<i64>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.7 (result i32)
i32.const 24 i32.const 24
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 9 i32.const 9
@ -4978,7 +5002,7 @@
call $~lib/set/Set<i64>#clear call $~lib/set/Set<i64>#clear
local.get $0 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 $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -5066,7 +5090,7 @@
local.set $3 local.set $3
local.get $3 local.get $3
) )
(func $~lib/set/Set<i64>#find (; 69 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) (func $~lib/set/Set<i64>#find (; 68 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $0 local.get $0
@ -5117,7 +5141,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<i64>#has (; 70 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (func $~lib/set/Set<i64>#has (; 69 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32)
(local $2 i64) (local $2 i64)
local.get $0 local.get $0
local.get $1 local.get $1
@ -5132,7 +5156,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<i64>#rehash (; 71 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i64>#rehash (; 70 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -5263,7 +5287,7 @@
i32.load offset=20 i32.load offset=20
i32.store offset=16 i32.store offset=16
) )
(func $~lib/set/Set<i64>#add (; 72 ;) (type $FUNCSIG$vij) (param $0 i32) (param $1 i64) (func $~lib/set/Set<i64>#add (; 71 ;) (type $FUNCSIG$vij) (param $0 i32) (param $1 i64)
(local $2 i64) (local $2 i64)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -5362,11 +5386,11 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<i64>#get:size (; 73 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<i64>#get:size (; 72 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=20 i32.load offset=20
) )
(func $~lib/set/Set<i64>#delete (; 74 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (func $~lib/set/Set<i64>#delete (; 73 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32)
(local $2 i64) (local $2 i64)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -5440,7 +5464,7 @@
end end
i32.const 1 i32.const 1
) )
(func $std/set/test<i64> (; 75 ;) (type $FUNCSIG$v) (func $std/set/test<i64> (; 74 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i64) (local $1 i64)
i32.const 0 i32.const 0
@ -5723,7 +5747,7 @@
unreachable unreachable
end end
) )
(func $~lib/set/Set<u64>#clear (; 76 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/set/Set<u64>#clear (; 75 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 0 i32.const 0
i32.const 16 i32.const 16
@ -5749,15 +5773,19 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/set/Set<u64>#constructor (; 77 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<u64>#constructor (; 76 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Set<u64>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Set<u64>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.8 (result i32)
i32.const 24 i32.const 24
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 10 i32.const 10
@ -5788,7 +5816,7 @@
call $~lib/set/Set<u64>#clear call $~lib/set/Set<u64>#clear
local.get $0 local.get $0
) )
(func $~lib/set/Set<u64>#find (; 78 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) (func $~lib/set/Set<u64>#find (; 77 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $0 local.get $0
@ -5839,7 +5867,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<u64>#has (; 79 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (func $~lib/set/Set<u64>#has (; 78 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32)
(local $2 i64) (local $2 i64)
local.get $0 local.get $0
local.get $1 local.get $1
@ -5854,7 +5882,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<u64>#rehash (; 80 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u64>#rehash (; 79 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -5985,7 +6013,7 @@
i32.load offset=20 i32.load offset=20
i32.store offset=16 i32.store offset=16
) )
(func $~lib/set/Set<u64>#add (; 81 ;) (type $FUNCSIG$vij) (param $0 i32) (param $1 i64) (func $~lib/set/Set<u64>#add (; 80 ;) (type $FUNCSIG$vij) (param $0 i32) (param $1 i64)
(local $2 i64) (local $2 i64)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -6084,11 +6112,11 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<u64>#get:size (; 82 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<u64>#get:size (; 81 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=20 i32.load offset=20
) )
(func $~lib/set/Set<u64>#delete (; 83 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (func $~lib/set/Set<u64>#delete (; 82 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32)
(local $2 i64) (local $2 i64)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -6162,7 +6190,7 @@
end end
i32.const 1 i32.const 1
) )
(func $std/set/test<u64> (; 84 ;) (type $FUNCSIG$v) (func $std/set/test<u64> (; 83 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i64) (local $1 i64)
i32.const 0 i32.const 0
@ -6445,7 +6473,7 @@
unreachable unreachable
end end
) )
(func $~lib/set/Set<f32>#clear (; 85 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/set/Set<f32>#clear (; 84 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 0 i32.const 0
i32.const 16 i32.const 16
@ -6471,15 +6499,19 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/set/Set<f32>#constructor (; 86 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<f32>#constructor (; 85 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Set<f32>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Set<f32>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.9 (result i32)
i32.const 24 i32.const 24
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 11 i32.const 11
@ -6510,7 +6542,7 @@
call $~lib/set/Set<f32>#clear call $~lib/set/Set<f32>#clear
local.get $0 local.get $0
) )
(func $~lib/set/Set<f32>#find (; 87 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32) (func $~lib/set/Set<f32>#find (; 86 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $0 local.get $0
@ -6561,7 +6593,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<f32>#has (; 88 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) (func $~lib/set/Set<f32>#has (; 87 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32)
(local $2 f32) (local $2 f32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -6577,7 +6609,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<f32>#rehash (; 89 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<f32>#rehash (; 88 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -6709,7 +6741,7 @@
i32.load offset=20 i32.load offset=20
i32.store offset=16 i32.store offset=16
) )
(func $~lib/set/Set<f32>#add (; 90 ;) (type $FUNCSIG$vif) (param $0 i32) (param $1 f32) (func $~lib/set/Set<f32>#add (; 89 ;) (type $FUNCSIG$vif) (param $0 i32) (param $1 f32)
(local $2 f32) (local $2 f32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -6809,11 +6841,11 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<f32>#get:size (; 91 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<f32>#get:size (; 90 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=20 i32.load offset=20
) )
(func $~lib/set/Set<f32>#delete (; 92 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) (func $~lib/set/Set<f32>#delete (; 91 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32)
(local $2 f32) (local $2 f32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -6888,7 +6920,7 @@
end end
i32.const 1 i32.const 1
) )
(func $std/set/test<f32> (; 93 ;) (type $FUNCSIG$v) (func $std/set/test<f32> (; 92 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 f32) (local $1 f32)
i32.const 0 i32.const 0
@ -7171,7 +7203,7 @@
unreachable unreachable
end end
) )
(func $~lib/set/Set<f64>#clear (; 94 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/set/Set<f64>#clear (; 93 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 0 i32.const 0
i32.const 16 i32.const 16
@ -7197,15 +7229,19 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/set/Set<f64>#constructor (; 95 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<f64>#constructor (; 94 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Set<f64>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Set<f64>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.10 (result i32)
i32.const 24 i32.const 24
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 12 i32.const 12
@ -7236,7 +7272,7 @@
call $~lib/set/Set<f64>#clear call $~lib/set/Set<f64>#clear
local.get $0 local.get $0
) )
(func $~lib/set/Set<f64>#find (; 96 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32) (func $~lib/set/Set<f64>#find (; 95 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $0 local.get $0
@ -7287,7 +7323,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<f64>#has (; 97 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) (func $~lib/set/Set<f64>#has (; 96 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32)
(local $2 f64) (local $2 f64)
local.get $0 local.get $0
local.get $1 local.get $1
@ -7303,7 +7339,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<f64>#rehash (; 98 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<f64>#rehash (; 97 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -7435,7 +7471,7 @@
i32.load offset=20 i32.load offset=20
i32.store offset=16 i32.store offset=16
) )
(func $~lib/set/Set<f64>#add (; 99 ;) (type $FUNCSIG$vid) (param $0 i32) (param $1 f64) (func $~lib/set/Set<f64>#add (; 98 ;) (type $FUNCSIG$vid) (param $0 i32) (param $1 f64)
(local $2 f64) (local $2 f64)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -7535,11 +7571,11 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<f64>#get:size (; 100 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/set/Set<f64>#get:size (; 99 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=20 i32.load offset=20
) )
(func $~lib/set/Set<f64>#delete (; 101 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) (func $~lib/set/Set<f64>#delete (; 100 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32)
(local $2 f64) (local $2 f64)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -7614,7 +7650,7 @@
end end
i32.const 1 i32.const 1
) )
(func $std/set/test<f64> (; 102 ;) (type $FUNCSIG$v) (func $std/set/test<f64> (; 101 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 f64) (local $1 f64)
i32.const 0 i32.const 0
@ -7897,7 +7933,7 @@
unreachable unreachable
end end
) )
(func $start:std/set (; 103 ;) (type $FUNCSIG$v) (func $start:std/set (; 102 ;) (type $FUNCSIG$v)
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.const 7 i32.const 7
i32.add i32.add
@ -7919,9 +7955,9 @@
call $std/set/test<f32> call $std/set/test<f32>
call $std/set/test<f64> call $std/set/test<f64>
) )
(func $start (; 104 ;) (type $FUNCSIG$v) (func $start (; 103 ;) (type $FUNCSIG$v)
call $start:std/set call $start:std/set
) )
(func $null (; 105 ;) (type $FUNCSIG$v) (func $null (; 104 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -1834,7 +1834,7 @@
if if
i32.const 0 i32.const 0
i32.const 280 i32.const 280
i32.const 100 i32.const 107
i32.const 8 i32.const 8
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -1514,7 +1514,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -1528,7 +1528,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -1926,7 +1926,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -1941,7 +1941,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -283,7 +283,7 @@
if if
i32.const 0 i32.const 0
i32.const 96 i32.const 96
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -297,7 +297,7 @@
if if
i32.const 0 i32.const 0
i32.const 96 i32.const 96
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -3052,7 +3052,7 @@
if if
i32.const 0 i32.const 0
i32.const 96 i32.const 96
i32.const 227 i32.const 234
i32.const 57 i32.const 57
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -3177,7 +3177,7 @@
if if
i32.const 0 i32.const 0
i32.const 96 i32.const 96
i32.const 100 i32.const 107
i32.const 8 i32.const 8
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -353,7 +353,7 @@
if if
i32.const 0 i32.const 0
i32.const 96 i32.const 96
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -368,7 +368,7 @@
if if
i32.const 0 i32.const 0
i32.const 96 i32.const 96
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -3766,11 +3766,7 @@
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
end end
) )
(func $~lib/runtime/ALLOCATE (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/ArrayBufferView#constructor (; 35 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 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)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -3781,7 +3777,7 @@
if if
i32.const 0 i32.const 0
i32.const 96 i32.const 96
i32.const 227 i32.const 234
i32.const 57 i32.const 57
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -3798,8 +3794,12 @@
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<ArrayBufferView>|inlined.0 (result i32) block $~lib/runtime/REGISTER<ArrayBufferView>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.8 (result i32)
i32.const 12 i32.const 12
call $~lib/runtime/ALLOCATE local.set $4
local.get $4
call $~lib/runtime/doAllocate
end
local.set $4 local.set $4
local.get $4 local.get $4
i32.const 3 i32.const 3
@ -3828,14 +3828,18 @@
i32.store offset=8 i32.store offset=8
local.get $0 local.get $0
) )
(func $~lib/array/Array<String>#constructor (; 37 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<String>#constructor (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
if (result i32) if (result i32)
local.get $0 local.get $0
else else
block $~lib/runtime/ALLOCATE|inlined.9 (result i32)
i32.const 16 i32.const 16
call $~lib/runtime/ALLOCATE local.set $2
local.get $2
call $~lib/runtime/doAllocate
end
local.set $2 local.set $2
local.get $2 local.get $2
i32.const 4 i32.const 4
@ -3853,12 +3857,12 @@
i32.store offset=12 i32.store offset=12
local.get $0 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 $1 i32)
local.get $0 local.get $0
local.set $1 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 $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3923,7 +3927,7 @@
if if
i32.const 0 i32.const 0
i32.const 96 i32.const 96
i32.const 100 i32.const 107
i32.const 8 i32.const 8
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -3955,7 +3959,7 @@
i32.store offset=4 i32.store offset=4
local.get $0 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 $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -4013,7 +4017,7 @@
i32.store offset=8 i32.store offset=8
end end
) )
(func $~lib/array/Array<String>#push (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<String>#push (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
i32.load offset=12 i32.load offset=12
@ -4039,7 +4043,7 @@
i32.store i32.store
local.get $2 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 $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -4141,7 +4145,7 @@
i32.eqz i32.eqz
br_if $break|0 br_if $break|0
block block
block $~lib/runtime/ALLOCATE|inlined.8 (result i32) block $~lib/runtime/ALLOCATE|inlined.10 (result i32)
i32.const 2 i32.const 2
local.set $8 local.set $8
local.get $8 local.get $8
@ -4226,7 +4230,7 @@
i32.const 0 i32.const 0
i32.gt_s i32.gt_s
if if
block $~lib/runtime/ALLOCATE|inlined.9 (result i32) block $~lib/runtime/ALLOCATE|inlined.11 (result i32)
local.get $3 local.get $3
i32.const 1 i32.const 1
i32.shl i32.shl
@ -4302,7 +4306,7 @@
i32.const 0 i32.const 0
i32.gt_s i32.gt_s
if if
block $~lib/runtime/ALLOCATE|inlined.10 (result i32) block $~lib/runtime/ALLOCATE|inlined.12 (result i32)
local.get $14 local.get $14
i32.const 1 i32.const 1
i32.shl i32.shl
@ -4339,11 +4343,11 @@
end end
local.get $10 local.get $10
) )
(func $~lib/array/Array<String>#get:length (; 43 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/array/Array<String>#get:length (; 42 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=12 i32.load offset=12
) )
(func $~lib/array/Array<String>#__get (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<String>#__get (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $1 local.get $1
local.get $0 local.get $0
i32.load offset=8 i32.load offset=8
@ -4366,7 +4370,7 @@
i32.add i32.add
i32.load 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 $1 i32)
local.get $0 local.get $0
i32.const 100000 i32.const 100000
@ -4435,7 +4439,7 @@
unreachable unreachable
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 $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -4578,7 +4582,7 @@
i32.store16 i32.store16
end 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 $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -4607,7 +4611,7 @@
local.get $1 local.get $1
i32.add i32.add
local.set $2 local.set $2
block $~lib/runtime/ALLOCATE|inlined.11 (result i32) block $~lib/runtime/ALLOCATE|inlined.13 (result i32)
local.get $2 local.get $2
i32.const 1 i32.const 1
i32.shl i32.shl
@ -4642,7 +4646,7 @@
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
end 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 $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -4657,7 +4661,7 @@
local.get $0 local.get $0
call $~lib/util/number/decimalCount32 call $~lib/util/number/decimalCount32
local.set $1 local.set $1
block $~lib/runtime/ALLOCATE|inlined.12 (result i32) block $~lib/runtime/ALLOCATE|inlined.14 (result i32)
local.get $1 local.get $1
i32.const 1 i32.const 1
i32.shl i32.shl
@ -4686,7 +4690,7 @@
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
end 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 $1 i32)
local.get $0 local.get $0
i64.const 1000000000000000 i64.const 1000000000000000
@ -4755,7 +4759,7 @@
unreachable unreachable
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 $3 i32)
(local $4 i64) (local $4 i64)
(local $5 i32) (local $5 i32)
@ -4883,7 +4887,7 @@
local.get $2 local.get $2
call $~lib/util/number/utoa32_lut 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 $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -4908,7 +4912,7 @@
local.get $2 local.get $2
call $~lib/util/number/decimalCount32 call $~lib/util/number/decimalCount32
local.set $3 local.set $3
block $~lib/runtime/ALLOCATE|inlined.13 (result i32) block $~lib/runtime/ALLOCATE|inlined.15 (result i32)
local.get $3 local.get $3
i32.const 1 i32.const 1
i32.shl i32.shl
@ -4933,7 +4937,7 @@
local.get $0 local.get $0
call $~lib/util/number/decimalCount64 call $~lib/util/number/decimalCount64
local.set $3 local.set $3
block $~lib/runtime/ALLOCATE|inlined.14 (result i32) block $~lib/runtime/ALLOCATE|inlined.16 (result i32)
local.get $3 local.get $3
i32.const 1 i32.const 1
i32.shl i32.shl
@ -4963,7 +4967,7 @@
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
end 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 $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -5002,7 +5006,7 @@
local.get $1 local.get $1
i32.add i32.add
local.set $4 local.set $4
block $~lib/runtime/ALLOCATE|inlined.15 (result i32) block $~lib/runtime/ALLOCATE|inlined.17 (result i32)
local.get $4 local.get $4
i32.const 1 i32.const 1
i32.shl i32.shl
@ -5029,7 +5033,7 @@
local.get $1 local.get $1
i32.add i32.add
local.set $4 local.set $4
block $~lib/runtime/ALLOCATE|inlined.16 (result i32) block $~lib/runtime/ALLOCATE|inlined.18 (result i32)
local.get $4 local.get $4
i32.const 1 i32.const 1
i32.shl i32.shl
@ -5065,19 +5069,19 @@
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
end end
) )
(func $~lib/builtins/isFinite<f64> (; 53 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) (func $~lib/builtins/isFinite<f64> (; 52 ;) (type $FUNCSIG$id) (param $0 f64) (result i32)
local.get $0 local.get $0
local.get $0 local.get $0
f64.sub f64.sub
f64.const 0 f64.const 0
f64.eq f64.eq
) )
(func $~lib/builtins/isNaN<f64> (; 54 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) (func $~lib/builtins/isNaN<f64> (; 53 ;) (type $FUNCSIG$id) (param $0 f64) (result i32)
local.get $0 local.get $0
local.get $0 local.get $0
f64.ne 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 $7 i32)
(local $8 i64) (local $8 i64)
(local $9 i64) (local $9 i64)
@ -5648,7 +5652,7 @@
end end
local.get $15 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 $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -5981,7 +5985,7 @@
unreachable unreachable
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 $2 i32)
(local $3 f64) (local $3 f64)
(local $4 i32) (local $4 i32)
@ -6427,7 +6431,7 @@
local.get $2 local.get $2
i32.add 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 $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -6532,7 +6536,7 @@
local.get $0 local.get $0
return return
end end
block $~lib/runtime/ALLOCATE|inlined.18 (result i32) block $~lib/runtime/ALLOCATE|inlined.20 (result i32)
local.get $3 local.get $3
local.set $4 local.set $4
local.get $4 local.get $4
@ -6553,7 +6557,7 @@
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -6561,7 +6565,7 @@
i32.sub i32.sub
call $~lib/memory/memory.free 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 $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -6591,7 +6595,7 @@
select select
return return
end end
block $~lib/runtime/ALLOCATE|inlined.17 (result i32) block $~lib/runtime/ALLOCATE|inlined.19 (result i32)
i32.const 28 i32.const 28
i32.const 1 i32.const 1
i32.shl i32.shl
@ -6617,7 +6621,7 @@
end end
local.get $4 local.get $4
) )
(func $start:std/string (; 61 ;) (type $FUNCSIG$v) (func $start:std/string (; 60 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -10009,12 +10013,12 @@
unreachable unreachable
end 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 global.get $std/string/str
) )
(func $start (; 63 ;) (type $FUNCSIG$v) (func $start (; 62 ;) (type $FUNCSIG$v)
call $start:std/string call $start:std/string
) )
(func $null (; 64 ;) (type $FUNCSIG$v) (func $null (; 63 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -143,7 +143,7 @@
if if
i32.const 0 i32.const 0
i32.const 72 i32.const 72
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -157,7 +157,7 @@
if if
i32.const 0 i32.const 0
i32.const 72 i32.const 72
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

View File

@ -193,11 +193,7 @@
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.add i32.add
) )
(func $~lib/runtime/ALLOCATE (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/runtime/assertUnregistered (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0
call $~lib/runtime/doAllocate
)
(func $~lib/runtime/assertUnregistered (; 6 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/memory/HEAP_BASE global.get $~lib/memory/HEAP_BASE
i32.gt_u i32.gt_u
@ -205,7 +201,7 @@
if if
i32.const 0 i32.const 0
i32.const 72 i32.const 72
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -220,13 +216,13 @@
if if
i32.const 0 i32.const 0
i32.const 72 i32.const 72
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end 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 local.get $0
call $~lib/runtime/assertUnregistered call $~lib/runtime/assertUnregistered
local.get $0 local.get $0
@ -236,7 +232,7 @@
i32.store i32.store
local.get $0 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 $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i64) (local $5 i64)
@ -492,7 +488,7 @@
end end
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 $2 i32)
(local $3 i32) (local $3 i32)
local.get $1 local.get $1
@ -506,7 +502,7 @@
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end end
block $~lib/runtime/ALLOCATE|inlined.0 (result i32) block $~lib/runtime/ALLOCATE|inlined.1 (result i32)
local.get $1 local.get $1
local.set $2 local.set $2
local.get $2 local.get $2
@ -525,7 +521,7 @@
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
end end
) )
(func $~lib/map/Map<String,usize>#clear (; 10 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/map/Map<String,usize>#clear (; 9 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 0 i32.const 0
i32.const 16 i32.const 16
@ -551,15 +547,19 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/map/Map<String,usize>#constructor (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/map/Map<String,usize>#constructor (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Map<String,usize>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Map<String,usize>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.0 (result i32)
i32.const 24 i32.const 24
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 2 i32.const 2
@ -590,7 +590,7 @@
call $~lib/map/Map<String,usize>#clear call $~lib/map/Map<String,usize>#clear
local.get $0 local.get $0
) )
(func $~lib/map/Map<usize,String>#clear (; 12 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/map/Map<usize,String>#clear (; 11 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 0 i32.const 0
i32.const 16 i32.const 16
@ -616,15 +616,19 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/map/Map<usize,String>#constructor (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/map/Map<usize,String>#constructor (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
block (result i32) block (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
block $~lib/runtime/REGISTER<Map<usize,String>>|inlined.0 (result i32) block $~lib/runtime/REGISTER<Map<usize,String>>|inlined.0 (result i32)
block $~lib/runtime/ALLOCATE|inlined.2 (result i32)
i32.const 24 i32.const 24
call $~lib/runtime/ALLOCATE local.set $1
local.get $1
call $~lib/runtime/doAllocate
end
local.set $1 local.set $1
local.get $1 local.get $1
i32.const 4 i32.const 4
@ -655,7 +659,7 @@
call $~lib/map/Map<usize,String>#clear call $~lib/map/Map<usize,String>#clear
local.get $0 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 local.get $0
global.get $~lib/runtime/HEADER_SIZE global.get $~lib/runtime/HEADER_SIZE
i32.sub i32.sub
@ -663,7 +667,7 @@
i32.const 1 i32.const 1
i32.shr_u 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 $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -710,7 +714,7 @@
end end
local.get $1 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 $5 i32)
(local $6 i32) (local $6 i32)
(local $7 i32) (local $7 i32)
@ -763,7 +767,7 @@
end end
local.get $5 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 $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -807,7 +811,7 @@
call $~lib/util/string/compareImpl call $~lib/util/string/compareImpl
i32.eqz i32.eqz
) )
(func $~lib/map/Map<String,usize>#find (; 18 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/map/Map<String,usize>#find (; 17 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $0 local.get $0
@ -858,7 +862,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/map/Map<String,usize>#has (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/map/Map<String,usize>#has (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -873,7 +877,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/map/Map<String,usize>#get (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/map/Map<String,usize>#get (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -895,7 +899,7 @@
unreachable unreachable
end end
) )
(func $~lib/map/Map<String,usize>#rehash (; 21 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/map/Map<String,usize>#rehash (; 20 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1029,7 +1033,7 @@
i32.load offset=20 i32.load offset=20
i32.store offset=16 i32.store offset=16
) )
(func $~lib/map/Map<String,usize>#set (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/map/Map<String,usize>#set (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1133,7 +1137,7 @@
i32.store i32.store
end 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) (local $1 i32)
i32.const -2128831035 i32.const -2128831035
local.set $1 local.set $1
@ -1175,7 +1179,7 @@
local.set $1 local.set $1
local.get $1 local.get $1
) )
(func $~lib/map/Map<usize,String>#find (; 24 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/map/Map<usize,String>#find (; 23 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $0 local.get $0
@ -1226,7 +1230,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/map/Map<usize,String>#rehash (; 25 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/map/Map<usize,String>#rehash (; 24 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1360,7 +1364,7 @@
i32.load offset=20 i32.load offset=20
i32.store offset=16 i32.store offset=16
) )
(func $~lib/map/Map<usize,String>#set (; 26 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/map/Map<usize,String>#set (; 25 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1464,7 +1468,7 @@
i32.store i32.store
end 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 $1 i32)
(local $2 i32) (local $2 i32)
global.get $~lib/symbol/stringToId global.get $~lib/symbol/stringToId
@ -1511,7 +1515,7 @@
call $~lib/map/Map<usize,String>#set call $~lib/map/Map<usize,String>#set
local.get $2 local.get $2
) )
(func $~lib/map/Map<usize,String>#has (; 28 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/map/Map<usize,String>#has (; 27 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -1526,7 +1530,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/map/Map<usize,String>#get (; 29 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/map/Map<usize,String>#get (; 28 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -1548,7 +1552,7 @@
unreachable unreachable
end 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) (local $1 i32)
global.get $~lib/symbol/idToString global.get $~lib/symbol/idToString
i32.const 0 i32.const 0
@ -1569,7 +1573,7 @@
i32.const 0 i32.const 0
end 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 $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2770,7 +2774,7 @@
i32.store8 i32.store8
end 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) (local $3 i32)
block $~lib/util/memory/memmove|inlined.0 block $~lib/util/memory/memmove|inlined.0
local.get $0 local.get $0
@ -2999,7 +3003,7 @@
end end
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 $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3033,7 +3037,7 @@
i32.const 160 i32.const 160
return return
end end
block $~lib/runtime/ALLOCATE|inlined.1 (result i32) block $~lib/runtime/ALLOCATE|inlined.3 (result i32)
local.get $4 local.get $4
local.set $5 local.set $5
local.get $5 local.get $5
@ -3058,7 +3062,7 @@
call $~lib/runtime/doRegister call $~lib/runtime/doRegister
end 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 local.get $0
i32.const 512 i32.const 512
local.get $0 local.get $0
@ -3068,7 +3072,7 @@
local.get $1 local.get $1
call $~lib/string/String#concat 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 $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -3254,7 +3258,7 @@
i32.const 528 i32.const 528
call $~lib/string/String.__concat call $~lib/string/String.__concat
) )
(func $start:std/symbol (; 36 ;) (type $FUNCSIG$v) (func $start:std/symbol (; 35 ;) (type $FUNCSIG$v)
i32.const 16 i32.const 16
call $~lib/symbol/Symbol call $~lib/symbol/Symbol
global.set $std/symbol/sym1 global.set $std/symbol/sym1
@ -3423,9 +3427,9 @@
global.get $~lib/symbol/_Symbol.isConcatSpreadable global.get $~lib/symbol/_Symbol.isConcatSpreadable
drop drop
) )
(func $start (; 37 ;) (type $FUNCSIG$v) (func $start (; 36 ;) (type $FUNCSIG$v)
call $start:std/symbol call $start:std/symbol
) )
(func $null (; 38 ;) (type $FUNCSIG$v) (func $null (; 37 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -403,7 +403,7 @@
if if
i32.const 0 i32.const 0
i32.const 64 i32.const 64
i32.const 192 i32.const 199
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -417,7 +417,7 @@
if if
i32.const 0 i32.const 0
i32.const 64 i32.const 64
i32.const 193 i32.const 200
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -465,7 +465,7 @@
if if
i32.const 0 i32.const 0
i32.const 64 i32.const 64
i32.const 227 i32.const 234
i32.const 57 i32.const 57
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable

File diff suppressed because it is too large Load Diff