From 102b1023f46e706cb074cd9ad9b337263cad611a Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 23 Sep 2019 19:41:00 +0300 Subject: [PATCH 01/12] init refactoring --- std/assembly/array.ts | 18 +- std/assembly/arraybuffer.ts | 31 +- std/assembly/typedarray.ts | 134 +- tests/compiler/assert-nonnull.optimized.wat | 8 +- tests/compiler/assert-nonnull.untouched.wat | 10 +- tests/compiler/builtins.optimized.wat | 4 +- tests/compiler/builtins.untouched.wat | 4 +- tests/compiler/infer-generic.untouched.wat | 172 - tests/compiler/number.untouched.wat | 4186 -- tests/compiler/rc/global-init.optimized.wat | 2 +- tests/compiler/rc/global-init.untouched.wat | 2 +- tests/compiler/rc/local-init.optimized.wat | 2 +- tests/compiler/rc/local-init.untouched.wat | 2 +- .../rc/logical-and-mismatch.optimized.wat | 2 +- .../rc/logical-and-mismatch.untouched.wat | 2 +- .../rc/logical-or-mismatch.optimized.wat | 2 +- .../rc/logical-or-mismatch.untouched.wat | 2 +- tests/compiler/rc/rereturn.optimized.wat | 2 +- tests/compiler/rc/rereturn.untouched.wat | 2 +- .../rc/ternary-mismatch.optimized.wat | 2 +- .../rc/ternary-mismatch.untouched.wat | 2 +- tests/compiler/resolve-access.untouched.wat | 2084 - tests/compiler/resolve-binary.untouched.wat | 5764 -- .../resolve-elementaccess.untouched.wat | 3787 -- .../resolve-function-expression.untouched.wat | 641 - tests/compiler/resolve-ternary.untouched.wat | 5465 -- tests/compiler/resolve-unary.untouched.wat | 1220 - .../retain-release-sanity.untouched.wat | 4620 -- tests/compiler/runtime-full.optimized.wat | 2 +- tests/compiler/runtime-full.untouched.wat | 2 +- tests/compiler/std/array-access.optimized.wat | 10 +- tests/compiler/std/array-access.untouched.wat | 22 +- .../compiler/std/array-literal.untouched.wat | 4101 -- tests/compiler/std/array.untouched.wat | 23605 ------- tests/compiler/std/arraybuffer.untouched.wat | 4514 -- tests/compiler/std/dataview.optimized.wat | 127 +- tests/compiler/std/dataview.untouched.wat | 374 +- tests/compiler/std/libm.untouched.wat | 12546 ---- tests/compiler/std/map.optimized.wat | 4 +- tests/compiler/std/map.untouched.wat | 4 +- tests/compiler/std/math.untouched.wat | 54516 ---------------- tests/compiler/std/set.optimized.wat | 4 +- tests/compiler/std/set.untouched.wat | 4 +- tests/compiler/std/static-array.untouched.wat | 2389 - .../std/string-encoding.optimized.wat | 2 +- .../std/string-encoding.untouched.wat | 2 +- tests/compiler/std/string.untouched.wat | 18441 ------ tests/compiler/std/symbol.optimized.wat | 2 +- tests/compiler/std/symbol.untouched.wat | 2 +- tests/compiler/std/typedarray.untouched.wat | 43054 ------------ 50 files changed, 366 insertions(+), 191533 deletions(-) diff --git a/std/assembly/array.ts b/std/assembly/array.ts index 6ff7bc99a7..285f8ea252 100644 --- a/std/assembly/array.ts +++ b/std/assembly/array.ts @@ -2,25 +2,25 @@ import { BLOCK_MAXSIZE } from "./rt/common"; import { COMPARATOR, SORT } from "./util/sort"; -import { ArrayBuffer, ArrayBufferView } from "./arraybuffer"; +import { ArrayBufferView } from "./arraybuffer"; import { joinBooleanArray, joinIntegerArray, joinFloatArray, joinStringArray, joinArrays, joinObjectArray } from "./util/string"; import { idof, isArray as builtin_isArray } from "./builtins"; import { E_INDEXOUTOFRANGE, E_INVALIDLENGTH, E_EMPTYARRAY, E_HOLEYARRAY } from "./util/error"; /** Ensures that the given array has _at least_ the specified backing size. */ function ensureSize(array: usize, minSize: usize, alignLog2: u32): void { - var oldCapacity = changetype(array).dataLength; + var oldCapacity = changetype(array).byteLength; if (minSize > oldCapacity >>> alignLog2) { if (minSize > BLOCK_MAXSIZE >>> alignLog2) throw new RangeError(E_INVALIDLENGTH); - let oldData = changetype(changetype(array).data); + let oldData = changetype(changetype(array).buffer); let newCapacity = minSize << alignLog2; let newData = __realloc(oldData, newCapacity); memory.fill(newData + oldCapacity, 0, newCapacity - oldCapacity); if (newData !== oldData) { // oldData has been free'd - store(changetype(array), __retain(newData), offsetof("data")); - changetype(array).dataStart = newData; + store(array, __retain(newData), offsetof("buffer")); + store(array, newData, offsetof("dataStart")); } - changetype(array).dataLength = newCapacity; + store(array, newCapacity, offsetof("byteLength")); } } @@ -53,10 +53,6 @@ export class Array extends ArrayBufferView { this.length_ = length; } - @unsafe get buffer(): ArrayBuffer { - return this.data; - } - get length(): i32 { return this.length_; } @@ -492,6 +488,6 @@ export class Array extends ArrayBufferView { cur += sizeof(); } } - // automatically visits ArrayBufferView (.data) next + // automatically visits ArrayBufferView (.buffer) next } } diff --git a/std/assembly/arraybuffer.ts b/std/assembly/arraybuffer.ts index ea44f6c6b9..cc74a8a57c 100644 --- a/std/assembly/arraybuffer.ts +++ b/std/assembly/arraybuffer.ts @@ -5,32 +5,27 @@ import { idof } from "./builtins"; import { E_INVALIDLENGTH } from "./util/error"; export abstract class ArrayBufferView { - - @unsafe data: ArrayBuffer; - @unsafe dataStart: usize; - @unsafe dataLength: u32; - - protected constructor(length: i32, alignLog2: i32) { - if (length > BLOCK_MAXSIZE >>> alignLog2) throw new RangeError(E_INVALIDLENGTH); - var buffer = __alloc(length = length << alignLog2, idof()); - memory.fill(buffer, 0, length); - this.data = changetype(buffer); // retains - this.dataStart = buffer; - this.dataLength = length; - } + readonly dataStart: usize; + readonly buffer: ArrayBuffer; + readonly byteLength: i32; get byteOffset(): i32 { - return (this.dataStart - changetype(this.data)); - } - - get byteLength(): i32 { - return this.dataLength; + return (this.dataStart - changetype(this.buffer)); } get length(): i32 { ERROR("missing implementation: subclasses must implement ArrayBufferView#length"); return unreachable(); } + + protected constructor(length: i32, alignLog2: i32) { + if (length > BLOCK_MAXSIZE >>> alignLog2) throw new RangeError(E_INVALIDLENGTH); + var buffer = __alloc(length = length << alignLog2, idof()); + memory.fill(buffer, 0, length); + this.buffer = changetype(buffer); // retains + this.dataStart = buffer; + this.byteLength = length; + } } @sealed export class ArrayBuffer { diff --git a/std/assembly/typedarray.ts b/std/assembly/typedarray.ts index 6330045755..e53dba4abb 100644 --- a/std/assembly/typedarray.ts +++ b/std/assembly/typedarray.ts @@ -15,17 +15,13 @@ export class Int8Array extends ArrayBufferView { super(length, alignof()); } - get buffer(): ArrayBuffer { - return this.data; - } - get length(): i32 { return this.byteLength; } @operator("[]") private __get(index: i32): i8 { - if (index >= this.dataLength) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + index); } @@ -36,7 +32,7 @@ export class Int8Array extends ArrayBufferView { @operator("[]=") private __set(index: i32, value: native): void { - if (index >= this.dataLength) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + index, value); } @@ -143,17 +139,13 @@ export class Uint8Array extends ArrayBufferView { super(length, alignof()); } - get buffer(): ArrayBuffer { - return this.data; - } - get length(): i32 { return this.byteLength; } @operator("[]") private __get(index: i32): u8 { - if (index >= this.dataLength) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + index); } @@ -164,7 +156,7 @@ export class Uint8Array extends ArrayBufferView { @operator("[]=") private __set(index: i32, value: native): void { - if (index >= this.dataLength) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + index, value); } @@ -271,17 +263,13 @@ export class Uint8ClampedArray extends ArrayBufferView { super(length, alignof()); } - get buffer(): ArrayBuffer { - return this.data; - } - get length(): i32 { return this.byteLength; } @operator("[]") private __get(index: i32): u8 { - if (index >= this.dataLength) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + index); } @@ -292,7 +280,7 @@ export class Uint8ClampedArray extends ArrayBufferView { @operator("[]=") private __set(index: i32, value: native): void { - if (index >= this.dataLength) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + index, ~(value >> 31) & (((255 - value) >> 31) | value)); } @@ -399,17 +387,13 @@ export class Int16Array extends ArrayBufferView { super(length, alignof()); } - get buffer(): ArrayBuffer { - return this.data; - } - get length(): i32 { return this.byteLength >>> alignof(); } @operator("[]") private __get(index: i32): i16 { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + (index << alignof())); } @@ -420,7 +404,7 @@ export class Int16Array extends ArrayBufferView { @operator("[]=") private __set(index: i32, value: native): void { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + (index << alignof()), value); } @@ -527,17 +511,13 @@ export class Uint16Array extends ArrayBufferView { super(length, alignof()); } - get buffer(): ArrayBuffer { - return this.data; - } - get length(): i32 { return this.byteLength >>> alignof(); } @operator("[]") private __get(index: i32): u16 { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + (index << alignof())); } @@ -548,7 +528,7 @@ export class Uint16Array extends ArrayBufferView { @operator("[]=") private __set(index: i32, value: native): void { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + (index << alignof()), value); } @@ -655,17 +635,13 @@ export class Int32Array extends ArrayBufferView { super(length, alignof()); } - get buffer(): ArrayBuffer { - return this.data; - } - get length(): i32 { return this.byteLength >>> alignof(); } @operator("[]") private __get(index: i32): i32 { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + (index << alignof())); } @@ -676,7 +652,7 @@ export class Int32Array extends ArrayBufferView { @operator("[]=") private __set(index: i32, value: i32): void { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + (index << alignof()), value); } @@ -783,17 +759,13 @@ export class Uint32Array extends ArrayBufferView { super(length, alignof()); } - get buffer(): ArrayBuffer { - return this.data; - } - get length(): i32 { return this.byteLength >>> alignof(); } @operator("[]") private __get(index: i32): u32 { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + (index << alignof())); } @@ -804,7 +776,7 @@ export class Uint32Array extends ArrayBufferView { @operator("[]=") private __set(index: i32, value: u32): void { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + (index << alignof()), value); } @@ -911,17 +883,13 @@ export class Int64Array extends ArrayBufferView { super(length, alignof()); } - get buffer(): ArrayBuffer { - return this.data; - } - get length(): i32 { return this.byteLength >>> alignof(); } @operator("[]") private __get(index: i32): i64 { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + (index << alignof())); } @@ -932,7 +900,7 @@ export class Int64Array extends ArrayBufferView { @operator("[]=") private __set(index: i32, value: i64): void { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + (index << alignof()), value); } @@ -1039,17 +1007,13 @@ export class Uint64Array extends ArrayBufferView { super(length, alignof()); } - get buffer(): ArrayBuffer { - return this.data; - } - get length(): i32 { return this.byteLength >>> alignof(); } @operator("[]") private __get(index: i32): u64 { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + (index << alignof())); } @@ -1060,7 +1024,7 @@ export class Uint64Array extends ArrayBufferView { @operator("[]=") private __set(index: i32, value: u64): void { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + (index << alignof()), value); } @@ -1167,17 +1131,13 @@ export class Float32Array extends ArrayBufferView { super(length, alignof()); } - get buffer(): ArrayBuffer { - return this.data; - } - get length(): i32 { return this.byteLength >>> alignof(); } @operator("[]") private __get(index: i32): f32 { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + (index << alignof())); } @@ -1188,7 +1148,7 @@ export class Float32Array extends ArrayBufferView { @operator("[]=") private __set(index: i32, value: f32): void { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + (index << alignof()), value); } @@ -1295,17 +1255,13 @@ export class Float64Array extends ArrayBufferView { super(length, alignof()); } - get buffer(): ArrayBuffer { - return this.data; - } - get length(): i32 { return this.byteLength >>> alignof(); } @operator("[]") private __get(index: i32): f64 { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + (index << alignof())); } @@ -1316,7 +1272,7 @@ export class Float64Array extends ArrayBufferView { @operator("[]=") private __set(index: i32, value: f64): void { - if (index >= this.dataLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); + if (index >= this.byteLength >>> alignof()) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + (index << alignof()), value); } @@ -1487,11 +1443,12 @@ function SUBARRAY( begin = begin < 0 ? max(len + begin, 0) : min(begin, len); end = end < 0 ? max(len + end, 0) : min(end, len); end = max(end, begin); - var out = changetype(__alloc(offsetof(), idof())); // retains - out.data = array.data; // retains - out.dataStart = array.dataStart + (begin << alignof()); - out.dataLength = (end - begin) << alignof(); - return out; + + var out = __alloc(offsetof(), idof()); + store(out, array.buffer, offsetof("buffer")); + store(out, array.dataStart + (begin << alignof()), offsetof("dataStart")); + store(out, (end - begin) << alignof(), offsetof("byteLength")); + return changetype(out); // retains } // @ts-ignore: decorator @@ -1557,19 +1514,18 @@ function MAP( var dataStart = array.dataStart; var byteLength = len << alignof(); - var out = changetype(__alloc(offsetof(), idof())); + var out = __alloc(offsetof(), idof()); var buffer = __alloc(byteLength, idof()); - out.data = changetype(buffer); // retain - out.dataStart = buffer; - out.dataLength = byteLength; - for (let i = 0; i < len; i++) { store( buffer + (i << alignof()), fn(load(dataStart + (i << alignof())), i, array) ); } - return out; + store(out, changetype(buffer), offsetof("buffer")); + store(out, buffer, offsetof("dataStart")); + store(out, byteLength, offsetof("byteLength")); + return changetype(out); // retains } // @ts-ignore: decorator @@ -1579,7 +1535,7 @@ function FILTER( fn: (value: T, index: i32, self: TArray) => bool, ): TArray { var len = array.length; - var out = changetype(__alloc(offsetof(), idof())); + var out = __alloc(offsetof(), idof()); var buffer = __alloc(len << alignof(), idof()); var dataStart = array.dataStart; var j: usize = 0; @@ -1593,12 +1549,12 @@ function FILTER( } } // shrink output buffer - var length = j << alignof(); - var data = __realloc(buffer, length); - out.data = changetype(data); // retain - out.dataStart = data; - out.dataLength = length; - return out; + var byteLength = j << alignof(); + var data = __realloc(buffer, byteLength); + store(out, changetype(data), offsetof("buffer")); + store(out, byteLength, offsetof("byteLength")); + store(out, data, offsetof("dataStart")); + return changetype(out); // retains } // @ts-ignore: decorator @@ -1741,9 +1697,9 @@ function WRAP(buffer: ArrayBuffer, byteOffset if (byteOffset + byteLength > buffer.byteLength) { throw new RangeError(E_INVALIDLENGTH); } - var out = changetype(__alloc(offsetof(), idof())); - out.data = buffer; - out.dataLength = byteLength; - out.dataStart = changetype(buffer) + byteOffset; - return out; + var out = __alloc(offsetof(), idof()); + store(out, buffer, offsetof("buffer")); + store(out, byteLength, offsetof("byteLength")); + store(out, changetype(buffer) + byteOffset, offsetof("dataStart")); + return changetype(out); // retains } diff --git a/tests/compiler/assert-nonnull.optimized.wat b/tests/compiler/assert-nonnull.optimized.wat index e722118b4f..258f9bd28f 100644 --- a/tests/compiler/assert-nonnull.optimized.wat +++ b/tests/compiler/assert-nonnull.optimized.wat @@ -53,7 +53,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load i32.load ) (func $~lib/array/Array#__get (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) @@ -64,7 +64,7 @@ if i32.const 24 i32.const 80 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -76,7 +76,7 @@ if i32.const 128 i32.const 80 - i32.const 100 + i32.const 96 i32.const 39 call $~lib/builtins/abort unreachable @@ -100,7 +100,7 @@ if i32.const 24 i32.const 80 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/assert-nonnull.untouched.wat b/tests/compiler/assert-nonnull.untouched.wat index e6eeed6976..0ee1f1fd84 100644 --- a/tests/compiler/assert-nonnull.untouched.wat +++ b/tests/compiler/assert-nonnull.untouched.wat @@ -90,7 +90,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -107,7 +107,7 @@ if i32.const 24 i32.const 80 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -123,7 +123,7 @@ call $~lib/rt/stub/__release i32.const 128 i32.const 80 - i32.const 100 + i32.const 96 i32.const 39 call $~lib/builtins/abort unreachable @@ -151,7 +151,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -168,7 +168,7 @@ if i32.const 24 i32.const 80 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/builtins.optimized.wat b/tests/compiler/builtins.optimized.wat index cc18c11f31..59ba168f04 100644 --- a/tests/compiler/builtins.optimized.wat +++ b/tests/compiler/builtins.optimized.wat @@ -732,8 +732,8 @@ f64.const 0 f64.const 0 f64.const 12 - f64.const 27 - f64.const 27 + f64.const 25 + f64.const 25 call $~lib/builtins/trace i32.const 176 i32.const 176 diff --git a/tests/compiler/builtins.untouched.wat b/tests/compiler/builtins.untouched.wat index 531613b635..f51c9619ee 100644 --- a/tests/compiler/builtins.untouched.wat +++ b/tests/compiler/builtins.untouched.wat @@ -1340,9 +1340,9 @@ local.set $1 i32.const 12 local.set $4 - i32.const 27 + i32.const 25 local.set $5 - i32.const 27 + i32.const 25 local.set $6 i32.const 104 i32.const 5 diff --git a/tests/compiler/infer-generic.untouched.wat b/tests/compiler/infer-generic.untouched.wat index 296df99d33..e69de29bb2 100644 --- a/tests/compiler/infer-generic.untouched.wat +++ b/tests/compiler/infer-generic.untouched.wat @@ -1,172 +0,0 @@ -(module - (type $FUNCSIG$idd (func (param f64 f64) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$iifii (func (param i32 f32 i32 i32) (result i32))) - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) - (type $FUNCSIG$v (func)) - (type $FUNCSIG$ff (func (param f32) (result f32))) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (memory $0 1) - (data (i32.const 8) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00i\00n\00f\00e\00r\00-\00g\00e\00n\00e\00r\00i\00c\00.\00t\00s\00") - (data (i32.const 56) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\00\00\80?\00\00\00@\00\00@@") - (data (i32.const 88) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00H\00\00\00H\00\00\00\0c\00\00\00\03\00\00\00") - (table $0 2 funcref) - (elem (i32.const 0) $null $start:infer-generic~anonymous|0) - (global $infer-generic/arr i32 (i32.const 104)) - (global $~lib/argc (mut i32) (i32.const 0)) - (export "memory" (memory $0)) - (export "test1" (func $infer-generic/test1)) - (export "test2" (func $infer-generic/test2)) - (export "test3" (func $infer-generic/test3)) - (export "test4" (func $infer-generic/test4)) - (start $start) - (func $infer-generic/inferCompatible (; 1 ;) (type $FUNCSIG$idd) (param $0 f64) (param $1 f64) (result i32) - local.get $0 - local.get $1 - f64.eq - ) - (func $~lib/rt/stub/__retain (; 2 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - ) - (func $~lib/rt/stub/__release (; 3 ;) (type $FUNCSIG$vi) (param $0 i32) - nop - ) - (func $start:infer-generic~anonymous|0 (; 4 ;) (type $FUNCSIG$iifii) (param $0 i32) (param $1 f32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/stub/__retain - drop - local.get $0 - if (result i32) - local.get $1 - f32.const 0 - f32.ne - else - i32.const 0 - end - local.set $4 - local.get $3 - call $~lib/rt/stub/__release - local.get $4 - ) - (func $~lib/array/Array#reduce (; 5 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $2 - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - local.get $0 - i32.load offset=12 - local.set $5 - loop $loop|0 - local.get $4 - local.get $5 - local.tee $6 - local.get $0 - i32.load offset=12 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $0 - i32.load offset=4 - local.get $4 - i32.const 2 - i32.shl - i32.add - f32.load - local.get $4 - local.get $0 - local.get $1 - call_indirect (type $FUNCSIG$iifii) - local.set $3 - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - ) - (func $start:infer-generic (; 6 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - f64.const 1 - f64.const 1 - call $infer-generic/inferCompatible - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 46 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $infer-generic/arr - i32.const 1 - i32.const 0 - call $~lib/array/Array#reduce - drop - ) - (func $infer-generic/inferPlain (; 7 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - ) - (func $infer-generic/test1 (; 8 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $infer-generic/inferPlain - ) - (func $infer-generic/inferEncapsulatedClass (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - local.get $0 - ) - (func $infer-generic/test2 (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - local.get $0 - call $infer-generic/inferEncapsulatedClass - local.set $1 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - ) - (func $infer-generic/inferEncapsulatedFunction (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - ) - (func $infer-generic/test3 (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $infer-generic/inferEncapsulatedFunction - ) - (func $infer-generic/inferEncapsulatedFunctionMixed (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - ) - (func $infer-generic/test4 (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $infer-generic/inferEncapsulatedFunctionMixed - ) - (func $start (; 15 ;) (type $FUNCSIG$v) - call $start:infer-generic - ) - (func $null (; 16 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/number.untouched.wat b/tests/compiler/number.untouched.wat index 826eba3516..e69de29bb2 100644 --- a/tests/compiler/number.untouched.wat +++ b/tests/compiler/number.untouched.wat @@ -1,4186 +0,0 @@ -(module - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$idi (func (param f64 i32) (result i32))) - (type $FUNCSIG$id (func (param f64) (result i32))) - (type $FUNCSIG$iid (func (param i32 f64) (result i32))) - (type $FUNCSIG$jii (func (param i32 i32) (result i64))) - (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) - (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) - (type $FUNCSIG$if (func (param f32) (result i32))) - (type $FUNCSIG$v (func)) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (memory $0 1) - (data (i32.const 8) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") - (data (i32.const 32) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") - (data (i32.const 448) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\000\00\00\000\00\00\00\90\01\00\00d\00\00\00") - (data (i32.const 480) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\001\00") - (data (i32.const 504) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00n\00u\00m\00b\00e\00r\00.\00t\00s\00") - (data (i32.const 544) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") - (data (i32.const 568) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") - (data (i32.const 592) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 632) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 664) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8 (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa32 - return - ) - (func $~lib/number/I32#toString (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa - ) - (func $~lib/rt/stub/__release (; 9 ;) (type $FUNCSIG$vi) (param $0 i32) - nop - ) - (func $~lib/string/String#get:length (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 16 - i32.sub - i32.load offset=12 - i32.const 1 - i32.shr_u - ) - (func $~lib/util/string/compareImpl (; 11 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - local.get $2 - call $~lib/rt/stub/__retain - drop - i32.const 0 - local.set $5 - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $6 - local.get $2 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $7 - block $break|0 - loop $continue|0 - local.get $4 - if (result i32) - local.get $6 - i32.load16_u - local.get $7 - i32.load16_u - i32.sub - local.tee $5 - i32.eqz - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - local.get $6 - i32.const 2 - i32.add - local.set $6 - local.get $7 - i32.const 2 - i32.add - local.set $7 - br $continue|0 - end - unreachable - end - local.get $5 - local.set $8 - local.get $0 - call $~lib/rt/stub/__release - local.get $2 - call $~lib/rt/stub/__release - local.get $8 - ) - (func $~lib/string/String.__eq (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - local.get $1 - call $~lib/rt/stub/__retain - drop - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 0 - i32.eq - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - return - end - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $3 - local.get $1 - call $~lib/string/String#get:length - i32.ne - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - local.get $1 - i32.const 0 - local.get $3 - call $~lib/util/string/compareImpl - i32.eqz - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $~lib/number/isFinite (; 13 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.eq - ) - (func $~lib/number/isNaN (; 14 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.ne - ) - (func $~lib/array/Array#__unchecked_get (; 15 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - i64.load - ) - (func $~lib/array/Array#__unchecked_get (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.load16_s - ) - (func $~lib/util/number/genDigits (; 17 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i64) - (local $11 i32) - (local $12 i32) - (local $13 i64) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i32) - (local $25 i32) - (local $26 i32) - i32.const 0 - local.get $4 - i32.sub - local.set $7 - i64.const 1 - local.get $7 - i64.extend_i32_s - i64.shl - local.set $8 - local.get $8 - i64.const 1 - i64.sub - local.set $9 - local.get $3 - local.get $1 - i64.sub - local.set $10 - local.get $4 - local.set $11 - local.get $3 - local.get $7 - i64.extend_i32_s - i64.shr_u - i32.wrap_i64 - local.set $12 - local.get $3 - local.get $9 - i64.and - local.set $13 - local.get $12 - call $~lib/util/number/decimalCount32 - local.set $14 - local.get $6 - local.set $15 - i32.const 1704 - i32.load offset=4 - local.set $16 - block $break|0 - loop $continue|0 - local.get $14 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|0 - block $break|1 - block $case10|1 - block $case9|1 - block $case8|1 - block $case7|1 - block $case6|1 - block $case5|1 - block $case4|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $14 - local.set $18 - local.get $18 - i32.const 10 - i32.eq - br_if $case0|1 - local.get $18 - i32.const 9 - i32.eq - br_if $case1|1 - local.get $18 - i32.const 8 - i32.eq - br_if $case2|1 - local.get $18 - i32.const 7 - i32.eq - br_if $case3|1 - local.get $18 - i32.const 6 - i32.eq - br_if $case4|1 - local.get $18 - i32.const 5 - i32.eq - br_if $case5|1 - local.get $18 - i32.const 4 - i32.eq - br_if $case6|1 - local.get $18 - i32.const 3 - i32.eq - br_if $case7|1 - local.get $18 - i32.const 2 - i32.eq - br_if $case8|1 - local.get $18 - i32.const 1 - i32.eq - br_if $case9|1 - br $case10|1 - end - local.get $12 - i32.const 1000000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100 - i32.div_u - local.set $17 - local.get $12 - i32.const 100 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10 - i32.div_u - local.set $17 - local.get $12 - i32.const 10 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - local.set $17 - i32.const 0 - local.set $12 - br $break|1 - end - i32.const 0 - local.set $17 - br $break|1 - end - local.get $17 - local.get $15 - i32.or - if - local.get $0 - local.get $15 - local.tee $18 - i32.const 1 - i32.add - local.set $15 - local.get $18 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $17 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $12 - i64.extend_i32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.get $13 - i64.add - local.set $19 - local.get $19 - local.get $5 - i64.le_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $19 - local.set $22 - local.get $16 - local.get $14 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $25 - local.get $25 - i32.load16_u - local.set $26 - block $break|2 - loop $continue|2 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|2 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|2 - end - unreachable - end - local.get $25 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|0 - end - unreachable - end - loop $continue|3 - local.get $13 - i64.const 10 - i64.mul - local.set $13 - local.get $5 - i64.const 10 - i64.mul - local.set $5 - local.get $13 - local.get $7 - i64.extend_i32_s - i64.shr_u - local.set $19 - local.get $19 - local.get $15 - i64.extend_i32_s - i64.or - i64.const 0 - i64.ne - if - local.get $0 - local.get $15 - local.tee $17 - i32.const 1 - i32.add - local.set $15 - local.get $17 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $19 - i32.wrap_i64 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $13 - local.get $9 - i64.and - local.set $13 - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $13 - local.get $5 - i64.lt_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $10 - local.get $16 - i32.const 0 - local.get $14 - i32.sub - i32.const 2 - i32.shl - i32.add - i64.load32_u - i64.mul - local.set $10 - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $13 - local.set $22 - local.get $8 - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $17 - local.get $17 - i32.load16_u - local.set $26 - block $break|4 - loop $continue|4 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|4 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|4 - end - unreachable - end - local.get $17 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|3 - end - unreachable - ) - (func $~lib/util/memory/memcpy (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - loop $continue|0 - local.get $2 - if (result i32) - local.get $1 - i32.const 3 - i32.and - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $0 - i32.const 3 - i32.and - i32.const 0 - i32.eq - if - block $break|1 - loop $continue|1 - local.get $2 - i32.const 16 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $1 - i32.const 8 - i32.add - i32.load - i32.store - local.get $0 - i32.const 12 - i32.add - local.get $1 - i32.const 12 - i32.add - i32.load - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|1 - end - unreachable - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.set $0 - local.get $1 - i32.const 4 - i32.add - local.set $1 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.get $1 - i32.load16_u - i32.store16 - local.get $0 - i32.const 2 - i32.add - local.set $0 - local.get $1 - i32.const 2 - i32.add - local.set $1 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - return - end - local.get $2 - i32.const 32 - i32.ge_u - if - block $break|2 - block $case2|2 - block $case1|2 - block $case0|2 - local.get $0 - i32.const 3 - i32.and - local.set $5 - local.get $5 - i32.const 1 - i32.eq - br_if $case0|2 - local.get $5 - i32.const 2 - i32.eq - br_if $case1|2 - local.get $5 - i32.const 3 - i32.eq - br_if $case2|2 - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 3 - i32.sub - local.set $2 - block $break|3 - loop $continue|3 - local.get $2 - i32.const 17 - i32.ge_u - i32.eqz - br_if $break|3 - local.get $1 - i32.const 1 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 5 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 9 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 13 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|3 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - block $break|4 - loop $continue|4 - local.get $2 - i32.const 18 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $1 - i32.const 2 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 6 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 10 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 14 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|4 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - block $break|5 - loop $continue|5 - local.get $2 - i32.const 19 - i32.ge_u - i32.eqz - br_if $break|5 - local.get $1 - i32.const 3 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 7 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 11 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 15 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|5 - end - unreachable - end - br $break|2 - end - end - local.get $2 - i32.const 16 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - ) - (func $~lib/memory/memory.copy (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - block $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - local.get $4 - i32.eq - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $4 - local.get $3 - i32.add - local.get $5 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $5 - local.get $3 - i32.add - local.get $4 - i32.le_u - end - if - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $4 - i32.lt_u - if - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|0 - loop $continue|0 - local.get $5 - i32.const 7 - i32.and - i32.eqz - br_if $break|0 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $3 - i32.const 1 - i32.sub - local.set $3 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - br $continue|0 - end - unreachable - end - block $break|1 - loop $continue|1 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $5 - local.get $4 - i64.load - i64.store - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - i32.const 8 - i32.add - local.set $5 - local.get $4 - i32.const 8 - i32.add - local.set $4 - br $continue|1 - end - unreachable - end - end - block $break|2 - loop $continue|2 - local.get $3 - i32.eqz - br_if $break|2 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - local.get $3 - i32.const 1 - i32.sub - local.set $3 - br $continue|2 - end - unreachable - end - else - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|3 - loop $continue|3 - local.get $5 - local.get $3 - i32.add - i32.const 7 - i32.and - i32.eqz - br_if $break|3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - local.get $3 - i32.add - local.get $4 - local.get $3 - i32.add - i64.load - i64.store - br $continue|4 - end - unreachable - end - end - block $break|5 - loop $continue|5 - local.get $3 - i32.eqz - br_if $break|5 - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|5 - end - unreachable - end - end - end - ) - (func $~lib/util/number/prettify (; 20 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $2 - i32.eqz - if - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 2 - i32.add - return - end - local.get $1 - local.get $2 - i32.add - local.set $3 - local.get $1 - local.get $3 - i32.le_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - block $break|0 - local.get $1 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $3 - i32.const 2 - i32.add - return - else - local.get $3 - i32.const 0 - i32.gt_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $4 - local.get $4 - i32.const 2 - i32.add - local.get $4 - i32.const 0 - local.get $2 - i32.sub - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.store16 - local.get $1 - i32.const 1 - i32.add - return - else - i32.const -6 - local.get $3 - i32.lt_s - if (result i32) - local.get $3 - i32.const 0 - i32.le_s - else - i32.const 0 - end - if - i32.const 2 - local.get $3 - i32.sub - local.set $4 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $1 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - i32.const 48 - i32.const 46 - i32.const 16 - i32.shl - i32.or - i32.store - block $break|1 - i32.const 2 - local.set $5 - loop $loop|1 - local.get $5 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|1 - end - unreachable - end - local.get $1 - local.get $4 - i32.add - return - else - local.get $1 - i32.const 1 - i32.eq - if - local.get $0 - i32.const 101 - i32.store16 offset=2 - local.get $0 - i32.const 4 - i32.add - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - local.get $5 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $5 - i32.sub - local.set $5 - end - local.get $5 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $7 - local.get $4 - local.set $10 - local.get $5 - local.set $9 - local.get $7 - local.set $8 - local.get $10 - local.get $9 - local.get $8 - call $~lib/util/number/utoa32_lut - local.get $4 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $7 - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - else - local.get $1 - i32.const 1 - i32.shl - local.set $7 - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.const 2 - i32.add - local.get $7 - i32.const 2 - i32.sub - call $~lib/memory/memory.copy - local.get $0 - i32.const 46 - i32.store16 offset=2 - local.get $0 - local.get $7 - i32.add - i32.const 101 - i32.store16 offset=2 - local.get $1 - local.get $0 - local.get $7 - i32.add - i32.const 4 - i32.add - local.set $9 - local.get $3 - i32.const 1 - i32.sub - local.set $8 - local.get $8 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $8 - i32.sub - local.set $8 - end - local.get $8 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $4 - local.get $9 - local.set $11 - local.get $8 - local.set $5 - local.get $4 - local.set $10 - local.get $11 - local.get $5 - local.get $10 - call $~lib/util/number/utoa32_lut - local.get $9 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $4 - i32.add - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - end - unreachable - end - unreachable - end - unreachable - end - unreachable - ) - (func $~lib/util/number/dtoa_core (; 21 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 i64) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i32) - (local $11 i64) - (local $12 i64) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 f64) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i64) - (local $25 i64) - (local $26 i32) - (local $27 i64) - (local $28 i32) - local.get $1 - f64.const 0 - f64.lt - local.set $2 - local.get $2 - if - local.get $1 - f64.neg - local.set $1 - local.get $0 - i32.const 45 - i32.store16 - end - local.get $1 - local.set $5 - local.get $0 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i64.reinterpret_f64 - local.set $6 - local.get $6 - i64.const 9218868437227405312 - i64.and - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.set $7 - local.get $6 - i64.const 4503599627370495 - i64.and - local.set $8 - local.get $7 - i32.const 0 - i32.ne - i64.extend_i32_u - i64.const 52 - i64.shl - local.get $8 - i64.add - local.set $9 - local.get $7 - i32.const 1 - local.get $7 - i32.const 0 - i32.ne - select - i32.const 1023 - i32.const 52 - i32.add - i32.sub - local.set $7 - local.get $9 - local.set $11 - local.get $7 - local.set $10 - local.get $11 - i64.const 1 - i64.shl - i64.const 1 - i64.add - local.set $12 - local.get $10 - i32.const 1 - i32.sub - local.set $13 - local.get $12 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $12 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $12 - local.get $13 - local.get $14 - i32.sub - local.set $13 - i32.const 1 - local.get $11 - i64.const 4503599627370496 - i64.eq - i32.add - local.set $15 - local.get $12 - global.set $~lib/util/number/_frc_plus - local.get $11 - local.get $15 - i64.extend_i32_s - i64.shl - i64.const 1 - i64.sub - local.get $10 - local.get $15 - i32.sub - local.get $13 - i32.sub - i64.extend_i32_s - i64.shl - global.set $~lib/util/number/_frc_minus - local.get $13 - global.set $~lib/util/number/_exp - global.get $~lib/util/number/_exp - local.set $10 - i32.const -61 - local.get $10 - i32.sub - f64.convert_i32_s - f64.const 0.30102999566398114 - f64.mul - f64.const 347 - f64.add - local.set $16 - local.get $16 - i32.trunc_f64_s - local.set $15 - local.get $15 - local.get $15 - f64.convert_i32_s - local.get $16 - f64.ne - i32.add - local.set $15 - local.get $15 - i32.const 3 - i32.shr_s - i32.const 1 - i32.add - local.set $14 - i32.const 348 - local.get $14 - i32.const 3 - i32.shl - i32.sub - global.set $~lib/util/number/_K - i32.const 1392 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_frc_pow - i32.const 1616 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_exp_pow - local.get $9 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $9 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $9 - local.get $7 - local.get $14 - i32.sub - local.set $7 - global.get $~lib/util/number/_frc_pow - local.set $12 - global.get $~lib/util/number/_exp_pow - local.set $15 - local.get $9 - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $24 - local.get $24 - i64.const 2147483647 - i64.add - local.set $24 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $24 - i64.const 32 - i64.shr_u - local.set $24 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $24 - i64.add - local.set $24 - local.get $7 - local.set $10 - local.get $15 - local.set $13 - local.get $10 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $10 - global.get $~lib/util/number/_frc_plus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $23 - local.get $11 - i64.const 4294967295 - i64.and - local.set $22 - local.get $17 - i64.const 32 - i64.shr_u - local.set $21 - local.get $11 - i64.const 32 - i64.shr_u - local.set $20 - local.get $23 - local.get $22 - i64.mul - local.set $19 - local.get $21 - local.get $22 - i64.mul - local.get $19 - i64.const 32 - i64.shr_u - i64.add - local.set $18 - local.get $23 - local.get $20 - i64.mul - local.get $18 - i64.const 4294967295 - i64.and - i64.add - local.set $25 - local.get $25 - i64.const 2147483647 - i64.add - local.set $25 - local.get $18 - i64.const 32 - i64.shr_u - local.set $18 - local.get $25 - i64.const 32 - i64.shr_u - local.set $25 - local.get $21 - local.get $20 - i64.mul - local.get $18 - i64.add - local.get $25 - i64.add - i64.const 1 - i64.sub - local.set $25 - global.get $~lib/util/number/_exp - local.set $26 - local.get $15 - local.set $13 - local.get $26 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $26 - global.get $~lib/util/number/_frc_minus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $27 - local.get $27 - i64.const 2147483647 - i64.add - local.set $27 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $27 - i64.const 32 - i64.shr_u - local.set $27 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $27 - i64.add - i64.const 1 - i64.add - local.set $27 - local.get $25 - local.get $27 - i64.sub - local.set $23 - local.get $4 - local.get $24 - local.get $10 - local.get $25 - local.get $26 - local.get $23 - local.get $3 - call $~lib/util/number/genDigits - local.set $28 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $28 - local.get $2 - i32.sub - global.get $~lib/util/number/_K - call $~lib/util/number/prettify - local.set $28 - local.get $28 - local.get $2 - i32.add - ) - (func $~lib/string/String#substring (; 22 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $6 - local.get $2 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $7 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - i32.const 1 - i32.shl - local.set $8 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - i32.const 1 - i32.shl - local.set $9 - local.get $9 - local.get $8 - i32.sub - local.set $3 - local.get $3 - i32.eqz - if - i32.const 1736 - call $~lib/rt/stub/__retain - return - end - local.get $8 - i32.eqz - if (result i32) - local.get $9 - local.get $0 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - i32.eq - else - i32.const 0 - end - if - local.get $0 - call $~lib/rt/stub/__retain - return - end - local.get $3 - i32.const 1 - call $~lib/rt/stub/__alloc - local.set $10 - local.get $10 - local.get $0 - local.get $8 - i32.add - local.get $3 - call $~lib/memory/memory.copy - local.get $10 - call $~lib/rt/stub/__retain - ) - (func $~lib/rt/stub/__free (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1752 - i32.const 71 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 16 - i32.sub - local.set $1 - local.get $1 - i32.load offset=4 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 1752 - i32.const 73 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - i32.load - i32.add - global.get $~lib/rt/stub/offset - i32.eq - if - local.get $1 - global.set $~lib/rt/stub/offset - end - ) - (func $~lib/util/number/dtoa (; 24 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - f64.const 0 - f64.eq - if - i32.const 560 - call $~lib/rt/stub/__retain - return - end - local.get $0 - call $~lib/number/isFinite - i32.eqz - if - local.get $0 - call $~lib/number/isNaN - if - i32.const 584 - call $~lib/rt/stub/__retain - return - end - i32.const 608 - i32.const 648 - local.get $0 - f64.const 0 - f64.lt - select - call $~lib/rt/stub/__retain - return - end - i32.const 28 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/stub/__alloc - local.set $1 - local.get $1 - local.get $0 - call $~lib/util/number/dtoa_core - local.set $2 - local.get $2 - i32.const 28 - i32.eq - if - local.get $1 - call $~lib/rt/stub/__retain - return - end - local.get $1 - i32.const 0 - local.get $2 - call $~lib/string/String#substring - local.set $3 - local.get $1 - call $~lib/rt/stub/__free - local.get $3 - ) - (func $~lib/number/F64#toString (; 25 ;) (type $FUNCSIG$idi) (param $0 f64) (param $1 i32) (result i32) - local.get $0 - call $~lib/util/number/dtoa - ) - (func $~lib/number/Bool#toString (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - if (result i32) - i32.const 1920 - call $~lib/rt/stub/__retain - local.tee $1 - else - i32.const 1944 - call $~lib/rt/stub/__retain - local.tee $2 - end - call $~lib/rt/stub/__retain - ) - (func $~lib/number/isNaN (; 27 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) - local.get $0 - local.get $0 - f32.ne - ) - (func $~lib/number/F32.isSafeInteger (; 28 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) - local.get $0 - f32.abs - global.get $~lib/builtins/f32.MAX_SAFE_INTEGER - f32.le - if (result i32) - local.get $0 - f32.trunc - local.get $0 - f32.eq - else - i32.const 0 - end - ) - (func $~lib/number/isFinite (; 29 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) - local.get $0 - local.get $0 - f32.sub - f32.const 0 - f32.eq - ) - (func $~lib/number/F32.isInteger (; 30 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) - local.get $0 - call $~lib/number/isFinite - if (result i32) - local.get $0 - f32.trunc - local.get $0 - f32.eq - else - i32.const 0 - end - ) - (func $~lib/number/F64.isSafeInteger (; 31 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - f64.abs - global.get $~lib/builtins/f64.MAX_SAFE_INTEGER - f64.le - if (result i32) - local.get $0 - f64.trunc - local.get $0 - f64.eq - else - i32.const 0 - end - ) - (func $~lib/number/F64.isInteger (; 32 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - call $~lib/number/isFinite - if (result i32) - local.get $0 - f64.trunc - local.get $0 - f64.eq - else - i32.const 0 - end - ) - (func $start:number (; 33 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - global.get $~lib/heap/__heap_base - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - global.set $~lib/rt/stub/startOffset - global.get $~lib/rt/stub/startOffset - global.set $~lib/rt/stub/offset - global.get $number/a - call $~lib/number/I32#toString - local.tee $0 - i32.const 496 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 5 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2 - i32.const 0 - call $~lib/number/F64#toString - local.tee $1 - i32.const 1800 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 7 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - call $~lib/number/I32#toString - local.tee $2 - i32.const 1824 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 8 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const -5 - call $~lib/number/I32#toString - local.tee $3 - i32.const 1848 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 10 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4 - call $~lib/number/I32#toString - local.tee $4 - i32.const 1872 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 11 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $number/a - i32.const 1 - i32.add - global.set $number/a - global.get $number/a - call $~lib/number/I32#toString - local.tee $5 - i32.const 1896 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 12 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $number/a - i32.const 1 - i32.sub - global.set $number/a - global.get $number/a - call $~lib/number/I32#toString - local.tee $6 - i32.const 496 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 13 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - call $~lib/number/Bool#toString - local.tee $7 - i32.const 1920 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 14 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/number/Bool#toString - local.tee $8 - i32.const 1944 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 15 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $number/a - local.tee $9 - i32.const 1 - i32.add - global.set $number/a - local.get $9 - call $~lib/number/I32#toString - local.tee $9 - i32.const 496 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 18 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $number/a - local.tee $10 - i32.const 1 - i32.sub - global.set $number/a - local.get $10 - call $~lib/number/I32#toString - local.tee $10 - i32.const 1896 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 19 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 23 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -16777216 - call $~lib/number/F32.isSafeInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 25 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -16777215 - call $~lib/number/F32.isSafeInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 26 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - call $~lib/number/F32.isSafeInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 27 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - call $~lib/number/F32.isSafeInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 28 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - call $~lib/number/F32.isSafeInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 29 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - call $~lib/number/F32.isSafeInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 30 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 16777215 - call $~lib/number/F32.isSafeInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 31 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 16777216 - call $~lib/number/F32.isSafeInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 32 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - call $~lib/number/F32.isSafeInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 33 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - call $~lib/number/F32.isInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 34 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - call $~lib/number/F32.isInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 35 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - call $~lib/number/F32.isInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 36 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - call $~lib/number/F32.isInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 37 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1920928955078125e-07 - call $~lib/number/F32.isInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 38 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - call $~lib/number/F32.isInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 39 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - call $~lib/number/F32.isInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 40 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -16777215 - call $~lib/number/F32.isInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 41 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 16777215 - call $~lib/number/F32.isInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 42 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - call $~lib/number/F32.isInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 43 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.5 - call $~lib/number/F32.isInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 44 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 46 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -9007199254740992 - call $~lib/number/F64.isSafeInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 48 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -9007199254740991 - call $~lib/number/F64.isSafeInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 49 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - call $~lib/number/F64.isSafeInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 50 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - call $~lib/number/F64.isSafeInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 51 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - call $~lib/number/F64.isSafeInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 52 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - call $~lib/number/F64.isSafeInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 53 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9007199254740991 - call $~lib/number/F64.isSafeInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 54 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9007199254740992 - call $~lib/number/F64.isSafeInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 55 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - call $~lib/number/F64.isSafeInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 56 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - call $~lib/number/F64.isInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 57 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - call $~lib/number/F64.isInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 58 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - call $~lib/number/F64.isInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 59 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - call $~lib/number/F64.isInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 60 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.220446049250313e-16 - call $~lib/number/F64.isInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 61 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - call $~lib/number/F64.isInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 62 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - call $~lib/number/F64.isInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 63 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -9007199254740991 - call $~lib/number/F64.isInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 64 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9007199254740991 - call $~lib/number/F64.isInteger - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 65 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - call $~lib/number/F64.isInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 66 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.5 - call $~lib/number/F64.isInteger - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 67 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - call $~lib/rt/stub/__release - local.get $3 - call $~lib/rt/stub/__release - local.get $4 - call $~lib/rt/stub/__release - local.get $5 - call $~lib/rt/stub/__release - local.get $6 - call $~lib/rt/stub/__release - local.get $7 - call $~lib/rt/stub/__release - local.get $8 - call $~lib/rt/stub/__release - local.get $9 - call $~lib/rt/stub/__release - local.get $10 - call $~lib/rt/stub/__release - ) - (func $start (; 34 ;) (type $FUNCSIG$v) - call $start:number - ) - (func $null (; 35 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/rc/global-init.optimized.wat b/tests/compiler/rc/global-init.optimized.wat index c171eea177..d64dcf9a0e 100644 --- a/tests/compiler/rc/global-init.optimized.wat +++ b/tests/compiler/rc/global-init.optimized.wat @@ -1929,7 +1929,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/global-init.untouched.wat b/tests/compiler/rc/global-init.untouched.wat index 7c7b8830b8..ed2accb8f4 100644 --- a/tests/compiler/rc/global-init.untouched.wat +++ b/tests/compiler/rc/global-init.untouched.wat @@ -3454,7 +3454,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/local-init.optimized.wat b/tests/compiler/rc/local-init.optimized.wat index 02eee80e8e..09cd6f2405 100644 --- a/tests/compiler/rc/local-init.optimized.wat +++ b/tests/compiler/rc/local-init.optimized.wat @@ -1906,7 +1906,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/local-init.untouched.wat b/tests/compiler/rc/local-init.untouched.wat index 9157c0e601..7699774ba5 100644 --- a/tests/compiler/rc/local-init.untouched.wat +++ b/tests/compiler/rc/local-init.untouched.wat @@ -3445,7 +3445,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/logical-and-mismatch.optimized.wat b/tests/compiler/rc/logical-and-mismatch.optimized.wat index 6772fcfa31..6daef5ea2c 100644 --- a/tests/compiler/rc/logical-and-mismatch.optimized.wat +++ b/tests/compiler/rc/logical-and-mismatch.optimized.wat @@ -1949,7 +1949,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/logical-and-mismatch.untouched.wat b/tests/compiler/rc/logical-and-mismatch.untouched.wat index b3ca3f728d..d2e0b00136 100644 --- a/tests/compiler/rc/logical-and-mismatch.untouched.wat +++ b/tests/compiler/rc/logical-and-mismatch.untouched.wat @@ -3483,7 +3483,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/logical-or-mismatch.optimized.wat b/tests/compiler/rc/logical-or-mismatch.optimized.wat index a8fee64286..3286ffe51f 100644 --- a/tests/compiler/rc/logical-or-mismatch.optimized.wat +++ b/tests/compiler/rc/logical-or-mismatch.optimized.wat @@ -1949,7 +1949,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/logical-or-mismatch.untouched.wat b/tests/compiler/rc/logical-or-mismatch.untouched.wat index c28a4e768a..90b3e310d9 100644 --- a/tests/compiler/rc/logical-or-mismatch.untouched.wat +++ b/tests/compiler/rc/logical-or-mismatch.untouched.wat @@ -3483,7 +3483,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/rereturn.optimized.wat b/tests/compiler/rc/rereturn.optimized.wat index 52e8d2592b..b221b210e4 100644 --- a/tests/compiler/rc/rereturn.optimized.wat +++ b/tests/compiler/rc/rereturn.optimized.wat @@ -1885,7 +1885,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/rereturn.untouched.wat b/tests/compiler/rc/rereturn.untouched.wat index e0b5fa9f29..64666083f6 100644 --- a/tests/compiler/rc/rereturn.untouched.wat +++ b/tests/compiler/rc/rereturn.untouched.wat @@ -3419,7 +3419,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/ternary-mismatch.optimized.wat b/tests/compiler/rc/ternary-mismatch.optimized.wat index 08ab899cf5..d092a8cc85 100644 --- a/tests/compiler/rc/ternary-mismatch.optimized.wat +++ b/tests/compiler/rc/ternary-mismatch.optimized.wat @@ -1941,7 +1941,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/ternary-mismatch.untouched.wat b/tests/compiler/rc/ternary-mismatch.untouched.wat index 7f526cb5af..de62690bf3 100644 --- a/tests/compiler/rc/ternary-mismatch.untouched.wat +++ b/tests/compiler/rc/ternary-mismatch.untouched.wat @@ -3467,7 +3467,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/resolve-access.untouched.wat b/tests/compiler/resolve-access.untouched.wat index bd61823064..e69de29bb2 100644 --- a/tests/compiler/resolve-access.untouched.wat +++ b/tests/compiler/resolve-access.untouched.wat @@ -1,2084 +0,0 @@ -(module - (type $FUNCSIG$i (func (result i32))) - (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$jii (func (param i32 i32) (result i64))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$ij (func (param i64) (result i32))) - (type $FUNCSIG$viji (func (param i32 i64 i32))) - (type $FUNCSIG$v (func)) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (memory $0 1) - (data (i32.const 8) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\00\00\00\00") - (data (i32.const 32) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") - (data (i32.const 88) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") - (data (i32.const 136) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") - (data (i32.const 160) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") - (data (i32.const 576) "\10\00\00\00\01\00\00\00\05\00\00\00\10\00\00\00\b0\00\00\00\b0\00\00\00\90\01\00\00d\00\00\00") - (table $0 1 funcref) - (elem (i32.const 0) $null) - (global $~lib/rt/stub/startOffset (mut i32) (i32.const 0)) - (global $~lib/rt/stub/offset (mut i32) (i32.const 0)) - (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) - (global $~lib/builtins/u32.MAX_VALUE i32 (i32.const -1)) - (global $~lib/heap/__heap_base i32 (i32.const 608)) - (export "memory" (memory $0)) - (export "arrayAccess" (func $resolve-access/arrayAccess)) - (export "fieldAccess" (func $resolve-access/fieldAccess)) - (export "propertyAccess" (func $resolve-access/propertyAccess)) - (start $start) - (func $~lib/rt/stub/maybeGrowMemory (; 1 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - memory.size - local.set $1 - local.get $1 - i32.const 16 - i32.shl - local.set $2 - local.get $0 - local.get $2 - i32.gt_u - if - local.get $0 - local.get $2 - i32.sub - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $3 - local.get $1 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.set $4 - local.get $4 - memory.grow - i32.const 0 - i32.lt_s - if - local.get $3 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - end - local.get $0 - global.set $~lib/rt/stub/offset - ) - (func $~lib/rt/stub/__alloc (; 2 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.const 1073741808 - i32.gt_u - if - unreachable - end - global.get $~lib/rt/stub/offset - i32.const 16 - i32.add - local.set $2 - local.get $0 - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.tee $3 - i32.const 16 - local.tee $4 - local.get $3 - local.get $4 - i32.gt_u - select - local.set $5 - local.get $2 - local.get $5 - i32.add - call $~lib/rt/stub/maybeGrowMemory - local.get $2 - i32.const 16 - i32.sub - local.set $6 - local.get $6 - local.get $5 - i32.store - local.get $6 - i32.const -1 - i32.store offset=4 - local.get $6 - local.get $1 - i32.store offset=8 - local.get $6 - local.get $0 - i32.store offset=12 - local.get $2 - ) - (func $~lib/rt/stub/__retain (; 3 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - ) - (func $~lib/util/memory/memcpy (; 4 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - loop $continue|0 - local.get $2 - if (result i32) - local.get $1 - i32.const 3 - i32.and - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $0 - i32.const 3 - i32.and - i32.const 0 - i32.eq - if - block $break|1 - loop $continue|1 - local.get $2 - i32.const 16 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $1 - i32.const 8 - i32.add - i32.load - i32.store - local.get $0 - i32.const 12 - i32.add - local.get $1 - i32.const 12 - i32.add - i32.load - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|1 - end - unreachable - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.set $0 - local.get $1 - i32.const 4 - i32.add - local.set $1 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.get $1 - i32.load16_u - i32.store16 - local.get $0 - i32.const 2 - i32.add - local.set $0 - local.get $1 - i32.const 2 - i32.add - local.set $1 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - return - end - local.get $2 - i32.const 32 - i32.ge_u - if - block $break|2 - block $case2|2 - block $case1|2 - block $case0|2 - local.get $0 - i32.const 3 - i32.and - local.set $5 - local.get $5 - i32.const 1 - i32.eq - br_if $case0|2 - local.get $5 - i32.const 2 - i32.eq - br_if $case1|2 - local.get $5 - i32.const 3 - i32.eq - br_if $case2|2 - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 3 - i32.sub - local.set $2 - block $break|3 - loop $continue|3 - local.get $2 - i32.const 17 - i32.ge_u - i32.eqz - br_if $break|3 - local.get $1 - i32.const 1 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 5 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 9 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 13 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|3 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - block $break|4 - loop $continue|4 - local.get $2 - i32.const 18 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $1 - i32.const 2 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 6 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 10 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 14 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|4 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - block $break|5 - loop $continue|5 - local.get $2 - i32.const 19 - i32.ge_u - i32.eqz - br_if $break|5 - local.get $1 - i32.const 3 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 7 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 11 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 15 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|5 - end - unreachable - end - br $break|2 - end - end - local.get $2 - i32.const 16 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - ) - (func $~lib/memory/memory.copy (; 5 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - block $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - local.get $4 - i32.eq - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $4 - local.get $3 - i32.add - local.get $5 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $5 - local.get $3 - i32.add - local.get $4 - i32.le_u - end - if - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $4 - i32.lt_u - if - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|0 - loop $continue|0 - local.get $5 - i32.const 7 - i32.and - i32.eqz - br_if $break|0 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $3 - i32.const 1 - i32.sub - local.set $3 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - br $continue|0 - end - unreachable - end - block $break|1 - loop $continue|1 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $5 - local.get $4 - i64.load - i64.store - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - i32.const 8 - i32.add - local.set $5 - local.get $4 - i32.const 8 - i32.add - local.set $4 - br $continue|1 - end - unreachable - end - end - block $break|2 - loop $continue|2 - local.get $3 - i32.eqz - br_if $break|2 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - local.get $3 - i32.const 1 - i32.sub - local.set $3 - br $continue|2 - end - unreachable - end - else - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|3 - loop $continue|3 - local.get $5 - local.get $3 - i32.add - i32.const 7 - i32.and - i32.eqz - br_if $break|3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - local.get $3 - i32.add - local.get $4 - local.get $3 - i32.add - i64.load - i64.store - br $continue|4 - end - unreachable - end - end - block $break|5 - loop $continue|5 - local.get $3 - i32.eqz - br_if $break|5 - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|5 - end - unreachable - end - end - end - ) - (func $~lib/rt/__allocArray (; 6 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - i32.const 16 - local.get $2 - call $~lib/rt/stub/__alloc - local.set $4 - local.get $0 - local.get $1 - i32.shl - local.set $5 - local.get $5 - i32.const 0 - call $~lib/rt/stub/__alloc - local.set $6 - local.get $4 - local.get $6 - call $~lib/rt/stub/__retain - i32.store - local.get $4 - local.get $6 - i32.store offset=4 - local.get $4 - local.get $5 - i32.store offset=8 - local.get $4 - local.get $0 - i32.store offset=12 - local.get $3 - if - local.get $6 - local.get $3 - local.get $5 - call $~lib/memory/memory.copy - end - local.get $4 - ) - (func $~lib/array/Array#__unchecked_get (; 7 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - i64.load - ) - (func $~lib/array/Array#__get (; 8 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - (local $2 i64) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 48 - i32.const 104 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $~lib/util/number/decimalCount32 (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - i32.const 100000 - i32.lt_u - if - local.get $0 - i32.const 100 - i32.lt_u - if - i32.const 1 - i32.const 2 - local.get $0 - i32.const 10 - i32.lt_u - select - return - else - i32.const 4 - i32.const 5 - local.get $0 - i32.const 10000 - i32.lt_u - select - local.set $1 - i32.const 3 - local.get $1 - local.get $0 - i32.const 1000 - i32.lt_u - select - return - end - unreachable - else - local.get $0 - i32.const 10000000 - i32.lt_u - if - i32.const 6 - i32.const 7 - local.get $0 - i32.const 1000000 - i32.lt_u - select - return - else - i32.const 9 - i32.const 10 - local.get $0 - i32.const 1000000000 - i32.lt_u - select - local.set $1 - i32.const 8 - local.get $1 - local.get $0 - i32.const 100000000 - i32.lt_u - select - return - end - unreachable - end - unreachable - ) - (func $~lib/util/number/utoa32_lut (; 10 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - i32.const 592 - i32.load offset=4 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i32.const 10000 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $1 - i32.const 10000 - i32.div_u - local.set $4 - local.get $1 - i32.const 10000 - i32.rem_u - local.set $5 - local.get $4 - local.set $1 - local.get $5 - i32.const 100 - i32.div_u - local.set $6 - local.get $5 - i32.const 100 - i32.rem_u - local.set $7 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $8 - local.get $3 - local.get $7 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $9 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $8 - local.get $9 - i64.const 32 - i64.shl - i64.or - i64.store - br $continue|0 - end - unreachable - end - local.get $1 - i32.const 100 - i32.ge_u - if - local.get $1 - i32.const 100 - i32.div_u - local.set $7 - local.get $1 - i32.const 100 - i32.rem_u - local.set $6 - local.get $7 - local.set $1 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - end - local.get $1 - i32.const 10 - i32.ge_u - if - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - else - local.get $2 - i32.const 1 - i32.sub - local.set $2 - i32.const 48 - local.get $1 - i32.add - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store16 - end - ) - (func $~lib/util/number/decimalCount64 (; 11 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - (local $1 i32) - local.get $0 - i64.const 1000000000000000 - i64.lt_u - if - local.get $0 - i64.const 1000000000000 - i64.lt_u - if - i32.const 11 - i32.const 12 - local.get $0 - i64.const 100000000000 - i64.lt_u - select - local.set $1 - i32.const 10 - local.get $1 - local.get $0 - i64.const 10000000000 - i64.lt_u - select - return - else - i32.const 14 - i32.const 15 - local.get $0 - i64.const 100000000000000 - i64.lt_u - select - local.set $1 - i32.const 13 - local.get $1 - local.get $0 - i64.const 10000000000000 - i64.lt_u - select - return - end - unreachable - else - local.get $0 - i64.const 100000000000000000 - i64.lt_u - if - i32.const 16 - i32.const 17 - local.get $0 - i64.const 10000000000000000 - i64.lt_u - select - return - else - i32.const 19 - i32.const 20 - local.get $0 - i64.const -8446744073709551616 - i64.lt_u - select - local.set $1 - i32.const 18 - local.get $1 - local.get $0 - i64.const 1000000000000000000 - i64.lt_u - select - return - end - unreachable - end - unreachable - ) - (func $~lib/util/number/utoa64_lut (; 12 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) - (local $3 i32) - (local $4 i64) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i64) - (local $13 i64) - i32.const 592 - i32.load offset=4 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i64.const 100000000 - i64.ge_u - i32.eqz - br_if $break|0 - local.get $1 - i64.const 100000000 - i64.div_u - local.set $4 - local.get $1 - local.get $4 - i64.const 100000000 - i64.mul - i64.sub - i32.wrap_i64 - local.set $5 - local.get $4 - local.set $1 - local.get $5 - i32.const 10000 - i32.div_u - local.set $6 - local.get $5 - i32.const 10000 - i32.rem_u - local.set $7 - local.get $6 - i32.const 100 - i32.div_u - local.set $8 - local.get $6 - i32.const 100 - i32.rem_u - local.set $9 - local.get $7 - i32.const 100 - i32.div_u - local.set $10 - local.get $7 - i32.const 100 - i32.rem_u - local.set $11 - local.get $3 - local.get $10 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $12 - local.get $3 - local.get $11 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $13 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $12 - local.get $13 - i64.const 32 - i64.shl - i64.or - i64.store - local.get $3 - local.get $8 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $12 - local.get $3 - local.get $9 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $13 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $12 - local.get $13 - i64.const 32 - i64.shl - i64.or - i64.store - br $continue|0 - end - unreachable - end - local.get $0 - local.get $1 - i32.wrap_i64 - local.get $2 - call $~lib/util/number/utoa32_lut - ) - (func $~lib/util/number/utoa64 (; 13 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i64) - local.get $0 - i64.eqz - if - i32.const 152 - call $~lib/rt/stub/__retain - return - end - local.get $0 - i64.const 4294967295 - i64.le_u - if - local.get $0 - i32.wrap_i64 - local.set $2 - local.get $2 - call $~lib/util/number/decimalCount32 - local.set $3 - local.get $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/stub/__alloc - local.set $1 - local.get $1 - local.set $6 - local.get $2 - local.set $5 - local.get $3 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - else - local.get $0 - call $~lib/util/number/decimalCount64 - local.set $3 - local.get $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/stub/__alloc - local.set $1 - local.get $1 - local.set $5 - local.get $0 - local.set $7 - local.get $3 - local.set $4 - local.get $5 - local.get $7 - local.get $4 - call $~lib/util/number/utoa64_lut - end - local.get $1 - call $~lib/rt/stub/__retain - ) - (func $~lib/util/number/itoa (; 14 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - local.get $0 - call $~lib/util/number/utoa64 - return - ) - (func $~lib/number/U64#toString (; 15 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - local.get $0 - call $~lib/util/number/itoa - ) - (func $~lib/rt/stub/__release (; 16 ;) (type $FUNCSIG$vi) (param $0 i32) - nop - ) - (func $resolve-access/arrayAccess (; 17 ;) (type $FUNCSIG$i) (result i32) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 1 - i32.const 3 - i32.const 3 - i32.const 24 - call $~lib/rt/__allocArray - call $~lib/rt/stub/__retain - local.tee $1 - call $~lib/rt/stub/__retain - local.set $0 - local.get $0 - i32.const 0 - call $~lib/array/Array#__get - call $~lib/number/U64#toString - local.set $2 - local.get $1 - call $~lib/rt/stub/__release - local.get $0 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $resolve-access/Container#constructor (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.eqz - if - i32.const 8 - i32.const 6 - call $~lib/rt/stub/__alloc - call $~lib/rt/stub/__retain - local.set $0 - end - local.get $0 - i64.const 0 - i64.store - local.get $0 - ) - (func $resolve-access/fieldAccess (; 19 ;) (type $FUNCSIG$i) (result i32) - (local $0 i32) - (local $1 i32) - i32.const 0 - call $resolve-access/Container#constructor - local.set $0 - local.get $0 - i64.const 1 - i64.store - local.get $0 - i64.load - call $~lib/number/U64#toString - local.set $1 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - ) - (func $resolve-access/Container#toU32 (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i64.load - i32.wrap_i64 - ) - (func $~lib/util/number/utoa32 (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.eqz - if - i32.const 152 - call $~lib/rt/stub/__retain - return - end - local.get $0 - call $~lib/util/number/decimalCount32 - local.set $1 - local.get $1 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/stub/__alloc - local.set $2 - local.get $2 - local.set $5 - local.get $0 - local.set $4 - local.get $1 - local.set $3 - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/number/utoa32_lut - local.get $2 - call $~lib/rt/stub/__retain - ) - (func $~lib/util/number/itoa (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/utoa32 - return - ) - (func $~lib/number/U32#toString (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa - ) - (func $resolve-access/propertyAccess (; 24 ;) (type $FUNCSIG$i) (result i32) - (local $0 i32) - (local $1 i32) - i32.const 0 - call $resolve-access/Container#constructor - local.set $0 - local.get $0 - i64.const 1 - i64.store - local.get $0 - call $resolve-access/Container#toU32 - call $~lib/number/U32#toString - local.set $1 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - ) - (func $start (; 25 ;) (type $FUNCSIG$v) - global.get $~lib/heap/__heap_base - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - global.set $~lib/rt/stub/startOffset - global.get $~lib/rt/stub/startOffset - global.set $~lib/rt/stub/offset - ) - (func $null (; 26 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/resolve-binary.untouched.wat b/tests/compiler/resolve-binary.untouched.wat index b3292d57da..e69de29bb2 100644 --- a/tests/compiler/resolve-binary.untouched.wat +++ b/tests/compiler/resolve-binary.untouched.wat @@ -1,5764 +0,0 @@ -(module - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$ddd (func (param f64 f64) (result f64))) - (type $FUNCSIG$ddi (func (param f64 i32) (result f64))) - (type $FUNCSIG$idi (func (param f64 i32) (result i32))) - (type $FUNCSIG$id (func (param f64) (result i32))) - (type $FUNCSIG$iid (func (param i32 f64) (result i32))) - (type $FUNCSIG$jii (func (param i32 i32) (result i64))) - (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) - (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) - (type $FUNCSIG$v (func)) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (memory $0 1) - (data (i32.const 8) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00t\00r\00u\00e\00") - (data (i32.const 32) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00f\00a\00l\00s\00e\00") - (data (i32.const 64) "\"\00\00\00\01\00\00\00\01\00\00\00\"\00\00\00r\00e\00s\00o\00l\00v\00e\00-\00b\00i\00n\00a\00r\00y\00.\00t\00s\00") - (data (i32.const 120) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00a\00") - (data (i32.const 144) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") - (data (i32.const 168) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") - (data (i32.const 584) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\b8\00\00\00\b8\00\00\00\90\01\00\00d\00\00\00") - (data (i32.const 616) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\001\00") - (data (i32.const 640) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\002\00") - (data (i32.const 664) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") - (data (i32.const 688) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") - (data (i32.const 712) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 752) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 784) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8 (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa32 - return - ) - (func $~lib/number/I32#toString (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa - ) - (func $~lib/math/NativeMath.scalbn (; 14 ;) (type $FUNCSIG$ddi) (param $0 f64) (param $1 i32) (result f64) - (local $2 f64) - (local $3 i32) - (local $4 i32) - local.get $0 - local.set $2 - local.get $1 - i32.const 1023 - i32.gt_s - if - local.get $2 - f64.const 8988465674311579538646525e283 - f64.mul - local.set $2 - local.get $1 - i32.const 1023 - i32.sub - local.set $1 - local.get $1 - i32.const 1023 - i32.gt_s - if - local.get $2 - f64.const 8988465674311579538646525e283 - f64.mul - local.set $2 - local.get $1 - i32.const 1023 - i32.sub - local.tee $3 - i32.const 1023 - local.tee $4 - local.get $3 - local.get $4 - i32.lt_s - select - local.set $1 - end - else - local.get $1 - i32.const -1022 - i32.lt_s - if - local.get $2 - f64.const 2.2250738585072014e-308 - f64.const 9007199254740992 - f64.mul - f64.mul - local.set $2 - local.get $1 - i32.const 1022 - i32.const 53 - i32.sub - i32.add - local.set $1 - local.get $1 - i32.const -1022 - i32.lt_s - if - local.get $2 - f64.const 2.2250738585072014e-308 - f64.const 9007199254740992 - f64.mul - f64.mul - local.set $2 - local.get $1 - i32.const 1022 - i32.add - i32.const 53 - i32.sub - local.tee $3 - i32.const -1022 - local.tee $4 - local.get $3 - local.get $4 - i32.gt_s - select - local.set $1 - end - end - end - local.get $2 - i64.const 1023 - local.get $1 - i64.extend_i32_s - i64.add - i64.const 52 - i64.shl - f64.reinterpret_i64 - f64.mul - ) - (func $~lib/math/NativeMath.pow (; 15 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - (local $2 i64) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 f64) - (local $16 f64) - (local $17 f64) - (local $18 f64) - (local $19 f64) - (local $20 f64) - (local $21 f64) - (local $22 f64) - (local $23 f64) - (local $24 f64) - (local $25 f64) - (local $26 f64) - (local $27 f64) - (local $28 i32) - (local $29 i32) - (local $30 f64) - (local $31 f64) - (local $32 f64) - (local $33 f64) - (local $34 f64) - (local $35 f64) - (local $36 f64) - (local $37 f64) - (local $38 f64) - (local $39 f64) - (local $40 f64) - (local $41 i32) - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $3 - local.get $2 - i32.wrap_i64 - local.set $4 - local.get $1 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $5 - local.get $2 - i32.wrap_i64 - local.set $6 - local.get $3 - i32.const 2147483647 - i32.and - local.set $7 - local.get $5 - i32.const 2147483647 - i32.and - local.set $8 - local.get $8 - local.get $6 - i32.or - i32.const 0 - i32.eq - if - f64.const 1 - return - end - local.get $7 - i32.const 2146435072 - i32.gt_s - if (result i32) - i32.const 1 - else - local.get $7 - i32.const 2146435072 - i32.eq - if (result i32) - local.get $4 - i32.const 0 - i32.ne - else - i32.const 0 - end - end - if (result i32) - i32.const 1 - else - local.get $8 - i32.const 2146435072 - i32.gt_s - end - if (result i32) - i32.const 1 - else - local.get $8 - i32.const 2146435072 - i32.eq - if (result i32) - local.get $6 - i32.const 0 - i32.ne - else - i32.const 0 - end - end - if - local.get $0 - local.get $1 - f64.add - return - end - i32.const 0 - local.set $9 - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $8 - i32.const 1128267776 - i32.ge_s - if - i32.const 2 - local.set $9 - else - local.get $8 - i32.const 1072693248 - i32.ge_s - if - local.get $8 - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - local.set $10 - local.get $10 - i32.const 20 - i32.gt_s - local.set $11 - i32.const 52 - i32.const 20 - local.get $11 - select - local.get $10 - i32.sub - local.set $12 - local.get $6 - local.get $8 - local.get $11 - select - local.set $13 - local.get $13 - local.get $12 - i32.shr_s - local.set $14 - local.get $14 - local.get $12 - i32.shl - local.get $13 - i32.eq - if - i32.const 2 - local.get $14 - i32.const 1 - i32.and - i32.sub - local.set $9 - end - end - end - end - local.get $6 - i32.const 0 - i32.eq - if - local.get $8 - i32.const 2146435072 - i32.eq - if - local.get $7 - i32.const 1072693248 - i32.sub - local.get $4 - i32.or - i32.const 0 - i32.eq - if - f64.const nan:0x8000000000000 - return - else - local.get $7 - i32.const 1072693248 - i32.ge_s - if - local.get $5 - i32.const 0 - i32.ge_s - if (result f64) - local.get $1 - else - f64.const 0 - end - return - else - local.get $5 - i32.const 0 - i32.ge_s - if (result f64) - f64.const 0 - else - local.get $1 - f64.neg - end - return - end - unreachable - end - unreachable - end - local.get $8 - i32.const 1072693248 - i32.eq - if - local.get $5 - i32.const 0 - i32.ge_s - if - local.get $0 - return - end - f64.const 1 - local.get $0 - f64.div - return - end - local.get $5 - i32.const 1073741824 - i32.eq - if - local.get $0 - local.get $0 - f64.mul - return - end - local.get $5 - i32.const 1071644672 - i32.eq - if - local.get $3 - i32.const 0 - i32.ge_s - if - local.get $0 - f64.sqrt - return - end - end - end - local.get $0 - f64.abs - local.set $15 - local.get $4 - i32.const 0 - i32.eq - if - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $7 - i32.const 2146435072 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $7 - i32.const 1072693248 - i32.eq - end - if - local.get $15 - local.set $16 - local.get $5 - i32.const 0 - i32.lt_s - if - f64.const 1 - local.get $16 - f64.div - local.set $16 - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $7 - i32.const 1072693248 - i32.sub - local.get $9 - i32.or - i32.const 0 - i32.eq - if - local.get $16 - local.get $16 - f64.sub - local.set $17 - local.get $17 - local.get $17 - f64.div - local.set $16 - else - local.get $9 - i32.const 1 - i32.eq - if - local.get $16 - f64.neg - local.set $16 - end - end - end - local.get $16 - return - end - end - f64.const 1 - local.set $18 - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $9 - i32.const 0 - i32.eq - if - local.get $0 - local.get $0 - f64.sub - local.set $17 - local.get $17 - local.get $17 - f64.div - return - end - local.get $9 - i32.const 1 - i32.eq - if - f64.const -1 - local.set $18 - end - end - local.get $8 - i32.const 1105199104 - i32.gt_s - if - local.get $8 - i32.const 1139802112 - i32.gt_s - if - local.get $7 - i32.const 1072693247 - i32.le_s - if - local.get $5 - i32.const 0 - i32.lt_s - if (result f64) - f64.const 1.e+300 - f64.const 1.e+300 - f64.mul - else - f64.const 1e-300 - f64.const 1e-300 - f64.mul - end - return - end - local.get $7 - i32.const 1072693248 - i32.ge_s - if - local.get $5 - i32.const 0 - i32.gt_s - if (result f64) - f64.const 1.e+300 - f64.const 1.e+300 - f64.mul - else - f64.const 1e-300 - f64.const 1e-300 - f64.mul - end - return - end - end - local.get $7 - i32.const 1072693247 - i32.lt_s - if - local.get $5 - i32.const 0 - i32.lt_s - if (result f64) - local.get $18 - f64.const 1.e+300 - f64.mul - f64.const 1.e+300 - f64.mul - else - local.get $18 - f64.const 1e-300 - f64.mul - f64.const 1e-300 - f64.mul - end - return - end - local.get $7 - i32.const 1072693248 - i32.gt_s - if - local.get $5 - i32.const 0 - i32.gt_s - if (result f64) - local.get $18 - f64.const 1.e+300 - f64.mul - f64.const 1.e+300 - f64.mul - else - local.get $18 - f64.const 1e-300 - f64.mul - f64.const 1e-300 - f64.mul - end - return - end - local.get $15 - f64.const 1 - f64.sub - local.set $24 - local.get $24 - local.get $24 - f64.mul - f64.const 0.5 - local.get $24 - f64.const 0.3333333333333333 - local.get $24 - f64.const 0.25 - f64.mul - f64.sub - f64.mul - f64.sub - f64.mul - local.set $27 - f64.const 1.4426950216293335 - local.get $24 - f64.mul - local.set $25 - local.get $24 - f64.const 1.9259629911266175e-08 - f64.mul - local.get $27 - f64.const 1.4426950408889634 - f64.mul - f64.sub - local.set $26 - local.get $25 - local.get $26 - f64.add - local.set $19 - local.get $19 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $19 - local.get $26 - local.get $19 - local.get $25 - f64.sub - f64.sub - local.set $20 - else - i32.const 0 - local.set $29 - local.get $7 - i32.const 1048576 - i32.lt_s - if - local.get $15 - f64.const 9007199254740992 - f64.mul - local.set $15 - local.get $29 - i32.const 53 - i32.sub - local.set $29 - local.get $15 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $7 - end - local.get $29 - local.get $7 - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - i32.add - local.set $29 - local.get $7 - i32.const 1048575 - i32.and - local.set $28 - local.get $28 - i32.const 1072693248 - i32.or - local.set $7 - local.get $28 - i32.const 235662 - i32.le_s - if - i32.const 0 - local.set $10 - else - local.get $28 - i32.const 767610 - i32.lt_s - if - i32.const 1 - local.set $10 - else - i32.const 0 - local.set $10 - local.get $29 - i32.const 1 - i32.add - local.set $29 - local.get $7 - i32.const 1048576 - i32.sub - local.set $7 - end - end - local.get $15 - i64.reinterpret_f64 - i64.const 4294967295 - i64.and - local.get $7 - i64.extend_i32_s - i64.const 32 - i64.shl - i64.or - f64.reinterpret_i64 - local.set $15 - f64.const 1.5 - f64.const 1 - local.get $10 - select - local.set $35 - local.get $15 - local.get $35 - f64.sub - local.set $25 - f64.const 1 - local.get $15 - local.get $35 - f64.add - f64.div - local.set $26 - local.get $25 - local.get $26 - f64.mul - local.set $17 - local.get $17 - local.set $31 - local.get $31 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $31 - local.get $7 - i32.const 1 - i32.shr_s - i32.const 536870912 - i32.or - i32.const 524288 - i32.add - local.get $10 - i32.const 18 - i32.shl - i32.add - i64.extend_i32_s - i64.const 32 - i64.shl - f64.reinterpret_i64 - local.set $33 - local.get $15 - local.get $33 - local.get $35 - f64.sub - f64.sub - local.set $34 - local.get $26 - local.get $25 - local.get $31 - local.get $33 - f64.mul - f64.sub - local.get $31 - local.get $34 - f64.mul - f64.sub - f64.mul - local.set $32 - local.get $17 - local.get $17 - f64.mul - local.set $30 - local.get $30 - local.get $30 - f64.mul - f64.const 0.5999999999999946 - local.get $30 - f64.const 0.4285714285785502 - local.get $30 - f64.const 0.33333332981837743 - local.get $30 - f64.const 0.272728123808534 - local.get $30 - f64.const 0.23066074577556175 - local.get $30 - f64.const 0.20697501780033842 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $23 - local.get $23 - local.get $32 - local.get $31 - local.get $17 - f64.add - f64.mul - f64.add - local.set $23 - local.get $31 - local.get $31 - f64.mul - local.set $30 - f64.const 3 - local.get $30 - f64.add - local.get $23 - f64.add - local.set $33 - local.get $33 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $33 - local.get $23 - local.get $33 - f64.const 3 - f64.sub - local.get $30 - f64.sub - f64.sub - local.set $34 - local.get $31 - local.get $33 - f64.mul - local.set $25 - local.get $32 - local.get $33 - f64.mul - local.get $34 - local.get $17 - f64.mul - f64.add - local.set $26 - local.get $25 - local.get $26 - f64.add - local.set $21 - local.get $21 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $21 - local.get $26 - local.get $21 - local.get $25 - f64.sub - f64.sub - local.set $22 - f64.const 0.9617967009544373 - local.get $21 - f64.mul - local.set $36 - f64.const 1.350039202129749e-08 - f64.const 0 - local.get $10 - select - local.set $37 - f64.const -7.028461650952758e-09 - local.get $21 - f64.mul - local.get $22 - f64.const 0.9617966939259756 - f64.mul - f64.add - local.get $37 - f64.add - local.set $38 - local.get $29 - f64.convert_i32_s - local.set $24 - f64.const 0.5849624872207642 - f64.const 0 - local.get $10 - select - local.set $39 - local.get $36 - local.get $38 - f64.add - local.get $39 - f64.add - local.get $24 - f64.add - local.set $19 - local.get $19 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $19 - local.get $38 - local.get $19 - local.get $24 - f64.sub - local.get $39 - f64.sub - local.get $36 - f64.sub - f64.sub - local.set $20 - end - local.get $1 - local.set $40 - local.get $40 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $40 - local.get $1 - local.get $40 - f64.sub - local.get $19 - f64.mul - local.get $1 - local.get $20 - f64.mul - f64.add - local.set $22 - local.get $40 - local.get $19 - f64.mul - local.set $21 - local.get $22 - local.get $21 - f64.add - local.set $16 - local.get $16 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $28 - local.get $2 - i32.wrap_i64 - local.set $41 - local.get $28 - i32.const 1083179008 - i32.ge_s - if - local.get $28 - i32.const 1083179008 - i32.sub - local.get $41 - i32.or - i32.const 0 - i32.ne - if - local.get $18 - f64.const 1.e+300 - f64.mul - f64.const 1.e+300 - f64.mul - return - end - local.get $22 - f64.const 8.008566259537294e-17 - f64.add - local.get $16 - local.get $21 - f64.sub - f64.gt - if - local.get $18 - f64.const 1.e+300 - f64.mul - f64.const 1.e+300 - f64.mul - return - end - else - local.get $28 - i32.const 2147483647 - i32.and - i32.const 1083231232 - i32.ge_s - if - local.get $28 - i32.const -1064252416 - i32.sub - local.get $41 - i32.or - i32.const 0 - i32.ne - if - local.get $18 - f64.const 1e-300 - f64.mul - f64.const 1e-300 - f64.mul - return - end - local.get $22 - local.get $16 - local.get $21 - f64.sub - f64.le - if - local.get $18 - f64.const 1e-300 - f64.mul - f64.const 1e-300 - f64.mul - return - end - end - end - local.get $28 - i32.const 2147483647 - i32.and - local.set $41 - local.get $41 - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - local.set $10 - i32.const 0 - local.set $29 - local.get $41 - i32.const 1071644672 - i32.gt_s - if - local.get $28 - i32.const 1048576 - local.get $10 - i32.const 1 - i32.add - i32.shr_s - i32.add - local.set $29 - local.get $29 - i32.const 2147483647 - i32.and - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - local.set $10 - f64.const 0 - local.set $24 - local.get $29 - i32.const 1048575 - local.get $10 - i32.shr_s - i32.const -1 - i32.xor - i32.and - i64.extend_i32_s - i64.const 32 - i64.shl - f64.reinterpret_i64 - local.set $24 - local.get $29 - i32.const 1048575 - i32.and - i32.const 1048576 - i32.or - i32.const 20 - local.get $10 - i32.sub - i32.shr_s - local.set $29 - local.get $28 - i32.const 0 - i32.lt_s - if - i32.const 0 - local.get $29 - i32.sub - local.set $29 - end - local.get $21 - local.get $24 - f64.sub - local.set $21 - end - local.get $22 - local.get $21 - f64.add - local.set $24 - local.get $24 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $24 - local.get $24 - f64.const 0.6931471824645996 - f64.mul - local.set $25 - local.get $22 - local.get $24 - local.get $21 - f64.sub - f64.sub - f64.const 0.6931471805599453 - f64.mul - local.get $24 - f64.const -1.904654299957768e-09 - f64.mul - f64.add - local.set $26 - local.get $25 - local.get $26 - f64.add - local.set $16 - local.get $26 - local.get $16 - local.get $25 - f64.sub - f64.sub - local.set $27 - local.get $16 - local.get $16 - f64.mul - local.set $24 - local.get $16 - local.get $24 - f64.const 0.16666666666666602 - local.get $24 - f64.const -2.7777777777015593e-03 - local.get $24 - f64.const 6.613756321437934e-05 - local.get $24 - f64.const -1.6533902205465252e-06 - local.get $24 - f64.const 4.1381367970572385e-08 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.sub - local.set $19 - local.get $16 - local.get $19 - f64.mul - local.get $19 - f64.const 2 - f64.sub - f64.div - local.get $27 - local.get $16 - local.get $27 - f64.mul - f64.add - f64.sub - local.set $23 - f64.const 1 - local.get $23 - local.get $16 - f64.sub - f64.sub - local.set $16 - local.get $16 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $28 - local.get $28 - local.get $29 - i32.const 20 - i32.shl - i32.add - local.set $28 - local.get $28 - i32.const 20 - i32.shr_s - i32.const 0 - i32.le_s - if - local.get $16 - local.get $29 - call $~lib/math/NativeMath.scalbn - local.set $16 - else - local.get $16 - i64.reinterpret_f64 - i64.const 4294967295 - i64.and - local.get $28 - i64.extend_i32_s - i64.const 32 - i64.shl - i64.or - f64.reinterpret_i64 - local.set $16 - end - local.get $18 - local.get $16 - f64.mul - ) - (func $~lib/number/isFinite (; 16 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.eq - ) - (func $~lib/number/isNaN (; 17 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.ne - ) - (func $~lib/array/Array#__unchecked_get (; 18 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - i64.load - ) - (func $~lib/array/Array#__unchecked_get (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.load16_s - ) - (func $~lib/util/number/genDigits (; 20 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i64) - (local $11 i32) - (local $12 i32) - (local $13 i64) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i32) - (local $25 i32) - (local $26 i32) - i32.const 0 - local.get $4 - i32.sub - local.set $7 - i64.const 1 - local.get $7 - i64.extend_i32_s - i64.shl - local.set $8 - local.get $8 - i64.const 1 - i64.sub - local.set $9 - local.get $3 - local.get $1 - i64.sub - local.set $10 - local.get $4 - local.set $11 - local.get $3 - local.get $7 - i64.extend_i32_s - i64.shr_u - i32.wrap_i64 - local.set $12 - local.get $3 - local.get $9 - i64.and - local.set $13 - local.get $12 - call $~lib/util/number/decimalCount32 - local.set $14 - local.get $6 - local.set $15 - i32.const 1824 - i32.load offset=4 - local.set $16 - block $break|0 - loop $continue|0 - local.get $14 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|0 - block $break|1 - block $case10|1 - block $case9|1 - block $case8|1 - block $case7|1 - block $case6|1 - block $case5|1 - block $case4|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $14 - local.set $18 - local.get $18 - i32.const 10 - i32.eq - br_if $case0|1 - local.get $18 - i32.const 9 - i32.eq - br_if $case1|1 - local.get $18 - i32.const 8 - i32.eq - br_if $case2|1 - local.get $18 - i32.const 7 - i32.eq - br_if $case3|1 - local.get $18 - i32.const 6 - i32.eq - br_if $case4|1 - local.get $18 - i32.const 5 - i32.eq - br_if $case5|1 - local.get $18 - i32.const 4 - i32.eq - br_if $case6|1 - local.get $18 - i32.const 3 - i32.eq - br_if $case7|1 - local.get $18 - i32.const 2 - i32.eq - br_if $case8|1 - local.get $18 - i32.const 1 - i32.eq - br_if $case9|1 - br $case10|1 - end - local.get $12 - i32.const 1000000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100 - i32.div_u - local.set $17 - local.get $12 - i32.const 100 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10 - i32.div_u - local.set $17 - local.get $12 - i32.const 10 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - local.set $17 - i32.const 0 - local.set $12 - br $break|1 - end - i32.const 0 - local.set $17 - br $break|1 - end - local.get $17 - local.get $15 - i32.or - if - local.get $0 - local.get $15 - local.tee $18 - i32.const 1 - i32.add - local.set $15 - local.get $18 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $17 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $12 - i64.extend_i32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.get $13 - i64.add - local.set $19 - local.get $19 - local.get $5 - i64.le_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $19 - local.set $22 - local.get $16 - local.get $14 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $25 - local.get $25 - i32.load16_u - local.set $26 - block $break|2 - loop $continue|2 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|2 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|2 - end - unreachable - end - local.get $25 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|0 - end - unreachable - end - loop $continue|3 - local.get $13 - i64.const 10 - i64.mul - local.set $13 - local.get $5 - i64.const 10 - i64.mul - local.set $5 - local.get $13 - local.get $7 - i64.extend_i32_s - i64.shr_u - local.set $19 - local.get $19 - local.get $15 - i64.extend_i32_s - i64.or - i64.const 0 - i64.ne - if - local.get $0 - local.get $15 - local.tee $17 - i32.const 1 - i32.add - local.set $15 - local.get $17 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $19 - i32.wrap_i64 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $13 - local.get $9 - i64.and - local.set $13 - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $13 - local.get $5 - i64.lt_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $10 - local.get $16 - i32.const 0 - local.get $14 - i32.sub - i32.const 2 - i32.shl - i32.add - i64.load32_u - i64.mul - local.set $10 - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $13 - local.set $22 - local.get $8 - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $17 - local.get $17 - i32.load16_u - local.set $26 - block $break|4 - loop $continue|4 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|4 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|4 - end - unreachable - end - local.get $17 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|3 - end - unreachable - ) - (func $~lib/util/memory/memcpy (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - loop $continue|0 - local.get $2 - if (result i32) - local.get $1 - i32.const 3 - i32.and - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $0 - i32.const 3 - i32.and - i32.const 0 - i32.eq - if - block $break|1 - loop $continue|1 - local.get $2 - i32.const 16 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $1 - i32.const 8 - i32.add - i32.load - i32.store - local.get $0 - i32.const 12 - i32.add - local.get $1 - i32.const 12 - i32.add - i32.load - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|1 - end - unreachable - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.set $0 - local.get $1 - i32.const 4 - i32.add - local.set $1 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.get $1 - i32.load16_u - i32.store16 - local.get $0 - i32.const 2 - i32.add - local.set $0 - local.get $1 - i32.const 2 - i32.add - local.set $1 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - return - end - local.get $2 - i32.const 32 - i32.ge_u - if - block $break|2 - block $case2|2 - block $case1|2 - block $case0|2 - local.get $0 - i32.const 3 - i32.and - local.set $5 - local.get $5 - i32.const 1 - i32.eq - br_if $case0|2 - local.get $5 - i32.const 2 - i32.eq - br_if $case1|2 - local.get $5 - i32.const 3 - i32.eq - br_if $case2|2 - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 3 - i32.sub - local.set $2 - block $break|3 - loop $continue|3 - local.get $2 - i32.const 17 - i32.ge_u - i32.eqz - br_if $break|3 - local.get $1 - i32.const 1 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 5 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 9 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 13 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|3 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - block $break|4 - loop $continue|4 - local.get $2 - i32.const 18 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $1 - i32.const 2 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 6 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 10 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 14 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|4 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - block $break|5 - loop $continue|5 - local.get $2 - i32.const 19 - i32.ge_u - i32.eqz - br_if $break|5 - local.get $1 - i32.const 3 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 7 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 11 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 15 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|5 - end - unreachable - end - br $break|2 - end - end - local.get $2 - i32.const 16 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - ) - (func $~lib/memory/memory.copy (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - block $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - local.get $4 - i32.eq - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $4 - local.get $3 - i32.add - local.get $5 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $5 - local.get $3 - i32.add - local.get $4 - i32.le_u - end - if - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $4 - i32.lt_u - if - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|0 - loop $continue|0 - local.get $5 - i32.const 7 - i32.and - i32.eqz - br_if $break|0 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $3 - i32.const 1 - i32.sub - local.set $3 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - br $continue|0 - end - unreachable - end - block $break|1 - loop $continue|1 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $5 - local.get $4 - i64.load - i64.store - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - i32.const 8 - i32.add - local.set $5 - local.get $4 - i32.const 8 - i32.add - local.set $4 - br $continue|1 - end - unreachable - end - end - block $break|2 - loop $continue|2 - local.get $3 - i32.eqz - br_if $break|2 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - local.get $3 - i32.const 1 - i32.sub - local.set $3 - br $continue|2 - end - unreachable - end - else - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|3 - loop $continue|3 - local.get $5 - local.get $3 - i32.add - i32.const 7 - i32.and - i32.eqz - br_if $break|3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - local.get $3 - i32.add - local.get $4 - local.get $3 - i32.add - i64.load - i64.store - br $continue|4 - end - unreachable - end - end - block $break|5 - loop $continue|5 - local.get $3 - i32.eqz - br_if $break|5 - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|5 - end - unreachable - end - end - end - ) - (func $~lib/util/number/prettify (; 23 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $2 - i32.eqz - if - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 2 - i32.add - return - end - local.get $1 - local.get $2 - i32.add - local.set $3 - local.get $1 - local.get $3 - i32.le_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - block $break|0 - local.get $1 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $3 - i32.const 2 - i32.add - return - else - local.get $3 - i32.const 0 - i32.gt_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $4 - local.get $4 - i32.const 2 - i32.add - local.get $4 - i32.const 0 - local.get $2 - i32.sub - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.store16 - local.get $1 - i32.const 1 - i32.add - return - else - i32.const -6 - local.get $3 - i32.lt_s - if (result i32) - local.get $3 - i32.const 0 - i32.le_s - else - i32.const 0 - end - if - i32.const 2 - local.get $3 - i32.sub - local.set $4 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $1 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - i32.const 48 - i32.const 46 - i32.const 16 - i32.shl - i32.or - i32.store - block $break|1 - i32.const 2 - local.set $5 - loop $loop|1 - local.get $5 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|1 - end - unreachable - end - local.get $1 - local.get $4 - i32.add - return - else - local.get $1 - i32.const 1 - i32.eq - if - local.get $0 - i32.const 101 - i32.store16 offset=2 - local.get $0 - i32.const 4 - i32.add - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - local.get $5 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $5 - i32.sub - local.set $5 - end - local.get $5 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $7 - local.get $4 - local.set $10 - local.get $5 - local.set $9 - local.get $7 - local.set $8 - local.get $10 - local.get $9 - local.get $8 - call $~lib/util/number/utoa32_lut - local.get $4 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $7 - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - else - local.get $1 - i32.const 1 - i32.shl - local.set $7 - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.const 2 - i32.add - local.get $7 - i32.const 2 - i32.sub - call $~lib/memory/memory.copy - local.get $0 - i32.const 46 - i32.store16 offset=2 - local.get $0 - local.get $7 - i32.add - i32.const 101 - i32.store16 offset=2 - local.get $1 - local.get $0 - local.get $7 - i32.add - i32.const 4 - i32.add - local.set $9 - local.get $3 - i32.const 1 - i32.sub - local.set $8 - local.get $8 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $8 - i32.sub - local.set $8 - end - local.get $8 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $4 - local.get $9 - local.set $11 - local.get $8 - local.set $5 - local.get $4 - local.set $10 - local.get $11 - local.get $5 - local.get $10 - call $~lib/util/number/utoa32_lut - local.get $9 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $4 - i32.add - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - end - unreachable - end - unreachable - end - unreachable - end - unreachable - ) - (func $~lib/util/number/dtoa_core (; 24 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 i64) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i32) - (local $11 i64) - (local $12 i64) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 f64) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i64) - (local $25 i64) - (local $26 i32) - (local $27 i64) - (local $28 i32) - local.get $1 - f64.const 0 - f64.lt - local.set $2 - local.get $2 - if - local.get $1 - f64.neg - local.set $1 - local.get $0 - i32.const 45 - i32.store16 - end - local.get $1 - local.set $5 - local.get $0 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i64.reinterpret_f64 - local.set $6 - local.get $6 - i64.const 9218868437227405312 - i64.and - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.set $7 - local.get $6 - i64.const 4503599627370495 - i64.and - local.set $8 - local.get $7 - i32.const 0 - i32.ne - i64.extend_i32_u - i64.const 52 - i64.shl - local.get $8 - i64.add - local.set $9 - local.get $7 - i32.const 1 - local.get $7 - i32.const 0 - i32.ne - select - i32.const 1023 - i32.const 52 - i32.add - i32.sub - local.set $7 - local.get $9 - local.set $11 - local.get $7 - local.set $10 - local.get $11 - i64.const 1 - i64.shl - i64.const 1 - i64.add - local.set $12 - local.get $10 - i32.const 1 - i32.sub - local.set $13 - local.get $12 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $12 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $12 - local.get $13 - local.get $14 - i32.sub - local.set $13 - i32.const 1 - local.get $11 - i64.const 4503599627370496 - i64.eq - i32.add - local.set $15 - local.get $12 - global.set $~lib/util/number/_frc_plus - local.get $11 - local.get $15 - i64.extend_i32_s - i64.shl - i64.const 1 - i64.sub - local.get $10 - local.get $15 - i32.sub - local.get $13 - i32.sub - i64.extend_i32_s - i64.shl - global.set $~lib/util/number/_frc_minus - local.get $13 - global.set $~lib/util/number/_exp - global.get $~lib/util/number/_exp - local.set $10 - i32.const -61 - local.get $10 - i32.sub - f64.convert_i32_s - f64.const 0.30102999566398114 - f64.mul - f64.const 347 - f64.add - local.set $16 - local.get $16 - i32.trunc_f64_s - local.set $15 - local.get $15 - local.get $15 - f64.convert_i32_s - local.get $16 - f64.ne - i32.add - local.set $15 - local.get $15 - i32.const 3 - i32.shr_s - i32.const 1 - i32.add - local.set $14 - i32.const 348 - local.get $14 - i32.const 3 - i32.shl - i32.sub - global.set $~lib/util/number/_K - i32.const 1512 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_frc_pow - i32.const 1736 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_exp_pow - local.get $9 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $9 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $9 - local.get $7 - local.get $14 - i32.sub - local.set $7 - global.get $~lib/util/number/_frc_pow - local.set $12 - global.get $~lib/util/number/_exp_pow - local.set $15 - local.get $9 - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $24 - local.get $24 - i64.const 2147483647 - i64.add - local.set $24 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $24 - i64.const 32 - i64.shr_u - local.set $24 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $24 - i64.add - local.set $24 - local.get $7 - local.set $10 - local.get $15 - local.set $13 - local.get $10 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $10 - global.get $~lib/util/number/_frc_plus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $23 - local.get $11 - i64.const 4294967295 - i64.and - local.set $22 - local.get $17 - i64.const 32 - i64.shr_u - local.set $21 - local.get $11 - i64.const 32 - i64.shr_u - local.set $20 - local.get $23 - local.get $22 - i64.mul - local.set $19 - local.get $21 - local.get $22 - i64.mul - local.get $19 - i64.const 32 - i64.shr_u - i64.add - local.set $18 - local.get $23 - local.get $20 - i64.mul - local.get $18 - i64.const 4294967295 - i64.and - i64.add - local.set $25 - local.get $25 - i64.const 2147483647 - i64.add - local.set $25 - local.get $18 - i64.const 32 - i64.shr_u - local.set $18 - local.get $25 - i64.const 32 - i64.shr_u - local.set $25 - local.get $21 - local.get $20 - i64.mul - local.get $18 - i64.add - local.get $25 - i64.add - i64.const 1 - i64.sub - local.set $25 - global.get $~lib/util/number/_exp - local.set $26 - local.get $15 - local.set $13 - local.get $26 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $26 - global.get $~lib/util/number/_frc_minus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $27 - local.get $27 - i64.const 2147483647 - i64.add - local.set $27 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $27 - i64.const 32 - i64.shr_u - local.set $27 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $27 - i64.add - i64.const 1 - i64.add - local.set $27 - local.get $25 - local.get $27 - i64.sub - local.set $23 - local.get $4 - local.get $24 - local.get $10 - local.get $25 - local.get $26 - local.get $23 - local.get $3 - call $~lib/util/number/genDigits - local.set $28 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $28 - local.get $2 - i32.sub - global.get $~lib/util/number/_K - call $~lib/util/number/prettify - local.set $28 - local.get $28 - local.get $2 - i32.add - ) - (func $~lib/string/String#substring (; 25 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $6 - local.get $2 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $7 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - i32.const 1 - i32.shl - local.set $8 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - i32.const 1 - i32.shl - local.set $9 - local.get $9 - local.get $8 - i32.sub - local.set $3 - local.get $3 - i32.eqz - if - i32.const 1856 - call $~lib/rt/stub/__retain - return - end - local.get $8 - i32.eqz - if (result i32) - local.get $9 - local.get $0 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - i32.eq - else - i32.const 0 - end - if - local.get $0 - call $~lib/rt/stub/__retain - return - end - local.get $3 - i32.const 1 - call $~lib/rt/stub/__alloc - local.set $10 - local.get $10 - local.get $0 - local.get $8 - i32.add - local.get $3 - call $~lib/memory/memory.copy - local.get $10 - call $~lib/rt/stub/__retain - ) - (func $~lib/rt/stub/__free (; 26 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1872 - i32.const 71 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 16 - i32.sub - local.set $1 - local.get $1 - i32.load offset=4 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 1872 - i32.const 73 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - i32.load - i32.add - global.get $~lib/rt/stub/offset - i32.eq - if - local.get $1 - global.set $~lib/rt/stub/offset - end - ) - (func $~lib/util/number/dtoa (; 27 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - f64.const 0 - f64.eq - if - i32.const 680 - call $~lib/rt/stub/__retain - return - end - local.get $0 - call $~lib/number/isFinite - i32.eqz - if - local.get $0 - call $~lib/number/isNaN - if - i32.const 704 - call $~lib/rt/stub/__retain - return - end - i32.const 728 - i32.const 768 - local.get $0 - f64.const 0 - f64.lt - select - call $~lib/rt/stub/__retain - return - end - i32.const 28 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/stub/__alloc - local.set $1 - local.get $1 - local.get $0 - call $~lib/util/number/dtoa_core - local.set $2 - local.get $2 - i32.const 28 - i32.eq - if - local.get $1 - call $~lib/rt/stub/__retain - return - end - local.get $1 - i32.const 0 - local.get $2 - call $~lib/string/String#substring - local.set $3 - local.get $1 - call $~lib/rt/stub/__free - local.get $3 - ) - (func $~lib/number/F64#toString (; 28 ;) (type $FUNCSIG$idi) (param $0 f64) (param $1 i32) (result i32) - local.get $0 - call $~lib/util/number/dtoa - ) - (func $resolve-binary/Foo#constructor (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 6 - call $~lib/rt/stub/__alloc - call $~lib/rt/stub/__retain - local.set $0 - end - local.get $0 - ) - (func $resolve-binary/Foo#lt (; 30 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/stub/__retain - drop - i32.const 2016 - call $~lib/rt/stub/__retain - local.set $2 - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $~lib/string/String#toString (; 31 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/rt/stub/__retain - ) - (func $resolve-binary/Foo#gt (; 32 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/stub/__retain - drop - i32.const 2040 - call $~lib/rt/stub/__retain - local.set $2 - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $resolve-binary/Foo#le (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/stub/__retain - drop - i32.const 2064 - call $~lib/rt/stub/__retain - local.set $2 - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $resolve-binary/Foo#ge (; 34 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/stub/__retain - drop - i32.const 2088 - call $~lib/rt/stub/__retain - local.set $2 - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $resolve-binary/Foo#eq (; 35 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/stub/__retain - drop - i32.const 2112 - call $~lib/rt/stub/__retain - local.set $2 - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $resolve-binary/Foo#ne (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/stub/__retain - drop - i32.const 2136 - call $~lib/rt/stub/__retain - local.set $2 - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $resolve-binary/Foo#add (; 37 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/stub/__retain - drop - i32.const 2160 - call $~lib/rt/stub/__retain - local.set $2 - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $resolve-binary/Foo.sub (; 38 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - local.get $1 - call $~lib/rt/stub/__retain - drop - i32.const 2184 - call $~lib/rt/stub/__retain - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $resolve-binary/Foo#mul (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/stub/__retain - drop - i32.const 2208 - call $~lib/rt/stub/__retain - local.set $2 - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $resolve-binary/Foo#div (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/stub/__retain - drop - i32.const 2232 - call $~lib/rt/stub/__retain - local.set $2 - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $resolve-binary/Foo#rem (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/stub/__retain - drop - i32.const 2256 - call $~lib/rt/stub/__retain - local.set $2 - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $resolve-binary/Foo#pow (; 42 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/stub/__retain - drop - i32.const 2280 - call $~lib/rt/stub/__retain - local.set $2 - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $resolve-binary/Bar#constructor (; 43 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 7 - call $~lib/rt/stub/__alloc - call $~lib/rt/stub/__retain - local.set $0 - end - local.get $0 - ) - (func $resolve-binary/Bar#add (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $1 - call $~lib/rt/stub/__retain - drop - local.get $1 - ) - (func $resolve-binary/Bar#self (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/rt/stub/__retain - ) - (func $start:resolve-binary (; 46 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i32) - (local $20 i32) - (local $21 i32) - (local $22 i32) - (local $23 i32) - (local $24 i32) - (local $25 i32) - (local $26 i32) - (local $27 i32) - (local $28 i32) - (local $29 i32) - (local $30 i32) - (local $31 i32) - (local $32 i32) - (local $33 i32) - (local $34 i32) - (local $35 i32) - (local $36 i32) - (local $37 i32) - (local $38 i32) - (local $39 i32) - (local $40 i32) - (local $41 i32) - (local $42 i32) - (local $43 i32) - (local $44 i32) - (local $45 i32) - (local $46 i32) - (local $47 i32) - (local $48 i32) - (local $49 i32) - (local $50 i32) - (local $51 i32) - (local $52 i32) - (local $53 i32) - (local $54 i32) - (local $55 i32) - (local $56 i32) - (local $57 i32) - (local $58 i32) - (local $59 i32) - (local $60 i32) - (local $61 i32) - (local $62 i32) - (local $63 i32) - i32.const 1 - call $~lib/number/Bool#toString - local.tee $0 - i32.const 24 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 2 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/number/Bool#toString - local.tee $1 - i32.const 48 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 7 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - call $~lib/number/Bool#toString - local.tee $2 - i32.const 24 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 12 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/number/Bool#toString - local.tee $3 - i32.const 48 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 17 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/number/Bool#toString - local.tee $4 - i32.const 48 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 22 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - call $~lib/number/Bool#toString - local.tee $5 - i32.const 24 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 27 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - call $~lib/number/Bool#toString - local.tee $6 - i32.const 24 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 34 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/number/Bool#toString - local.tee $7 - i32.const 48 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 39 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/heap/__heap_base - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - global.set $~lib/rt/stub/startOffset - global.get $~lib/rt/stub/startOffset - global.set $~lib/rt/stub/offset - i32.const 1 - global.set $resolve-binary/a - global.get $resolve-binary/a - call $~lib/number/I32#toString - local.tee $8 - i32.const 632 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 48 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/a - i32.const 1 - i32.add - global.set $resolve-binary/a - global.get $resolve-binary/a - call $~lib/number/I32#toString - local.tee $9 - i32.const 656 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 53 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/a - i32.const 1 - i32.sub - global.set $resolve-binary/a - global.get $resolve-binary/a - call $~lib/number/I32#toString - local.tee $10 - i32.const 632 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 58 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/a - i32.const 2 - i32.mul - global.set $resolve-binary/a - global.get $resolve-binary/a - call $~lib/number/I32#toString - local.tee $11 - i32.const 656 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 63 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2 - global.set $resolve-binary/f - global.get $resolve-binary/f - f64.const 2 - call $~lib/math/NativeMath.pow - global.set $resolve-binary/f - global.get $resolve-binary/f - i32.const 0 - call $~lib/number/F64#toString - local.tee $12 - i32.const 1920 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 69 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4 - global.set $resolve-binary/a - global.get $resolve-binary/a - i32.const 2 - i32.div_s - global.set $resolve-binary/a - global.get $resolve-binary/a - call $~lib/number/I32#toString - local.tee $13 - i32.const 656 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 75 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/a - i32.const 3 - i32.rem_s - global.set $resolve-binary/a - global.get $resolve-binary/a - call $~lib/number/I32#toString - local.tee $14 - i32.const 656 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 80 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/a - i32.const 1 - i32.shl - global.set $resolve-binary/a - global.get $resolve-binary/a - call $~lib/number/I32#toString - local.tee $15 - i32.const 1944 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 85 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/a - i32.const 1 - i32.shr_s - global.set $resolve-binary/a - global.get $resolve-binary/a - call $~lib/number/I32#toString - local.tee $16 - i32.const 656 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 90 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/a - i32.const 1 - i32.shr_u - global.set $resolve-binary/a - global.get $resolve-binary/a - call $~lib/number/I32#toString - local.tee $17 - i32.const 632 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 95 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/a - i32.const 3 - i32.and - global.set $resolve-binary/a - global.get $resolve-binary/a - call $~lib/number/I32#toString - local.tee $18 - i32.const 632 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 100 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/a - i32.const 3 - i32.or - global.set $resolve-binary/a - global.get $resolve-binary/a - call $~lib/number/I32#toString - local.tee $19 - i32.const 1968 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 105 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/a - i32.const 2 - i32.xor - global.set $resolve-binary/a - global.get $resolve-binary/a - call $~lib/number/I32#toString - local.tee $20 - i32.const 632 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 110 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - call $~lib/number/I32#toString - local.tee $21 - i32.const 1968 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 117 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - call $~lib/number/I32#toString - local.tee $22 - i32.const 1992 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 122 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2 - call $~lib/number/I32#toString - local.tee $23 - i32.const 656 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 127 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2 - call $~lib/number/I32#toString - local.tee $24 - i32.const 656 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 132 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - call $~lib/number/I32#toString - local.tee $25 - i32.const 632 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 137 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2 - f64.const 2 - call $~lib/math/NativeMath.pow - i32.const 0 - call $~lib/number/F64#toString - local.tee $26 - i32.const 1920 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 144 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4 - call $~lib/number/I32#toString - local.tee $27 - i32.const 1944 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 151 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - call $~lib/number/I32#toString - local.tee $28 - i32.const 632 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 156 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - call $~lib/number/I32#toString - local.tee $29 - i32.const 1968 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 161 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - call $~lib/number/I32#toString - local.tee $30 - i32.const 632 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 168 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - call $~lib/number/I32#toString - local.tee $31 - i32.const 1968 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 173 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2 - call $~lib/number/I32#toString - local.tee $32 - i32.const 656 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 178 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2 - call $~lib/number/I32#toString - local.tee $33 - i32.const 656 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 185 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/number/I32#toString - local.tee $34 - i32.const 160 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 190 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - call $~lib/number/I32#toString - local.tee $35 - i32.const 632 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 195 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2 - call $~lib/number/I32#toString - local.tee $36 - i32.const 656 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 200 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $resolve-binary/Foo#constructor - global.set $resolve-binary/foo - global.get $resolve-binary/foo - global.get $resolve-binary/foo - call $resolve-binary/Foo#lt - local.tee $37 - call $~lib/string/String#toString - local.tee $38 - i32.const 2016 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 261 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/foo - global.get $resolve-binary/foo - call $resolve-binary/Foo#gt - local.tee $39 - call $~lib/string/String#toString - local.tee $40 - i32.const 2040 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 266 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/foo - global.get $resolve-binary/foo - call $resolve-binary/Foo#le - local.tee $41 - call $~lib/string/String#toString - local.tee $42 - i32.const 2064 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 271 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/foo - global.get $resolve-binary/foo - call $resolve-binary/Foo#ge - local.tee $43 - call $~lib/string/String#toString - local.tee $44 - i32.const 2088 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 276 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/foo - global.get $resolve-binary/foo - call $resolve-binary/Foo#eq - local.tee $45 - call $~lib/string/String#toString - local.tee $46 - i32.const 2112 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 281 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/foo - global.get $resolve-binary/foo - call $resolve-binary/Foo#ne - local.tee $47 - call $~lib/string/String#toString - local.tee $48 - i32.const 2136 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 286 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/foo - global.get $resolve-binary/foo - call $resolve-binary/Foo#add - local.tee $49 - call $~lib/string/String#toString - local.tee $50 - i32.const 2160 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 291 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/foo - global.get $resolve-binary/foo - call $resolve-binary/Foo.sub - local.tee $51 - call $~lib/string/String#toString - local.tee $52 - i32.const 2184 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 296 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/foo - global.get $resolve-binary/foo - call $resolve-binary/Foo#mul - local.tee $53 - call $~lib/string/String#toString - local.tee $54 - i32.const 2208 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 301 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/foo - global.get $resolve-binary/foo - call $resolve-binary/Foo#div - local.tee $55 - call $~lib/string/String#toString - local.tee $56 - i32.const 2232 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 306 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/foo - global.get $resolve-binary/foo - call $resolve-binary/Foo#rem - local.tee $57 - call $~lib/string/String#toString - local.tee $58 - i32.const 2256 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 311 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/foo - global.get $resolve-binary/foo - call $resolve-binary/Foo#pow - local.tee $59 - call $~lib/string/String#toString - local.tee $60 - i32.const 2280 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 316 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $resolve-binary/Bar#constructor - global.set $resolve-binary/bar - i32.const 0 - call $resolve-binary/Bar#constructor - global.set $resolve-binary/bar2 - global.get $resolve-binary/bar - global.get $resolve-binary/bar2 - call $resolve-binary/Bar#add - local.tee $61 - local.tee $62 - global.get $resolve-binary/bar - local.tee $63 - i32.ne - if - local.get $62 - call $~lib/rt/stub/__retain - drop - local.get $63 - call $~lib/rt/stub/__release - end - local.get $62 - global.set $resolve-binary/bar - global.get $resolve-binary/bar - call $resolve-binary/Bar#self - local.tee $62 - global.get $resolve-binary/bar2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 334 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-binary/bar - global.get $resolve-binary/bar2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 339 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - call $~lib/rt/stub/__release - local.get $3 - call $~lib/rt/stub/__release - local.get $4 - call $~lib/rt/stub/__release - local.get $5 - call $~lib/rt/stub/__release - local.get $6 - call $~lib/rt/stub/__release - local.get $7 - call $~lib/rt/stub/__release - local.get $8 - call $~lib/rt/stub/__release - local.get $9 - call $~lib/rt/stub/__release - local.get $10 - call $~lib/rt/stub/__release - local.get $11 - call $~lib/rt/stub/__release - local.get $12 - call $~lib/rt/stub/__release - local.get $13 - call $~lib/rt/stub/__release - local.get $14 - call $~lib/rt/stub/__release - local.get $15 - call $~lib/rt/stub/__release - local.get $16 - call $~lib/rt/stub/__release - local.get $17 - call $~lib/rt/stub/__release - local.get $18 - call $~lib/rt/stub/__release - local.get $19 - call $~lib/rt/stub/__release - local.get $20 - call $~lib/rt/stub/__release - local.get $21 - call $~lib/rt/stub/__release - local.get $22 - call $~lib/rt/stub/__release - local.get $23 - call $~lib/rt/stub/__release - local.get $24 - call $~lib/rt/stub/__release - local.get $25 - call $~lib/rt/stub/__release - local.get $26 - call $~lib/rt/stub/__release - local.get $27 - call $~lib/rt/stub/__release - local.get $28 - call $~lib/rt/stub/__release - local.get $29 - call $~lib/rt/stub/__release - local.get $30 - call $~lib/rt/stub/__release - local.get $31 - call $~lib/rt/stub/__release - local.get $32 - call $~lib/rt/stub/__release - local.get $33 - call $~lib/rt/stub/__release - local.get $34 - call $~lib/rt/stub/__release - local.get $35 - call $~lib/rt/stub/__release - local.get $36 - call $~lib/rt/stub/__release - local.get $37 - call $~lib/rt/stub/__release - local.get $38 - call $~lib/rt/stub/__release - local.get $39 - call $~lib/rt/stub/__release - local.get $40 - call $~lib/rt/stub/__release - local.get $41 - call $~lib/rt/stub/__release - local.get $42 - call $~lib/rt/stub/__release - local.get $43 - call $~lib/rt/stub/__release - local.get $44 - call $~lib/rt/stub/__release - local.get $45 - call $~lib/rt/stub/__release - local.get $46 - call $~lib/rt/stub/__release - local.get $47 - call $~lib/rt/stub/__release - local.get $48 - call $~lib/rt/stub/__release - local.get $49 - call $~lib/rt/stub/__release - local.get $50 - call $~lib/rt/stub/__release - local.get $51 - call $~lib/rt/stub/__release - local.get $52 - call $~lib/rt/stub/__release - local.get $53 - call $~lib/rt/stub/__release - local.get $54 - call $~lib/rt/stub/__release - local.get $55 - call $~lib/rt/stub/__release - local.get $56 - call $~lib/rt/stub/__release - local.get $57 - call $~lib/rt/stub/__release - local.get $58 - call $~lib/rt/stub/__release - local.get $59 - call $~lib/rt/stub/__release - local.get $60 - call $~lib/rt/stub/__release - local.get $61 - call $~lib/rt/stub/__release - local.get $62 - call $~lib/rt/stub/__release - ) - (func $start (; 47 ;) (type $FUNCSIG$v) - call $start:resolve-binary - ) - (func $null (; 48 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/resolve-elementaccess.untouched.wat b/tests/compiler/resolve-elementaccess.untouched.wat index c193750d5e..e69de29bb2 100644 --- a/tests/compiler/resolve-elementaccess.untouched.wat +++ b/tests/compiler/resolve-elementaccess.untouched.wat @@ -1,3787 +0,0 @@ -(module - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$viif (func (param i32 i32 f32))) - (type $FUNCSIG$fii (func (param i32 i32) (result f32))) - (type $FUNCSIG$if (func (param f32) (result i32))) - (type $FUNCSIG$id (func (param f64) (result i32))) - (type $FUNCSIG$iid (func (param i32 f64) (result i32))) - (type $FUNCSIG$jii (func (param i32 i32) (result i64))) - (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) - (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$v (func)) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (memory $0 1) - (data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") - (data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") - (data (i32.const 112) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") - (data (i32.const 168) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00~\00l\00i\00b\00/\00t\00y\00p\00e\00d\00a\00r\00r\00a\00y\00.\00t\00s\00") - (data (i32.const 224) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") - (data (i32.const 248) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") - (data (i32.const 272) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 312) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 344) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8 (; 10 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.eq - ) - (func $~lib/number/isNaN (; 11 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.ne - ) - (func $~lib/array/Array#__unchecked_get (; 12 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - i64.load - ) - (func $~lib/array/Array#__unchecked_get (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.load16_s - ) - (func $~lib/util/number/decimalCount32 (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - i32.const 100000 - i32.lt_u - if - local.get $0 - i32.const 100 - i32.lt_u - if - i32.const 1 - i32.const 2 - local.get $0 - i32.const 10 - i32.lt_u - select - return - else - i32.const 4 - i32.const 5 - local.get $0 - i32.const 10000 - i32.lt_u - select - local.set $1 - i32.const 3 - local.get $1 - local.get $0 - i32.const 1000 - i32.lt_u - select - return - end - unreachable - else - local.get $0 - i32.const 10000000 - i32.lt_u - if - i32.const 6 - i32.const 7 - local.get $0 - i32.const 1000000 - i32.lt_u - select - return - else - i32.const 9 - i32.const 10 - local.get $0 - i32.const 1000000000 - i32.lt_u - select - local.set $1 - i32.const 8 - local.get $1 - local.get $0 - i32.const 100000000 - i32.lt_u - select - return - end - unreachable - end - unreachable - ) - (func $~lib/util/number/genDigits (; 15 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i64) - (local $11 i32) - (local $12 i32) - (local $13 i64) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i32) - (local $25 i32) - (local $26 i32) - i32.const 0 - local.get $4 - i32.sub - local.set $7 - i64.const 1 - local.get $7 - i64.extend_i32_s - i64.shl - local.set $8 - local.get $8 - i64.const 1 - i64.sub - local.set $9 - local.get $3 - local.get $1 - i64.sub - local.set $10 - local.get $4 - local.set $11 - local.get $3 - local.get $7 - i64.extend_i32_s - i64.shr_u - i32.wrap_i64 - local.set $12 - local.get $3 - local.get $9 - i64.and - local.set $13 - local.get $12 - call $~lib/util/number/decimalCount32 - local.set $14 - local.get $6 - local.set $15 - i32.const 1384 - i32.load offset=4 - local.set $16 - block $break|0 - loop $continue|0 - local.get $14 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|0 - block $break|1 - block $case10|1 - block $case9|1 - block $case8|1 - block $case7|1 - block $case6|1 - block $case5|1 - block $case4|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $14 - local.set $18 - local.get $18 - i32.const 10 - i32.eq - br_if $case0|1 - local.get $18 - i32.const 9 - i32.eq - br_if $case1|1 - local.get $18 - i32.const 8 - i32.eq - br_if $case2|1 - local.get $18 - i32.const 7 - i32.eq - br_if $case3|1 - local.get $18 - i32.const 6 - i32.eq - br_if $case4|1 - local.get $18 - i32.const 5 - i32.eq - br_if $case5|1 - local.get $18 - i32.const 4 - i32.eq - br_if $case6|1 - local.get $18 - i32.const 3 - i32.eq - br_if $case7|1 - local.get $18 - i32.const 2 - i32.eq - br_if $case8|1 - local.get $18 - i32.const 1 - i32.eq - br_if $case9|1 - br $case10|1 - end - local.get $12 - i32.const 1000000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100 - i32.div_u - local.set $17 - local.get $12 - i32.const 100 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10 - i32.div_u - local.set $17 - local.get $12 - i32.const 10 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - local.set $17 - i32.const 0 - local.set $12 - br $break|1 - end - i32.const 0 - local.set $17 - br $break|1 - end - local.get $17 - local.get $15 - i32.or - if - local.get $0 - local.get $15 - local.tee $18 - i32.const 1 - i32.add - local.set $15 - local.get $18 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $17 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $12 - i64.extend_i32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.get $13 - i64.add - local.set $19 - local.get $19 - local.get $5 - i64.le_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $19 - local.set $22 - local.get $16 - local.get $14 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $25 - local.get $25 - i32.load16_u - local.set $26 - block $break|2 - loop $continue|2 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|2 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|2 - end - unreachable - end - local.get $25 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|0 - end - unreachable - end - loop $continue|3 - local.get $13 - i64.const 10 - i64.mul - local.set $13 - local.get $5 - i64.const 10 - i64.mul - local.set $5 - local.get $13 - local.get $7 - i64.extend_i32_s - i64.shr_u - local.set $19 - local.get $19 - local.get $15 - i64.extend_i32_s - i64.or - i64.const 0 - i64.ne - if - local.get $0 - local.get $15 - local.tee $17 - i32.const 1 - i32.add - local.set $15 - local.get $17 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $19 - i32.wrap_i64 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $13 - local.get $9 - i64.and - local.set $13 - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $13 - local.get $5 - i64.lt_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $10 - local.get $16 - i32.const 0 - local.get $14 - i32.sub - i32.const 2 - i32.shl - i32.add - i64.load32_u - i64.mul - local.set $10 - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $13 - local.set $22 - local.get $8 - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $17 - local.get $17 - i32.load16_u - local.set $26 - block $break|4 - loop $continue|4 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|4 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|4 - end - unreachable - end - local.get $17 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|3 - end - unreachable - ) - (func $~lib/util/memory/memcpy (; 16 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - loop $continue|0 - local.get $2 - if (result i32) - local.get $1 - i32.const 3 - i32.and - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $0 - i32.const 3 - i32.and - i32.const 0 - i32.eq - if - block $break|1 - loop $continue|1 - local.get $2 - i32.const 16 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $1 - i32.const 8 - i32.add - i32.load - i32.store - local.get $0 - i32.const 12 - i32.add - local.get $1 - i32.const 12 - i32.add - i32.load - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|1 - end - unreachable - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.set $0 - local.get $1 - i32.const 4 - i32.add - local.set $1 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.get $1 - i32.load16_u - i32.store16 - local.get $0 - i32.const 2 - i32.add - local.set $0 - local.get $1 - i32.const 2 - i32.add - local.set $1 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - return - end - local.get $2 - i32.const 32 - i32.ge_u - if - block $break|2 - block $case2|2 - block $case1|2 - block $case0|2 - local.get $0 - i32.const 3 - i32.and - local.set $5 - local.get $5 - i32.const 1 - i32.eq - br_if $case0|2 - local.get $5 - i32.const 2 - i32.eq - br_if $case1|2 - local.get $5 - i32.const 3 - i32.eq - br_if $case2|2 - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 3 - i32.sub - local.set $2 - block $break|3 - loop $continue|3 - local.get $2 - i32.const 17 - i32.ge_u - i32.eqz - br_if $break|3 - local.get $1 - i32.const 1 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 5 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 9 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 13 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|3 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - block $break|4 - loop $continue|4 - local.get $2 - i32.const 18 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $1 - i32.const 2 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 6 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 10 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 14 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|4 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - block $break|5 - loop $continue|5 - local.get $2 - i32.const 19 - i32.ge_u - i32.eqz - br_if $break|5 - local.get $1 - i32.const 3 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 7 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 11 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 15 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|5 - end - unreachable - end - br $break|2 - end - end - local.get $2 - i32.const 16 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - ) - (func $~lib/memory/memory.copy (; 17 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - block $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - local.get $4 - i32.eq - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $4 - local.get $3 - i32.add - local.get $5 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $5 - local.get $3 - i32.add - local.get $4 - i32.le_u - end - if - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $4 - i32.lt_u - if - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|0 - loop $continue|0 - local.get $5 - i32.const 7 - i32.and - i32.eqz - br_if $break|0 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $3 - i32.const 1 - i32.sub - local.set $3 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - br $continue|0 - end - unreachable - end - block $break|1 - loop $continue|1 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $5 - local.get $4 - i64.load - i64.store - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - i32.const 8 - i32.add - local.set $5 - local.get $4 - i32.const 8 - i32.add - local.set $4 - br $continue|1 - end - unreachable - end - end - block $break|2 - loop $continue|2 - local.get $3 - i32.eqz - br_if $break|2 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - local.get $3 - i32.const 1 - i32.sub - local.set $3 - br $continue|2 - end - unreachable - end - else - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|3 - loop $continue|3 - local.get $5 - local.get $3 - i32.add - i32.const 7 - i32.and - i32.eqz - br_if $break|3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - local.get $3 - i32.add - local.get $4 - local.get $3 - i32.add - i64.load - i64.store - br $continue|4 - end - unreachable - end - end - block $break|5 - loop $continue|5 - local.get $3 - i32.eqz - br_if $break|5 - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|5 - end - unreachable - end - end - end - ) - (func $~lib/util/number/utoa32_lut (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - i32.const 1832 - i32.load offset=4 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i32.const 10000 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $1 - i32.const 10000 - i32.div_u - local.set $4 - local.get $1 - i32.const 10000 - i32.rem_u - local.set $5 - local.get $4 - local.set $1 - local.get $5 - i32.const 100 - i32.div_u - local.set $6 - local.get $5 - i32.const 100 - i32.rem_u - local.set $7 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $8 - local.get $3 - local.get $7 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $9 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $8 - local.get $9 - i64.const 32 - i64.shl - i64.or - i64.store - br $continue|0 - end - unreachable - end - local.get $1 - i32.const 100 - i32.ge_u - if - local.get $1 - i32.const 100 - i32.div_u - local.set $7 - local.get $1 - i32.const 100 - i32.rem_u - local.set $6 - local.get $7 - local.set $1 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - end - local.get $1 - i32.const 10 - i32.ge_u - if - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - else - local.get $2 - i32.const 1 - i32.sub - local.set $2 - i32.const 48 - local.get $1 - i32.add - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store16 - end - ) - (func $~lib/util/number/prettify (; 19 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $2 - i32.eqz - if - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 2 - i32.add - return - end - local.get $1 - local.get $2 - i32.add - local.set $3 - local.get $1 - local.get $3 - i32.le_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - block $break|0 - local.get $1 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $3 - i32.const 2 - i32.add - return - else - local.get $3 - i32.const 0 - i32.gt_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $4 - local.get $4 - i32.const 2 - i32.add - local.get $4 - i32.const 0 - local.get $2 - i32.sub - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.store16 - local.get $1 - i32.const 1 - i32.add - return - else - i32.const -6 - local.get $3 - i32.lt_s - if (result i32) - local.get $3 - i32.const 0 - i32.le_s - else - i32.const 0 - end - if - i32.const 2 - local.get $3 - i32.sub - local.set $4 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $1 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - i32.const 48 - i32.const 46 - i32.const 16 - i32.shl - i32.or - i32.store - block $break|1 - i32.const 2 - local.set $5 - loop $loop|1 - local.get $5 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|1 - end - unreachable - end - local.get $1 - local.get $4 - i32.add - return - else - local.get $1 - i32.const 1 - i32.eq - if - local.get $0 - i32.const 101 - i32.store16 offset=2 - local.get $0 - i32.const 4 - i32.add - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - local.get $5 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $5 - i32.sub - local.set $5 - end - local.get $5 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $7 - local.get $4 - local.set $10 - local.get $5 - local.set $9 - local.get $7 - local.set $8 - local.get $10 - local.get $9 - local.get $8 - call $~lib/util/number/utoa32_lut - local.get $4 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $7 - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - else - local.get $1 - i32.const 1 - i32.shl - local.set $7 - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.const 2 - i32.add - local.get $7 - i32.const 2 - i32.sub - call $~lib/memory/memory.copy - local.get $0 - i32.const 46 - i32.store16 offset=2 - local.get $0 - local.get $7 - i32.add - i32.const 101 - i32.store16 offset=2 - local.get $1 - local.get $0 - local.get $7 - i32.add - i32.const 4 - i32.add - local.set $9 - local.get $3 - i32.const 1 - i32.sub - local.set $8 - local.get $8 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $8 - i32.sub - local.set $8 - end - local.get $8 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $4 - local.get $9 - local.set $11 - local.get $8 - local.set $5 - local.get $4 - local.set $10 - local.get $11 - local.get $5 - local.get $10 - call $~lib/util/number/utoa32_lut - local.get $9 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $4 - i32.add - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - end - unreachable - end - unreachable - end - unreachable - end - unreachable - ) - (func $~lib/util/number/dtoa_core (; 20 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 i64) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i32) - (local $11 i64) - (local $12 i64) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 f64) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i64) - (local $25 i64) - (local $26 i32) - (local $27 i64) - (local $28 i32) - local.get $1 - f64.const 0 - f64.lt - local.set $2 - local.get $2 - if - local.get $1 - f64.neg - local.set $1 - local.get $0 - i32.const 45 - i32.store16 - end - local.get $1 - local.set $5 - local.get $0 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i64.reinterpret_f64 - local.set $6 - local.get $6 - i64.const 9218868437227405312 - i64.and - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.set $7 - local.get $6 - i64.const 4503599627370495 - i64.and - local.set $8 - local.get $7 - i32.const 0 - i32.ne - i64.extend_i32_u - i64.const 52 - i64.shl - local.get $8 - i64.add - local.set $9 - local.get $7 - i32.const 1 - local.get $7 - i32.const 0 - i32.ne - select - i32.const 1023 - i32.const 52 - i32.add - i32.sub - local.set $7 - local.get $9 - local.set $11 - local.get $7 - local.set $10 - local.get $11 - i64.const 1 - i64.shl - i64.const 1 - i64.add - local.set $12 - local.get $10 - i32.const 1 - i32.sub - local.set $13 - local.get $12 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $12 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $12 - local.get $13 - local.get $14 - i32.sub - local.set $13 - i32.const 1 - local.get $11 - i64.const 4503599627370496 - i64.eq - i32.add - local.set $15 - local.get $12 - global.set $~lib/util/number/_frc_plus - local.get $11 - local.get $15 - i64.extend_i32_s - i64.shl - i64.const 1 - i64.sub - local.get $10 - local.get $15 - i32.sub - local.get $13 - i32.sub - i64.extend_i32_s - i64.shl - global.set $~lib/util/number/_frc_minus - local.get $13 - global.set $~lib/util/number/_exp - global.get $~lib/util/number/_exp - local.set $10 - i32.const -61 - local.get $10 - i32.sub - f64.convert_i32_s - f64.const 0.30102999566398114 - f64.mul - f64.const 347 - f64.add - local.set $16 - local.get $16 - i32.trunc_f64_s - local.set $15 - local.get $15 - local.get $15 - f64.convert_i32_s - local.get $16 - f64.ne - i32.add - local.set $15 - local.get $15 - i32.const 3 - i32.shr_s - i32.const 1 - i32.add - local.set $14 - i32.const 348 - local.get $14 - i32.const 3 - i32.shl - i32.sub - global.set $~lib/util/number/_K - i32.const 1072 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_frc_pow - i32.const 1296 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_exp_pow - local.get $9 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $9 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $9 - local.get $7 - local.get $14 - i32.sub - local.set $7 - global.get $~lib/util/number/_frc_pow - local.set $12 - global.get $~lib/util/number/_exp_pow - local.set $15 - local.get $9 - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $24 - local.get $24 - i64.const 2147483647 - i64.add - local.set $24 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $24 - i64.const 32 - i64.shr_u - local.set $24 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $24 - i64.add - local.set $24 - local.get $7 - local.set $10 - local.get $15 - local.set $13 - local.get $10 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $10 - global.get $~lib/util/number/_frc_plus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $23 - local.get $11 - i64.const 4294967295 - i64.and - local.set $22 - local.get $17 - i64.const 32 - i64.shr_u - local.set $21 - local.get $11 - i64.const 32 - i64.shr_u - local.set $20 - local.get $23 - local.get $22 - i64.mul - local.set $19 - local.get $21 - local.get $22 - i64.mul - local.get $19 - i64.const 32 - i64.shr_u - i64.add - local.set $18 - local.get $23 - local.get $20 - i64.mul - local.get $18 - i64.const 4294967295 - i64.and - i64.add - local.set $25 - local.get $25 - i64.const 2147483647 - i64.add - local.set $25 - local.get $18 - i64.const 32 - i64.shr_u - local.set $18 - local.get $25 - i64.const 32 - i64.shr_u - local.set $25 - local.get $21 - local.get $20 - i64.mul - local.get $18 - i64.add - local.get $25 - i64.add - i64.const 1 - i64.sub - local.set $25 - global.get $~lib/util/number/_exp - local.set $26 - local.get $15 - local.set $13 - local.get $26 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $26 - global.get $~lib/util/number/_frc_minus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $27 - local.get $27 - i64.const 2147483647 - i64.add - local.set $27 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $27 - i64.const 32 - i64.shr_u - local.set $27 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $27 - i64.add - i64.const 1 - i64.add - local.set $27 - local.get $25 - local.get $27 - i64.sub - local.set $23 - local.get $4 - local.get $24 - local.get $10 - local.get $25 - local.get $26 - local.get $23 - local.get $3 - call $~lib/util/number/genDigits - local.set $28 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $28 - local.get $2 - i32.sub - global.get $~lib/util/number/_K - call $~lib/util/number/prettify - local.set $28 - local.get $28 - local.get $2 - i32.add - ) - (func $~lib/string/String#get:length (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 16 - i32.sub - i32.load offset=12 - i32.const 1 - i32.shr_u - ) - (func $~lib/string/String#substring (; 22 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $6 - local.get $2 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $7 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - i32.const 1 - i32.shl - local.set $8 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - i32.const 1 - i32.shl - local.set $9 - local.get $9 - local.get $8 - i32.sub - local.set $3 - local.get $3 - i32.eqz - if - i32.const 1864 - call $~lib/rt/stub/__retain - return - end - local.get $8 - i32.eqz - if (result i32) - local.get $9 - local.get $0 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - i32.eq - else - i32.const 0 - end - if - local.get $0 - call $~lib/rt/stub/__retain - return - end - local.get $3 - i32.const 1 - call $~lib/rt/stub/__alloc - local.set $10 - local.get $10 - local.get $0 - local.get $8 - i32.add - local.get $3 - call $~lib/memory/memory.copy - local.get $10 - call $~lib/rt/stub/__retain - ) - (func $~lib/rt/stub/__free (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 1880 - i32.const 71 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 16 - i32.sub - local.set $1 - local.get $1 - i32.load offset=4 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 1880 - i32.const 73 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - i32.load - i32.add - global.get $~lib/rt/stub/offset - i32.eq - if - local.get $1 - global.set $~lib/rt/stub/offset - end - ) - (func $~lib/util/number/dtoa (; 24 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - f64.const 0 - f64.eq - if - i32.const 240 - call $~lib/rt/stub/__retain - return - end - local.get $0 - call $~lib/number/isFinite - i32.eqz - if - local.get $0 - call $~lib/number/isNaN - if - i32.const 264 - call $~lib/rt/stub/__retain - return - end - i32.const 288 - i32.const 328 - local.get $0 - f64.const 0 - f64.lt - select - call $~lib/rt/stub/__retain - return - end - i32.const 28 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/stub/__alloc - local.set $1 - local.get $1 - local.get $0 - call $~lib/util/number/dtoa_core - local.set $2 - local.get $2 - i32.const 28 - i32.eq - if - local.get $1 - call $~lib/rt/stub/__retain - return - end - local.get $1 - i32.const 0 - local.get $2 - call $~lib/string/String#substring - local.set $3 - local.get $1 - call $~lib/rt/stub/__free - local.get $3 - ) - (func $~lib/number/F32#toString (; 25 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) - local.get $0 - f64.promote_f32 - call $~lib/util/number/dtoa - ) - (func $~lib/util/string/compareImpl (; 26 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - local.get $2 - call $~lib/rt/stub/__retain - drop - i32.const 0 - local.set $5 - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $6 - local.get $2 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $7 - block $break|0 - loop $continue|0 - local.get $4 - if (result i32) - local.get $6 - i32.load16_u - local.get $7 - i32.load16_u - i32.sub - local.tee $5 - i32.eqz - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - local.get $6 - i32.const 2 - i32.add - local.set $6 - local.get $7 - i32.const 2 - i32.add - local.set $7 - br $continue|0 - end - unreachable - end - local.get $5 - local.set $8 - local.get $0 - call $~lib/rt/stub/__release - local.get $2 - call $~lib/rt/stub/__release - local.get $8 - ) - (func $~lib/string/String.__eq (; 27 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - local.get $1 - call $~lib/rt/stub/__retain - drop - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 0 - i32.eq - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - return - end - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $3 - local.get $1 - call $~lib/string/String#get:length - i32.ne - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - local.get $1 - i32.const 0 - local.get $3 - call $~lib/util/string/compareImpl - i32.eqz - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $start:resolve-elementaccess (; 28 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/heap/__heap_base - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - global.set $~lib/rt/stub/startOffset - global.get $~lib/rt/stub/startOffset - global.set $~lib/rt/stub/offset - i32.const 0 - i32.const 2 - call $~lib/typedarray/Float32Array#constructor - global.set $resolve-elementaccess/arr - global.get $resolve-elementaccess/arr - i32.const 0 - f32.const 1 - call $~lib/typedarray/Float32Array#__set - global.get $resolve-elementaccess/arr - i32.const 1 - f32.const 2 - call $~lib/typedarray/Float32Array#__set - global.get $resolve-elementaccess/arr - i32.const 0 - call $~lib/typedarray/Float32Array#__get - call $~lib/number/F32#toString - local.tee $0 - i32.const 1928 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1952 - i32.const 4 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-elementaccess/arr - i32.const 1 - call $~lib/typedarray/Float32Array#__get - call $~lib/number/F32#toString - local.tee $1 - i32.const 2016 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1952 - i32.const 9 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-elementaccess/arr - local.tee $2 - i32.const 0 - local.tee $3 - global.get $resolve-elementaccess/arr - i32.const 0 - call $~lib/typedarray/Float32Array#__get - f32.const 10 - f32.add - call $~lib/typedarray/Float32Array#__set - local.get $2 - local.get $3 - call $~lib/typedarray/Float32Array#__get - call $~lib/number/F32#toString - local.tee $2 - i32.const 2040 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 1952 - i32.const 14 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-elementaccess/arr - i32.const 0 - global.get $resolve-elementaccess/arr - i32.const 0 - call $~lib/typedarray/Float32Array#__get - f32.const 10 - f32.add - call $~lib/typedarray/Float32Array#__set - global.get $resolve-elementaccess/arr - i32.const 0 - call $~lib/typedarray/Float32Array#__get - f32.const 21 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 1952 - i32.const 20 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - call $~lib/rt/stub/__release - ) - (func $start (; 29 ;) (type $FUNCSIG$v) - call $start:resolve-elementaccess - ) - (func $null (; 30 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/resolve-function-expression.untouched.wat b/tests/compiler/resolve-function-expression.untouched.wat index 975bb7a130..e69de29bb2 100644 --- a/tests/compiler/resolve-function-expression.untouched.wat +++ b/tests/compiler/resolve-function-expression.untouched.wat @@ -1,641 +0,0 @@ -(module - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$v (func)) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (memory $0 1) - (data (i32.const 8) "<\00\00\00\01\00\00\00\01\00\00\00<\00\00\00r\00e\00s\00o\00l\00v\00e\00-\00f\00u\00n\00c\00t\00i\00o\00n\00-\00e\00x\00p\00r\00e\00s\00s\00i\00o\00n\00.\00t\00s\00") - (data (i32.const 88) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") - (data (i32.const 112) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") - (data (i32.const 528) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\80\00\00\00\80\00\00\00\90\01\00\00d\00\00\00") - (data (i32.const 560) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\004\002\00") - (table $0 4 funcref) - (elem (i32.const 0) $null $start:resolve-function-expression~anonymous|0 $start:resolve-function-expression~anonymous|1 $start:resolve-function-expression~anonymous|2) - (global $~lib/argc (mut i32) (i32.const 0)) - (global $~lib/rt/stub/startOffset (mut i32) (i32.const 0)) - (global $~lib/rt/stub/offset (mut i32) (i32.const 0)) - (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) - (global $~lib/heap/__heap_base i32 (i32.const 580)) - (export "memory" (memory $0)) - (start $start) - (func $start:resolve-function-expression~anonymous|0 (; 1 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 40 - i32.add - ) - (func $start:resolve-function-expression~anonymous|1 (; 2 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 41 - i32.add - ) - (func $start:resolve-function-expression~anonymous|2 (; 3 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 42 - i32.add - ) - (func $~lib/rt/stub/__retain (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - ) - (func $~lib/util/number/decimalCount32 (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - i32.const 100000 - i32.lt_u - if - local.get $0 - i32.const 100 - i32.lt_u - if - i32.const 1 - i32.const 2 - local.get $0 - i32.const 10 - i32.lt_u - select - return - else - i32.const 4 - i32.const 5 - local.get $0 - i32.const 10000 - i32.lt_u - select - local.set $1 - i32.const 3 - local.get $1 - local.get $0 - i32.const 1000 - i32.lt_u - select - return - end - unreachable - else - local.get $0 - i32.const 10000000 - i32.lt_u - if - i32.const 6 - i32.const 7 - local.get $0 - i32.const 1000000 - i32.lt_u - select - return - else - i32.const 9 - i32.const 10 - local.get $0 - i32.const 1000000000 - i32.lt_u - select - local.set $1 - i32.const 8 - local.get $1 - local.get $0 - i32.const 100000000 - i32.lt_u - select - return - end - unreachable - end - unreachable - ) - (func $~lib/rt/stub/maybeGrowMemory (; 6 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - memory.size - local.set $1 - local.get $1 - i32.const 16 - i32.shl - local.set $2 - local.get $0 - local.get $2 - i32.gt_u - if - local.get $0 - local.get $2 - i32.sub - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $3 - local.get $1 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.set $4 - local.get $4 - memory.grow - i32.const 0 - i32.lt_s - if - local.get $3 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - end - local.get $0 - global.set $~lib/rt/stub/offset - ) - (func $~lib/rt/stub/__alloc (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.const 1073741808 - i32.gt_u - if - unreachable - end - global.get $~lib/rt/stub/offset - i32.const 16 - i32.add - local.set $2 - local.get $0 - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.tee $3 - i32.const 16 - local.tee $4 - local.get $3 - local.get $4 - i32.gt_u - select - local.set $5 - local.get $2 - local.get $5 - i32.add - call $~lib/rt/stub/maybeGrowMemory - local.get $2 - i32.const 16 - i32.sub - local.set $6 - local.get $6 - local.get $5 - i32.store - local.get $6 - i32.const -1 - i32.store offset=4 - local.get $6 - local.get $1 - i32.store offset=8 - local.get $6 - local.get $0 - i32.store offset=12 - local.get $2 - ) - (func $~lib/util/number/utoa32_lut (; 8 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - i32.const 544 - i32.load offset=4 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i32.const 10000 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $1 - i32.const 10000 - i32.div_u - local.set $4 - local.get $1 - i32.const 10000 - i32.rem_u - local.set $5 - local.get $4 - local.set $1 - local.get $5 - i32.const 100 - i32.div_u - local.set $6 - local.get $5 - i32.const 100 - i32.rem_u - local.set $7 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $8 - local.get $3 - local.get $7 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $9 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $8 - local.get $9 - i64.const 32 - i64.shl - i64.or - i64.store - br $continue|0 - end - unreachable - end - local.get $1 - i32.const 100 - i32.ge_u - if - local.get $1 - i32.const 100 - i32.div_u - local.set $7 - local.get $1 - i32.const 100 - i32.rem_u - local.set $6 - local.get $7 - local.set $1 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - end - local.get $1 - i32.const 10 - i32.ge_u - if - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - else - local.get $2 - i32.const 1 - i32.sub - local.set $2 - i32.const 48 - local.get $1 - i32.add - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store16 - end - ) - (func $~lib/util/number/itoa32 (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.eqz - if - i32.const 104 - call $~lib/rt/stub/__retain - return - end - local.get $0 - i32.const 0 - i32.lt_s - local.set $1 - local.get $1 - if - i32.const 0 - local.get $0 - i32.sub - local.set $0 - end - local.get $0 - call $~lib/util/number/decimalCount32 - local.get $1 - i32.add - local.set $2 - local.get $2 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/stub/__alloc - local.set $3 - local.get $3 - local.set $6 - local.get $0 - local.set $5 - local.get $2 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - local.get $1 - if - local.get $3 - i32.const 45 - i32.store16 - end - local.get $3 - call $~lib/rt/stub/__retain - ) - (func $~lib/util/number/itoa (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa32 - return - ) - (func $~lib/number/I32#toString (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa - ) - (func $~lib/rt/stub/__release (; 12 ;) (type $FUNCSIG$vi) (param $0 i32) - nop - ) - (func $~lib/string/String#get:length (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 16 - i32.sub - i32.load offset=12 - i32.const 1 - i32.shr_u - ) - (func $~lib/util/string/compareImpl (; 14 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - local.get $2 - call $~lib/rt/stub/__retain - drop - i32.const 0 - local.set $5 - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $6 - local.get $2 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $7 - block $break|0 - loop $continue|0 - local.get $4 - if (result i32) - local.get $6 - i32.load16_u - local.get $7 - i32.load16_u - i32.sub - local.tee $5 - i32.eqz - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - local.get $6 - i32.const 2 - i32.add - local.set $6 - local.get $7 - i32.const 2 - i32.add - local.set $7 - br $continue|0 - end - unreachable - end - local.get $5 - local.set $8 - local.get $0 - call $~lib/rt/stub/__release - local.get $2 - call $~lib/rt/stub/__release - local.get $8 - ) - (func $~lib/string/String.__eq (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - local.get $1 - call $~lib/rt/stub/__retain - drop - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 0 - i32.eq - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - return - end - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $3 - local.get $1 - call $~lib/string/String#get:length - i32.ne - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - local.get $1 - i32.const 0 - local.get $3 - call $~lib/util/string/compareImpl - i32.eqz - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $start:resolve-function-expression (; 16 ;) (type $FUNCSIG$v) - (local $0 i32) - i32.const 1 - global.set $~lib/argc - i32.const 2 - i32.const 1 - call_indirect (type $FUNCSIG$ii) - i32.const 42 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - i32.const 1 - i32.const 2 - call_indirect (type $FUNCSIG$ii) - i32.const 42 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 6 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/heap/__heap_base - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - global.set $~lib/rt/stub/startOffset - global.get $~lib/rt/stub/startOffset - global.set $~lib/rt/stub/offset - i32.const 1 - global.set $~lib/argc - i32.const 0 - i32.const 3 - call_indirect (type $FUNCSIG$ii) - call $~lib/number/I32#toString - local.tee $0 - i32.const 576 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 11 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/stub/__release - ) - (func $start (; 17 ;) (type $FUNCSIG$v) - call $start:resolve-function-expression - ) - (func $null (; 18 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/resolve-ternary.untouched.wat b/tests/compiler/resolve-ternary.untouched.wat index 7e7773a649..e69de29bb2 100644 --- a/tests/compiler/resolve-ternary.untouched.wat +++ b/tests/compiler/resolve-ternary.untouched.wat @@ -1,5465 +0,0 @@ -(module - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$v (func)) - (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$vii (func (param i32 i32))) - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$idi (func (param f64 i32) (result i32))) - (type $FUNCSIG$id (func (param f64) (result i32))) - (type $FUNCSIG$iid (func (param i32 f64) (result i32))) - (type $FUNCSIG$jii (func (param i32 i32) (result i64))) - (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (memory $0 1) - (data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") - (data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") - (data (i32.const 112) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") - (data (i32.const 160) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") - (data (i32.const 216) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") - (data (i32.const 256) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") - (data (i32.const 280) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") - (data (i32.const 696) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00(\01\00\00(\01\00\00\90\01\00\00d\00\00\00") - (data (i32.const 728) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\001\00") - (data (i32.const 752) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00r\00e\00s\00o\00l\00v\00e\00-\00t\00e\00r\00n\00a\00r\00y\00.\00t\00s\00") - (data (i32.const 808) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") - (data (i32.const 832) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") - (data (i32.const 856) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 896) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 928) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8 (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa32 - return - ) - (func $~lib/number/I32#toString (; 31 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa - ) - (func $~lib/string/String#get:length (; 32 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 16 - i32.sub - i32.load offset=12 - i32.const 1 - i32.shr_u - ) - (func $~lib/util/string/compareImpl (; 33 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/rt/pure/__retain - drop - i32.const 0 - local.set $5 - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $6 - local.get $2 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $7 - block $break|0 - loop $continue|0 - local.get $4 - if (result i32) - local.get $6 - i32.load16_u - local.get $7 - i32.load16_u - i32.sub - local.tee $5 - i32.eqz - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - local.get $6 - i32.const 2 - i32.add - local.set $6 - local.get $7 - i32.const 2 - i32.add - local.set $7 - br $continue|0 - end - unreachable - end - local.get $5 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/string/String.__eq (; 34 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 0 - i32.eq - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $3 - local.get $1 - call $~lib/string/String#get:length - i32.ne - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - local.get $1 - i32.const 0 - local.get $3 - call $~lib/util/string/compareImpl - i32.eqz - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/number/isFinite (; 35 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.eq - ) - (func $~lib/number/isNaN (; 36 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.ne - ) - (func $~lib/array/Array#__unchecked_get (; 37 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - i64.load - ) - (func $~lib/array/Array#__unchecked_get (; 38 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.load16_s - ) - (func $~lib/util/number/genDigits (; 39 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i64) - (local $11 i32) - (local $12 i32) - (local $13 i64) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i32) - (local $25 i32) - (local $26 i32) - i32.const 0 - local.get $4 - i32.sub - local.set $7 - i64.const 1 - local.get $7 - i64.extend_i32_s - i64.shl - local.set $8 - local.get $8 - i64.const 1 - i64.sub - local.set $9 - local.get $3 - local.get $1 - i64.sub - local.set $10 - local.get $4 - local.set $11 - local.get $3 - local.get $7 - i64.extend_i32_s - i64.shr_u - i32.wrap_i64 - local.set $12 - local.get $3 - local.get $9 - i64.and - local.set $13 - local.get $12 - call $~lib/util/number/decimalCount32 - local.set $14 - local.get $6 - local.set $15 - i32.const 1968 - i32.load offset=4 - local.set $16 - block $break|0 - loop $continue|0 - local.get $14 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|0 - block $break|1 - block $case10|1 - block $case9|1 - block $case8|1 - block $case7|1 - block $case6|1 - block $case5|1 - block $case4|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $14 - local.set $18 - local.get $18 - i32.const 10 - i32.eq - br_if $case0|1 - local.get $18 - i32.const 9 - i32.eq - br_if $case1|1 - local.get $18 - i32.const 8 - i32.eq - br_if $case2|1 - local.get $18 - i32.const 7 - i32.eq - br_if $case3|1 - local.get $18 - i32.const 6 - i32.eq - br_if $case4|1 - local.get $18 - i32.const 5 - i32.eq - br_if $case5|1 - local.get $18 - i32.const 4 - i32.eq - br_if $case6|1 - local.get $18 - i32.const 3 - i32.eq - br_if $case7|1 - local.get $18 - i32.const 2 - i32.eq - br_if $case8|1 - local.get $18 - i32.const 1 - i32.eq - br_if $case9|1 - br $case10|1 - end - local.get $12 - i32.const 1000000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100 - i32.div_u - local.set $17 - local.get $12 - i32.const 100 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10 - i32.div_u - local.set $17 - local.get $12 - i32.const 10 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - local.set $17 - i32.const 0 - local.set $12 - br $break|1 - end - i32.const 0 - local.set $17 - br $break|1 - end - local.get $17 - local.get $15 - i32.or - if - local.get $0 - local.get $15 - local.tee $18 - i32.const 1 - i32.add - local.set $15 - local.get $18 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $17 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $12 - i64.extend_i32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.get $13 - i64.add - local.set $19 - local.get $19 - local.get $5 - i64.le_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $19 - local.set $22 - local.get $16 - local.get $14 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $25 - local.get $25 - i32.load16_u - local.set $26 - block $break|2 - loop $continue|2 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|2 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|2 - end - unreachable - end - local.get $25 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|0 - end - unreachable - end - loop $continue|3 - local.get $13 - i64.const 10 - i64.mul - local.set $13 - local.get $5 - i64.const 10 - i64.mul - local.set $5 - local.get $13 - local.get $7 - i64.extend_i32_s - i64.shr_u - local.set $19 - local.get $19 - local.get $15 - i64.extend_i32_s - i64.or - i64.const 0 - i64.ne - if - local.get $0 - local.get $15 - local.tee $17 - i32.const 1 - i32.add - local.set $15 - local.get $17 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $19 - i32.wrap_i64 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $13 - local.get $9 - i64.and - local.set $13 - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $13 - local.get $5 - i64.lt_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $10 - local.get $16 - i32.const 0 - local.get $14 - i32.sub - i32.const 2 - i32.shl - i32.add - i64.load32_u - i64.mul - local.set $10 - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $13 - local.set $22 - local.get $8 - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $17 - local.get $17 - i32.load16_u - local.set $26 - block $break|4 - loop $continue|4 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|4 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|4 - end - unreachable - end - local.get $17 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|3 - end - unreachable - ) - (func $~lib/util/number/prettify (; 40 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $2 - i32.eqz - if - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 2 - i32.add - return - end - local.get $1 - local.get $2 - i32.add - local.set $3 - local.get $1 - local.get $3 - i32.le_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - block $break|0 - local.get $1 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $3 - i32.const 2 - i32.add - return - else - local.get $3 - i32.const 0 - i32.gt_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $4 - local.get $4 - i32.const 2 - i32.add - local.get $4 - i32.const 0 - local.get $2 - i32.sub - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.store16 - local.get $1 - i32.const 1 - i32.add - return - else - i32.const -6 - local.get $3 - i32.lt_s - if (result i32) - local.get $3 - i32.const 0 - i32.le_s - else - i32.const 0 - end - if - i32.const 2 - local.get $3 - i32.sub - local.set $4 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $1 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - i32.const 48 - i32.const 46 - i32.const 16 - i32.shl - i32.or - i32.store - block $break|1 - i32.const 2 - local.set $5 - loop $loop|1 - local.get $5 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|1 - end - unreachable - end - local.get $1 - local.get $4 - i32.add - return - else - local.get $1 - i32.const 1 - i32.eq - if - local.get $0 - i32.const 101 - i32.store16 offset=2 - local.get $0 - i32.const 4 - i32.add - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - local.get $5 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $5 - i32.sub - local.set $5 - end - local.get $5 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $7 - local.get $4 - local.set $10 - local.get $5 - local.set $9 - local.get $7 - local.set $8 - local.get $10 - local.get $9 - local.get $8 - call $~lib/util/number/utoa32_lut - local.get $4 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $7 - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - else - local.get $1 - i32.const 1 - i32.shl - local.set $7 - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.const 2 - i32.add - local.get $7 - i32.const 2 - i32.sub - call $~lib/memory/memory.copy - local.get $0 - i32.const 46 - i32.store16 offset=2 - local.get $0 - local.get $7 - i32.add - i32.const 101 - i32.store16 offset=2 - local.get $1 - local.get $0 - local.get $7 - i32.add - i32.const 4 - i32.add - local.set $9 - local.get $3 - i32.const 1 - i32.sub - local.set $8 - local.get $8 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $8 - i32.sub - local.set $8 - end - local.get $8 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $4 - local.get $9 - local.set $11 - local.get $8 - local.set $5 - local.get $4 - local.set $10 - local.get $11 - local.get $5 - local.get $10 - call $~lib/util/number/utoa32_lut - local.get $9 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $4 - i32.add - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - end - unreachable - end - unreachable - end - unreachable - end - unreachable - ) - (func $~lib/util/number/dtoa_core (; 41 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 i64) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i32) - (local $11 i64) - (local $12 i64) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 f64) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i64) - (local $25 i64) - (local $26 i32) - (local $27 i64) - (local $28 i32) - local.get $1 - f64.const 0 - f64.lt - local.set $2 - local.get $2 - if - local.get $1 - f64.neg - local.set $1 - local.get $0 - i32.const 45 - i32.store16 - end - local.get $1 - local.set $5 - local.get $0 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i64.reinterpret_f64 - local.set $6 - local.get $6 - i64.const 9218868437227405312 - i64.and - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.set $7 - local.get $6 - i64.const 4503599627370495 - i64.and - local.set $8 - local.get $7 - i32.const 0 - i32.ne - i64.extend_i32_u - i64.const 52 - i64.shl - local.get $8 - i64.add - local.set $9 - local.get $7 - i32.const 1 - local.get $7 - i32.const 0 - i32.ne - select - i32.const 1023 - i32.const 52 - i32.add - i32.sub - local.set $7 - local.get $9 - local.set $11 - local.get $7 - local.set $10 - local.get $11 - i64.const 1 - i64.shl - i64.const 1 - i64.add - local.set $12 - local.get $10 - i32.const 1 - i32.sub - local.set $13 - local.get $12 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $12 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $12 - local.get $13 - local.get $14 - i32.sub - local.set $13 - i32.const 1 - local.get $11 - i64.const 4503599627370496 - i64.eq - i32.add - local.set $15 - local.get $12 - global.set $~lib/util/number/_frc_plus - local.get $11 - local.get $15 - i64.extend_i32_s - i64.shl - i64.const 1 - i64.sub - local.get $10 - local.get $15 - i32.sub - local.get $13 - i32.sub - i64.extend_i32_s - i64.shl - global.set $~lib/util/number/_frc_minus - local.get $13 - global.set $~lib/util/number/_exp - global.get $~lib/util/number/_exp - local.set $10 - i32.const -61 - local.get $10 - i32.sub - f64.convert_i32_s - f64.const 0.30102999566398114 - f64.mul - f64.const 347 - f64.add - local.set $16 - local.get $16 - i32.trunc_f64_s - local.set $15 - local.get $15 - local.get $15 - f64.convert_i32_s - local.get $16 - f64.ne - i32.add - local.set $15 - local.get $15 - i32.const 3 - i32.shr_s - i32.const 1 - i32.add - local.set $14 - i32.const 348 - local.get $14 - i32.const 3 - i32.shl - i32.sub - global.set $~lib/util/number/_K - i32.const 1656 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_frc_pow - i32.const 1880 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_exp_pow - local.get $9 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $9 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $9 - local.get $7 - local.get $14 - i32.sub - local.set $7 - global.get $~lib/util/number/_frc_pow - local.set $12 - global.get $~lib/util/number/_exp_pow - local.set $15 - local.get $9 - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $24 - local.get $24 - i64.const 2147483647 - i64.add - local.set $24 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $24 - i64.const 32 - i64.shr_u - local.set $24 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $24 - i64.add - local.set $24 - local.get $7 - local.set $10 - local.get $15 - local.set $13 - local.get $10 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $10 - global.get $~lib/util/number/_frc_plus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $23 - local.get $11 - i64.const 4294967295 - i64.and - local.set $22 - local.get $17 - i64.const 32 - i64.shr_u - local.set $21 - local.get $11 - i64.const 32 - i64.shr_u - local.set $20 - local.get $23 - local.get $22 - i64.mul - local.set $19 - local.get $21 - local.get $22 - i64.mul - local.get $19 - i64.const 32 - i64.shr_u - i64.add - local.set $18 - local.get $23 - local.get $20 - i64.mul - local.get $18 - i64.const 4294967295 - i64.and - i64.add - local.set $25 - local.get $25 - i64.const 2147483647 - i64.add - local.set $25 - local.get $18 - i64.const 32 - i64.shr_u - local.set $18 - local.get $25 - i64.const 32 - i64.shr_u - local.set $25 - local.get $21 - local.get $20 - i64.mul - local.get $18 - i64.add - local.get $25 - i64.add - i64.const 1 - i64.sub - local.set $25 - global.get $~lib/util/number/_exp - local.set $26 - local.get $15 - local.set $13 - local.get $26 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $26 - global.get $~lib/util/number/_frc_minus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $27 - local.get $27 - i64.const 2147483647 - i64.add - local.set $27 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $27 - i64.const 32 - i64.shr_u - local.set $27 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $27 - i64.add - i64.const 1 - i64.add - local.set $27 - local.get $25 - local.get $27 - i64.sub - local.set $23 - local.get $4 - local.get $24 - local.get $10 - local.get $25 - local.get $26 - local.get $23 - local.get $3 - call $~lib/util/number/genDigits - local.set $28 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $28 - local.get $2 - i32.sub - global.get $~lib/util/number/_K - call $~lib/util/number/prettify - local.set $28 - local.get $28 - local.get $2 - i32.add - ) - (func $~lib/string/String#substring (; 42 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $6 - local.get $2 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $7 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - i32.const 1 - i32.shl - local.set $8 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - i32.const 1 - i32.shl - local.set $9 - local.get $9 - local.get $8 - i32.sub - local.set $3 - local.get $3 - i32.eqz - if - i32.const 2000 - call $~lib/rt/pure/__retain - return - end - local.get $8 - i32.eqz - if (result i32) - local.get $9 - local.get $0 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - i32.eq - else - i32.const 0 - end - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $3 - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $10 - local.get $10 - local.get $0 - local.get $8 - i32.add - local.get $3 - call $~lib/memory/memory.copy - local.get $10 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/dtoa (; 43 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - f64.const 0 - f64.eq - if - i32.const 824 - call $~lib/rt/pure/__retain - return - end - local.get $0 - call $~lib/number/isFinite - i32.eqz - if - local.get $0 - call $~lib/number/isNaN - if - i32.const 848 - call $~lib/rt/pure/__retain - return - end - i32.const 872 - i32.const 912 - local.get $0 - f64.const 0 - f64.lt - select - call $~lib/rt/pure/__retain - return - end - i32.const 28 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $1 - local.get $1 - local.get $0 - call $~lib/util/number/dtoa_core - local.set $2 - local.get $2 - i32.const 28 - i32.eq - if - local.get $1 - call $~lib/rt/pure/__retain - return - end - local.get $1 - i32.const 0 - local.get $2 - call $~lib/string/String#substring - local.set $3 - local.get $1 - call $~lib/rt/tlsf/__free - local.get $3 - ) - (func $~lib/number/F64#toString (; 44 ;) (type $FUNCSIG$idi) (param $0 f64) (param $1 i32) (result i32) - local.get $0 - call $~lib/util/number/dtoa - ) - (func $start:resolve-ternary~anonymous|0 (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 1 - i32.add - ) - (func $start:resolve-ternary~anonymous|1 (; 46 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 2 - i32.add - ) - (func $resolve-ternary/g1 (; 47 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 3 - i32.add - ) - (func $resolve-ternary/g2 (; 48 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 4 - i32.add - ) - (func $start:resolve-ternary (; 49 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - global.get $resolve-ternary/b - if (result i32) - i32.const 1 - else - i32.const 2 - end - call $~lib/number/I32#toString - local.tee $0 - i32.const 744 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 768 - i32.const 5 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-ternary/b - if (result f64) - f64.const 1 - else - f64.const 2 - end - i32.const 0 - call $~lib/number/F64#toString - local.tee $1 - i32.const 2016 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 768 - i32.const 13 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - i32.const 1 - global.get $resolve-ternary/b - if (result i32) - i32.const 1 - else - i32.const 2 - end - call_indirect (type $FUNCSIG$ii) - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 768 - i32.const 24 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - i32.const 1 - global.get $resolve-ternary/b - if (result i32) - i32.const 3 - else - i32.const 4 - end - call_indirect (type $FUNCSIG$ii) - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 768 - i32.const 35 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - i32.const 1 - global.get $resolve-ternary/b - if (result i32) - i32.const 2 - else - i32.const 4 - end - call_indirect (type $FUNCSIG$ii) - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 768 - i32.const 43 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $start (; 50 ;) (type $FUNCSIG$v) - call $start:resolve-ternary - ) - (func $~lib/array/Array#__visit_impl (; 51 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 53 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/rt/pure/__visit (; 54 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.lt_u - if - return - end - local.get $0 - i32.const 16 - i32.sub - local.set $2 - block $break|0 - block $case5|0 - block $case4|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $1 - local.set $3 - local.get $3 - i32.const 1 - i32.eq - br_if $case0|0 - local.get $3 - i32.const 2 - i32.eq - br_if $case1|0 - local.get $3 - i32.const 3 - i32.eq - br_if $case2|0 - local.get $3 - i32.const 4 - i32.eq - br_if $case3|0 - local.get $3 - i32.const 5 - i32.eq - br_if $case4|0 - br $case5|0 - end - local.get $2 - call $~lib/rt/pure/decrement - br $break|0 - end - local.get $2 - i32.load offset=4 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 75 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $2 - i32.load offset=4 - i32.const 1 - i32.sub - i32.store offset=4 - local.get $2 - call $~lib/rt/pure/markGray - br $break|0 - end - local.get $2 - call $~lib/rt/pure/scan - br $break|0 - end - local.get $2 - i32.load offset=4 - local.set $3 - local.get $3 - i32.const -268435456 - i32.and - local.get $3 - i32.const 1 - i32.add - i32.const -268435456 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 86 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $3 - i32.const 1 - i32.add - i32.store offset=4 - local.get $3 - i32.const 1879048192 - i32.and - i32.const 0 - i32.ne - if - local.get $2 - call $~lib/rt/pure/scanBlack - end - br $break|0 - end - local.get $2 - call $~lib/rt/pure/collectWhite - br $break|0 - end - i32.const 0 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 97 - i32.const 24 - call $~lib/builtins/abort - unreachable - end - end - ) - (func $~lib/rt/__visit_members (; 55 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - block $block$4$break - block $switch$1$default - block $switch$1$case$7 - block $switch$1$case$6 - block $switch$1$case$5 - block $switch$1$case$4 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$6 $switch$1$case$7 $switch$1$default - end - return - end - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - unreachable - end - local.get $0 - i32.load - local.tee $2 - if - local.get $2 - local.get $1 - call $~lib/rt/pure/__visit - end - return - ) - (func $null (; 56 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/resolve-unary.untouched.wat b/tests/compiler/resolve-unary.untouched.wat index 189238ada3..e69de29bb2 100644 --- a/tests/compiler/resolve-unary.untouched.wat +++ b/tests/compiler/resolve-unary.untouched.wat @@ -1,1220 +0,0 @@ -(module - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$v (func)) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (memory $0 1) - (data (i32.const 8) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") - (data (i32.const 32) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") - (data (i32.const 448) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\000\00\00\000\00\00\00\90\01\00\00d\00\00\00") - (data (i32.const 480) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00-\001\00") - (data (i32.const 504) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00r\00e\00s\00o\00l\00v\00e\00-\00u\00n\00a\00r\00y\00.\00t\00s\00") - (data (i32.const 552) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\001\00") - (data (i32.const 576) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\002\00") - (data (i32.const 600) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00t\00r\00u\00e\00") - (data (i32.const 624) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00f\00a\00l\00s\00e\00") - (data (i32.const 656) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00-\002\00") - (data (i32.const 680) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00+\00") - (data (i32.const 704) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00-\00") - (data (i32.const 728) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00!\00") - (data (i32.const 752) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00~\00") - (data (i32.const 776) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00+\00+\00i\00") - (data (i32.const 800) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00-\00-\00i\00") - (data (i32.const 824) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00i\00+\00+\00") - (data (i32.const 848) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00i\00-\00-\00") - (table $0 1 funcref) - (elem (i32.const 0) $null) - (global $~lib/rt/stub/startOffset (mut i32) (i32.const 0)) - (global $~lib/rt/stub/offset (mut i32) (i32.const 0)) - (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) - (global $resolve-unary/a (mut i32) (i32.const 1)) - (global $resolve-unary/b (mut i32) (i32.const 1)) - (global $resolve-unary/foo (mut i32) (i32.const 0)) - (global $resolve-unary/bar (mut i32) (i32.const 0)) - (global $~lib/heap/__heap_base i32 (i32.const 872)) - (export "memory" (memory $0)) - (start $start) - (func $~lib/rt/stub/__retain (; 1 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - ) - (func $~lib/util/number/decimalCount32 (; 2 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - i32.const 100000 - i32.lt_u - if - local.get $0 - i32.const 100 - i32.lt_u - if - i32.const 1 - i32.const 2 - local.get $0 - i32.const 10 - i32.lt_u - select - return - else - i32.const 4 - i32.const 5 - local.get $0 - i32.const 10000 - i32.lt_u - select - local.set $1 - i32.const 3 - local.get $1 - local.get $0 - i32.const 1000 - i32.lt_u - select - return - end - unreachable - else - local.get $0 - i32.const 10000000 - i32.lt_u - if - i32.const 6 - i32.const 7 - local.get $0 - i32.const 1000000 - i32.lt_u - select - return - else - i32.const 9 - i32.const 10 - local.get $0 - i32.const 1000000000 - i32.lt_u - select - local.set $1 - i32.const 8 - local.get $1 - local.get $0 - i32.const 100000000 - i32.lt_u - select - return - end - unreachable - end - unreachable - ) - (func $~lib/rt/stub/maybeGrowMemory (; 3 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - memory.size - local.set $1 - local.get $1 - i32.const 16 - i32.shl - local.set $2 - local.get $0 - local.get $2 - i32.gt_u - if - local.get $0 - local.get $2 - i32.sub - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $3 - local.get $1 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.set $4 - local.get $4 - memory.grow - i32.const 0 - i32.lt_s - if - local.get $3 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - end - local.get $0 - global.set $~lib/rt/stub/offset - ) - (func $~lib/rt/stub/__alloc (; 4 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.const 1073741808 - i32.gt_u - if - unreachable - end - global.get $~lib/rt/stub/offset - i32.const 16 - i32.add - local.set $2 - local.get $0 - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.tee $3 - i32.const 16 - local.tee $4 - local.get $3 - local.get $4 - i32.gt_u - select - local.set $5 - local.get $2 - local.get $5 - i32.add - call $~lib/rt/stub/maybeGrowMemory - local.get $2 - i32.const 16 - i32.sub - local.set $6 - local.get $6 - local.get $5 - i32.store - local.get $6 - i32.const -1 - i32.store offset=4 - local.get $6 - local.get $1 - i32.store offset=8 - local.get $6 - local.get $0 - i32.store offset=12 - local.get $2 - ) - (func $~lib/util/number/utoa32_lut (; 5 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - i32.const 464 - i32.load offset=4 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i32.const 10000 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $1 - i32.const 10000 - i32.div_u - local.set $4 - local.get $1 - i32.const 10000 - i32.rem_u - local.set $5 - local.get $4 - local.set $1 - local.get $5 - i32.const 100 - i32.div_u - local.set $6 - local.get $5 - i32.const 100 - i32.rem_u - local.set $7 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $8 - local.get $3 - local.get $7 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $9 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $8 - local.get $9 - i64.const 32 - i64.shl - i64.or - i64.store - br $continue|0 - end - unreachable - end - local.get $1 - i32.const 100 - i32.ge_u - if - local.get $1 - i32.const 100 - i32.div_u - local.set $7 - local.get $1 - i32.const 100 - i32.rem_u - local.set $6 - local.get $7 - local.set $1 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - end - local.get $1 - i32.const 10 - i32.ge_u - if - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - else - local.get $2 - i32.const 1 - i32.sub - local.set $2 - i32.const 48 - local.get $1 - i32.add - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store16 - end - ) - (func $~lib/util/number/itoa32 (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.eqz - if - i32.const 24 - call $~lib/rt/stub/__retain - return - end - local.get $0 - i32.const 0 - i32.lt_s - local.set $1 - local.get $1 - if - i32.const 0 - local.get $0 - i32.sub - local.set $0 - end - local.get $0 - call $~lib/util/number/decimalCount32 - local.get $1 - i32.add - local.set $2 - local.get $2 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/stub/__alloc - local.set $3 - local.get $3 - local.set $6 - local.get $0 - local.set $5 - local.get $2 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - local.get $1 - if - local.get $3 - i32.const 45 - i32.store16 - end - local.get $3 - call $~lib/rt/stub/__retain - ) - (func $~lib/util/number/itoa (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa32 - return - ) - (func $~lib/number/I32#toString (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa - ) - (func $~lib/rt/stub/__release (; 9 ;) (type $FUNCSIG$vi) (param $0 i32) - nop - ) - (func $~lib/string/String#get:length (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 16 - i32.sub - i32.load offset=12 - i32.const 1 - i32.shr_u - ) - (func $~lib/util/string/compareImpl (; 11 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - local.get $2 - call $~lib/rt/stub/__retain - drop - i32.const 0 - local.set $5 - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $6 - local.get $2 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $7 - block $break|0 - loop $continue|0 - local.get $4 - if (result i32) - local.get $6 - i32.load16_u - local.get $7 - i32.load16_u - i32.sub - local.tee $5 - i32.eqz - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - local.get $6 - i32.const 2 - i32.add - local.set $6 - local.get $7 - i32.const 2 - i32.add - local.set $7 - br $continue|0 - end - unreachable - end - local.get $5 - local.set $8 - local.get $0 - call $~lib/rt/stub/__release - local.get $2 - call $~lib/rt/stub/__release - local.get $8 - ) - (func $~lib/string/String.__eq (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - local.get $1 - call $~lib/rt/stub/__retain - drop - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 0 - i32.eq - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - return - end - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $3 - local.get $1 - call $~lib/string/String#get:length - i32.ne - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - local.get $1 - i32.const 0 - local.get $3 - call $~lib/util/string/compareImpl - i32.eqz - local.set $2 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - ) - (func $~lib/number/Bool#toString (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - if (result i32) - i32.const 616 - call $~lib/rt/stub/__retain - local.tee $1 - else - i32.const 640 - call $~lib/rt/stub/__retain - local.tee $2 - end - call $~lib/rt/stub/__retain - ) - (func $resolve-unary/Foo#constructor (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 4 - call $~lib/rt/stub/__alloc - call $~lib/rt/stub/__retain - local.set $0 - end - local.get $0 - ) - (func $resolve-unary/Foo#plus (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - i32.const 696 - call $~lib/rt/stub/__retain - ) - (func $~lib/string/String#toString (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/rt/stub/__retain - ) - (func $resolve-unary/Foo#minus (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - i32.const 720 - call $~lib/rt/stub/__retain - ) - (func $resolve-unary/Foo#prefix_inc (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/rt/stub/__retain - ) - (func $resolve-unary/Foo#self (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/rt/stub/__retain - ) - (func $resolve-unary/Foo#prefix_dec (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/rt/stub/__retain - ) - (func $resolve-unary/Foo#not (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - i32.const 744 - call $~lib/rt/stub/__retain - ) - (func $resolve-unary/Foo#bitwise_not (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - i32.const 768 - call $~lib/rt/stub/__retain - ) - (func $resolve-unary/Foo#postfix_inc (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/rt/stub/__retain - ) - (func $resolve-unary/Foo#postfix_dec (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/rt/stub/__retain - ) - (func $resolve-unary/Bar#constructor (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 5 - call $~lib/rt/stub/__alloc - call $~lib/rt/stub/__retain - local.set $0 - end - local.get $0 - ) - (func $resolve-unary/Bar.prefix_inc (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - i32.const 792 - call $~lib/rt/stub/__retain - local.set $1 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - ) - (func $resolve-unary/Bar.prefix_dec (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - i32.const 816 - call $~lib/rt/stub/__retain - local.set $1 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - ) - (func $resolve-unary/Bar.postfix_inc (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - i32.const 840 - call $~lib/rt/stub/__retain - local.set $1 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - ) - (func $resolve-unary/Bar.postfix_dec (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/stub/__retain - drop - i32.const 864 - call $~lib/rt/stub/__retain - local.set $1 - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - ) - (func $start:resolve-unary (; 30 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i32) - (local $20 i32) - (local $21 i32) - (local $22 i32) - (local $23 i32) - (local $24 i32) - (local $25 i32) - (local $26 i32) - (local $27 i32) - (local $28 i32) - (local $29 i32) - (local $30 i32) - (local $31 i32) - (local $32 i32) - global.get $~lib/heap/__heap_base - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - global.set $~lib/rt/stub/startOffset - global.get $~lib/rt/stub/startOffset - global.set $~lib/rt/stub/offset - i32.const -1 - call $~lib/number/I32#toString - local.tee $0 - i32.const 496 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 2 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - call $~lib/number/I32#toString - local.tee $1 - i32.const 568 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 7 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/a - i32.const 1 - i32.add - global.set $resolve-unary/a - global.get $resolve-unary/a - call $~lib/number/I32#toString - local.tee $2 - i32.const 592 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 13 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/a - i32.const 1 - i32.sub - global.set $resolve-unary/a - global.get $resolve-unary/a - call $~lib/number/I32#toString - local.tee $3 - i32.const 568 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 18 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/a - i32.eqz - call $~lib/number/Bool#toString - local.tee $4 - i32.const 640 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 23 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/a - i32.eqz - i32.eqz - call $~lib/number/Bool#toString - local.tee $5 - i32.const 616 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 28 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/a - i32.const -1 - i32.xor - call $~lib/number/I32#toString - local.tee $6 - i32.const 672 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 33 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/b - local.tee $7 - i32.const 1 - i32.add - global.set $resolve-unary/b - local.get $7 - call $~lib/number/I32#toString - local.tee $7 - i32.const 568 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 41 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/b - local.tee $8 - i32.const 1 - i32.sub - global.set $resolve-unary/b - local.get $8 - call $~lib/number/I32#toString - local.tee $8 - i32.const 592 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 46 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $resolve-unary/Foo#constructor - global.set $resolve-unary/foo - global.get $resolve-unary/foo - call $resolve-unary/Foo#plus - local.tee $9 - call $~lib/string/String#toString - local.tee $10 - i32.const 696 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 91 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/foo - call $resolve-unary/Foo#minus - local.tee $11 - call $~lib/string/String#toString - local.tee $12 - i32.const 720 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 96 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/foo - call $resolve-unary/Foo#prefix_inc - local.tee $13 - local.tee $14 - global.get $resolve-unary/foo - local.tee $15 - i32.ne - if - local.get $14 - call $~lib/rt/stub/__retain - drop - local.get $15 - call $~lib/rt/stub/__release - end - local.get $14 - global.set $resolve-unary/foo - global.get $resolve-unary/foo - call $resolve-unary/Foo#self - local.tee $14 - global.get $resolve-unary/foo - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 101 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/foo - call $resolve-unary/Foo#prefix_dec - local.tee $15 - local.tee $16 - global.get $resolve-unary/foo - local.tee $17 - i32.ne - if - local.get $16 - call $~lib/rt/stub/__retain - drop - local.get $17 - call $~lib/rt/stub/__release - end - local.get $16 - global.set $resolve-unary/foo - global.get $resolve-unary/foo - call $resolve-unary/Foo#self - local.tee $16 - global.get $resolve-unary/foo - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 106 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/foo - call $resolve-unary/Foo#not - local.tee $17 - call $~lib/string/String#toString - local.tee $18 - i32.const 744 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 111 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/foo - call $resolve-unary/Foo#bitwise_not - local.tee $19 - call $~lib/string/String#toString - local.tee $20 - i32.const 768 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 116 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/foo - local.tee $21 - call $resolve-unary/Foo#postfix_inc - local.tee $22 - local.tee $23 - global.get $resolve-unary/foo - local.tee $24 - i32.ne - if - local.get $23 - call $~lib/rt/stub/__retain - drop - local.get $24 - call $~lib/rt/stub/__release - end - local.get $23 - global.set $resolve-unary/foo - local.get $21 - call $resolve-unary/Foo#self - local.tee $21 - global.get $resolve-unary/foo - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 121 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/foo - local.tee $23 - call $resolve-unary/Foo#postfix_dec - local.tee $24 - local.tee $25 - global.get $resolve-unary/foo - local.tee $26 - i32.ne - if - local.get $25 - call $~lib/rt/stub/__retain - drop - local.get $26 - call $~lib/rt/stub/__release - end - local.get $25 - global.set $resolve-unary/foo - local.get $23 - call $resolve-unary/Foo#self - local.tee $23 - global.get $resolve-unary/foo - i32.eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 126 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $resolve-unary/Bar#constructor - global.set $resolve-unary/bar - global.get $resolve-unary/bar - call $resolve-unary/Bar.prefix_inc - local.tee $25 - call $~lib/string/String#toString - local.tee $26 - i32.const 792 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 151 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/bar - call $resolve-unary/Bar.prefix_dec - local.tee $27 - call $~lib/string/String#toString - local.tee $28 - i32.const 816 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 156 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/bar - call $resolve-unary/Bar.postfix_inc - local.tee $29 - call $~lib/string/String#toString - local.tee $30 - i32.const 840 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 161 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $resolve-unary/bar - call $resolve-unary/Bar.postfix_dec - local.tee $31 - call $~lib/string/String#toString - local.tee $32 - i32.const 864 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 520 - i32.const 166 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/stub/__release - local.get $1 - call $~lib/rt/stub/__release - local.get $2 - call $~lib/rt/stub/__release - local.get $3 - call $~lib/rt/stub/__release - local.get $4 - call $~lib/rt/stub/__release - local.get $5 - call $~lib/rt/stub/__release - local.get $6 - call $~lib/rt/stub/__release - local.get $7 - call $~lib/rt/stub/__release - local.get $8 - call $~lib/rt/stub/__release - local.get $9 - call $~lib/rt/stub/__release - local.get $10 - call $~lib/rt/stub/__release - local.get $11 - call $~lib/rt/stub/__release - local.get $12 - call $~lib/rt/stub/__release - local.get $13 - call $~lib/rt/stub/__release - local.get $14 - call $~lib/rt/stub/__release - local.get $15 - call $~lib/rt/stub/__release - local.get $16 - call $~lib/rt/stub/__release - local.get $17 - call $~lib/rt/stub/__release - local.get $18 - call $~lib/rt/stub/__release - local.get $19 - call $~lib/rt/stub/__release - local.get $20 - call $~lib/rt/stub/__release - local.get $21 - call $~lib/rt/stub/__release - local.get $22 - call $~lib/rt/stub/__release - local.get $23 - call $~lib/rt/stub/__release - local.get $24 - call $~lib/rt/stub/__release - local.get $25 - call $~lib/rt/stub/__release - local.get $26 - call $~lib/rt/stub/__release - local.get $27 - call $~lib/rt/stub/__release - local.get $28 - call $~lib/rt/stub/__release - local.get $29 - call $~lib/rt/stub/__release - local.get $30 - call $~lib/rt/stub/__release - local.get $31 - call $~lib/rt/stub/__release - local.get $32 - call $~lib/rt/stub/__release - ) - (func $start (; 31 ;) (type $FUNCSIG$v) - call $start:resolve-unary - ) - (func $null (; 32 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/retain-release-sanity.untouched.wat b/tests/compiler/retain-release-sanity.untouched.wat index 9d2ccd8933..e69de29bb2 100644 --- a/tests/compiler/retain-release-sanity.untouched.wat +++ b/tests/compiler/retain-release-sanity.untouched.wat @@ -1,4620 +0,0 @@ -(module - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$v (func)) - (type $FUNCSIG$vii (func (param i32 i32))) - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32))) - (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32))) - (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32))) - (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32))) - (memory $0 1) - (data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") - (data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") - (data (i32.const 112) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") - (data (i32.const 160) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") - (data (i32.const 216) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") - (data (i32.const 264) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") - (data (i32.const 320) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") - (data (i32.const 360) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") - (data (i32.const 408) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00A\00r\00r\00a\00y\00 \00i\00s\00 \00e\00m\00p\00t\00y\00") - (data (i32.const 456) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00") - (data (i32.const 472) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00a\00") - (data (i32.const 496) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00b\00") - (data (i32.const 520) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00n\00u\00l\00l\00") - (data (i32.const 544) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00d\00") - (data (i32.const 568) "\08\00\00\00\10\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\93\04\00\00\02\00\00\00\93 \00\00\02\00\00\00\93 \00\00\02\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") - (table $0 1 funcref) - (elem (i32.const 0) $null) - (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) - (global $~lib/rt/tlsf/collectLock (mut i32) (i32.const 0)) - (global $~lib/gc/gc.auto (mut i32) (i32.const 1)) - (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) - (global $~lib/rt/pure/CUR (mut i32) (i32.const 0)) - (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) - (global $~lib/rt/pure/END (mut i32) (i32.const 0)) - (global $~lib/rt/__rtti_base i32 (i32.const 568)) - (global $~lib/heap/__heap_base i32 (i32.const 636)) - (export "memory" (memory $0)) - (start $start) - (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 277 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.set $3 - local.get $3 - i32.const 16 - i32.ge_u - if (result i32) - local.get $3 - i32.const 1073741808 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 279 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $4 - local.get $3 - i32.const 4 - i32.shr_u - local.set $5 - else - i32.const 31 - local.get $3 - i32.clz - i32.sub - local.set $4 - local.get $3 - local.get $4 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $5 - local.get $4 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $4 - end - local.get $4 - i32.const 23 - i32.lt_u - if (result i32) - local.get $5 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 292 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load offset=16 - local.set $6 - local.get $1 - i32.load offset=20 - local.set $7 - local.get $6 - if - local.get $6 - local.get $7 - i32.store offset=20 - end - local.get $7 - if - local.get $7 - local.get $6 - i32.store offset=16 - end - local.get $1 - local.get $0 - local.set $10 - local.get $4 - local.set $9 - local.get $5 - local.set $8 - local.get $10 - local.get $9 - i32.const 4 - i32.shl - local.get $8 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - i32.eq - if - local.get $0 - local.set $11 - local.get $4 - local.set $10 - local.get $5 - local.set $9 - local.get $7 - local.set $8 - local.get $11 - local.get $10 - i32.const 4 - i32.shl - local.get $9 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $8 - i32.store offset=96 - local.get $7 - i32.eqz - if - local.get $0 - local.set $9 - local.get $4 - local.set $8 - local.get $9 - local.get $8 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - local.set $9 - local.get $0 - local.set $8 - local.get $4 - local.set $11 - local.get $9 - i32.const 1 - local.get $5 - i32.shl - i32.const -1 - i32.xor - i32.and - local.tee $9 - local.set $10 - local.get $8 - local.get $11 - i32.const 2 - i32.shl - i32.add - local.get $10 - i32.store offset=4 - local.get $9 - i32.eqz - if - local.get $0 - local.get $0 - i32.load - i32.const 1 - local.get $4 - i32.shl - i32.const -1 - i32.xor - i32.and - i32.store - end - end - end - ) - (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $1 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 205 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 207 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.set $3 - local.get $3 - i32.const 16 - i32.add - local.get $3 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $4 - local.get $4 - i32.load - local.set $5 - local.get $5 - i32.const 1 - i32.and - if - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $5 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $3 - local.get $3 - i32.const 1073741808 - i32.lt_u - if - local.get $0 - local.get $4 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $2 - i32.const 3 - i32.and - local.get $3 - i32.or - local.tee $2 - i32.store - local.get $1 - local.set $6 - local.get $6 - i32.const 16 - i32.add - local.get $6 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $4 - local.get $4 - i32.load - local.set $5 - end - end - local.get $2 - i32.const 2 - i32.and - if - local.get $1 - local.set $6 - local.get $6 - i32.const 4 - i32.sub - i32.load - local.set $6 - local.get $6 - i32.load - local.set $3 - local.get $3 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 228 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $7 - local.get $7 - i32.const 1073741808 - i32.lt_u - if - local.get $0 - local.get $6 - call $~lib/rt/tlsf/removeBlock - local.get $6 - local.get $3 - i32.const 3 - i32.and - local.get $7 - i32.or - local.tee $2 - i32.store - local.get $6 - local.set $1 - end - end - local.get $4 - local.get $5 - i32.const 2 - i32.or - i32.store - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.set $8 - local.get $8 - i32.const 16 - i32.ge_u - if (result i32) - local.get $8 - i32.const 1073741808 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 243 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 16 - i32.add - local.get $8 - i32.add - local.get $4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 244 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $4 - i32.const 4 - i32.sub - local.get $1 - i32.store - local.get $8 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $9 - local.get $8 - i32.const 4 - i32.shr_u - local.set $10 - else - i32.const 31 - local.get $8 - i32.clz - i32.sub - local.set $9 - local.get $8 - local.get $9 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $10 - local.get $9 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $9 - end - local.get $9 - i32.const 23 - i32.lt_u - if (result i32) - local.get $10 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 260 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $7 - local.get $9 - local.set $3 - local.get $10 - local.set $6 - local.get $7 - local.get $3 - i32.const 4 - i32.shl - local.get $6 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $11 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - local.get $11 - i32.store offset=20 - local.get $11 - if - local.get $11 - local.get $1 - i32.store offset=16 - end - local.get $0 - local.set $12 - local.get $9 - local.set $7 - local.get $10 - local.set $3 - local.get $1 - local.set $6 - local.get $12 - local.get $7 - i32.const 4 - i32.shl - local.get $3 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store offset=96 - local.get $0 - local.get $0 - i32.load - i32.const 1 - local.get $9 - i32.shl - i32.or - i32.store - local.get $0 - local.set $13 - local.get $9 - local.set $12 - local.get $0 - local.set $3 - local.get $9 - local.set $6 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - i32.const 1 - local.get $10 - i32.shl - i32.or - local.set $7 - local.get $13 - local.get $12 - i32.const 2 - i32.shl - i32.add - local.get $7 - i32.store offset=4 - ) - (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - local.get $2 - i32.le_u - if (result i32) - local.get $1 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - if (result i32) - local.get $2 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 386 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $3 - local.get $3 - i32.load offset=1568 - local.set $4 - i32.const 0 - local.set $5 - local.get $4 - if - local.get $1 - local.get $4 - i32.const 16 - i32.add - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 396 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 16 - i32.sub - local.get $4 - i32.eq - if - local.get $1 - i32.const 16 - i32.sub - local.set $1 - local.get $4 - i32.load - local.set $5 - else - nop - end - else - local.get $1 - local.get $0 - i32.const 1572 - i32.add - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 408 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - end - local.get $2 - local.get $1 - i32.sub - local.set $6 - local.get $6 - i32.const 48 - i32.lt_u - if - i32.const 0 - return - end - local.get $6 - i32.const 16 - i32.const 1 - i32.shl - i32.sub - local.set $7 - local.get $1 - local.set $8 - local.get $8 - local.get $7 - i32.const 1 - i32.or - local.get $5 - i32.const 2 - i32.and - i32.or - i32.store - local.get $8 - i32.const 0 - i32.store offset=16 - local.get $8 - i32.const 0 - i32.store offset=20 - local.get $1 - local.get $6 - i32.add - i32.const 16 - i32.sub - local.set $4 - local.get $4 - i32.const 0 - i32.const 2 - i32.or - i32.store - local.get $0 - local.set $9 - local.get $4 - local.set $3 - local.get $9 - local.get $3 - i32.store offset=1568 - local.get $0 - local.get $8 - call $~lib/rt/tlsf/insertBlock - i32.const 1 - ) - (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $~lib/heap/__heap_base - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.set $0 - memory.size - local.set $1 - local.get $0 - i32.const 1572 - i32.add - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $2 - local.get $2 - local.get $1 - i32.gt_s - if (result i32) - local.get $2 - local.get $1 - i32.sub - memory.grow - i32.const 0 - i32.lt_s - else - i32.const 0 - end - if - unreachable - end - local.get $0 - local.set $3 - local.get $3 - i32.const 0 - i32.store - local.get $3 - local.set $5 - i32.const 0 - local.set $4 - local.get $5 - local.get $4 - i32.store offset=1568 - block $break|0 - i32.const 0 - local.set $5 - loop $loop|0 - local.get $5 - i32.const 23 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $3 - local.set $7 - local.get $5 - local.set $6 - i32.const 0 - local.set $4 - local.get $7 - local.get $6 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store offset=4 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - i32.const 16 - i32.lt_u - i32.eqz - br_if $break|1 - local.get $3 - local.set $9 - local.get $5 - local.set $8 - local.get $7 - local.set $6 - i32.const 0 - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $6 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store offset=96 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - local.get $0 - i32.const 1572 - i32.add - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - memory.size - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - drop - local.get $3 - global.set $~lib/rt/tlsf/ROOT - ) - (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.const 1073741808 - i32.ge_u - if - i32.const 176 - i32.const 128 - i32.const 457 - i32.const 29 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.tee $1 - i32.const 16 - local.tee $2 - local.get $1 - local.get $2 - i32.gt_u - select - ) - (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $2 - local.get $1 - i32.const 4 - i32.shr_u - local.set $3 - else - local.get $1 - i32.const 536870904 - i32.lt_u - if (result i32) - local.get $1 - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - i32.add - i32.const 1 - i32.sub - else - local.get $1 - end - local.set $4 - i32.const 31 - local.get $4 - i32.clz - i32.sub - local.set $2 - local.get $4 - local.get $2 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $3 - local.get $2 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $2 - end - local.get $2 - i32.const 23 - i32.lt_u - if (result i32) - local.get $3 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 338 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $5 - local.get $2 - local.set $4 - local.get $5 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - i32.const 0 - i32.const -1 - i32.xor - local.get $3 - i32.shl - i32.and - local.set $6 - i32.const 0 - local.set $7 - local.get $6 - i32.eqz - if - local.get $0 - i32.load - i32.const 0 - i32.const -1 - i32.xor - local.get $2 - i32.const 1 - i32.add - i32.shl - i32.and - local.set $5 - local.get $5 - i32.eqz - if - i32.const 0 - local.set $7 - else - local.get $5 - i32.ctz - local.set $2 - local.get $0 - local.set $8 - local.get $2 - local.set $4 - local.get $8 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - local.set $6 - local.get $6 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 351 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $9 - local.get $2 - local.set $8 - local.get $6 - i32.ctz - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $4 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $7 - end - else - local.get $0 - local.set $9 - local.get $2 - local.set $8 - local.get $6 - i32.ctz - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $4 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $7 - end - local.get $7 - ) - (func $~lib/rt/pure/markGray (; 11 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 268435456 - i32.ne - if - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 268435456 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 2 - call $~lib/rt/__visit_members - end - ) - (func $~lib/rt/tlsf/freeBlock (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $2 - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $1 - call $~lib/rt/tlsf/insertBlock - local.get $1 - call $~lib/rt/rtrace/onfree - ) - (func $~lib/rt/pure/scanBlack (; 13 ;) (type $FUNCSIG$vi) (param $0 i32) - local.get $0 - local.get $0 - i32.load offset=4 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 0 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 4 - call $~lib/rt/__visit_members - ) - (func $~lib/rt/pure/scan (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 268435456 - i32.eq - if - local.get $1 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - if - local.get $0 - call $~lib/rt/pure/scanBlack - else - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 536870912 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 3 - call $~lib/rt/__visit_members - end - end - ) - (func $~lib/rt/pure/collectWhite (; 15 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 536870912 - i32.eq - if (result i32) - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - else - i32.const 0 - end - if - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 0 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 5 - call $~lib/rt/__visit_members - global.get $~lib/rt/tlsf/ROOT - local.get $0 - call $~lib/rt/tlsf/freeBlock - end - ) - (func $~lib/rt/pure/__collect (; 16 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/rt/pure/ROOTS - local.set $0 - local.get $0 - local.set $1 - block $break|0 - local.get $1 - local.set $2 - global.get $~lib/rt/pure/CUR - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - i32.load offset=4 - local.set $5 - local.get $5 - i32.const 1879048192 - i32.and - i32.const 805306368 - i32.eq - if (result i32) - local.get $5 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - else - i32.const 0 - end - if - local.get $4 - call $~lib/rt/pure/markGray - local.get $1 - local.get $4 - i32.store - local.get $1 - i32.const 4 - i32.add - local.set $1 - else - local.get $5 - i32.const 1879048192 - i32.and - i32.const 0 - i32.eq - if (result i32) - local.get $5 - i32.const 268435455 - i32.and - i32.eqz - else - i32.const 0 - end - if - global.get $~lib/rt/tlsf/ROOT - local.get $4 - call $~lib/rt/tlsf/freeBlock - else - local.get $4 - local.get $5 - i32.const -2147483648 - i32.const -1 - i32.xor - i32.and - i32.store offset=4 - end - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - local.get $1 - global.set $~lib/rt/pure/CUR - block $break|1 - local.get $0 - local.set $5 - loop $loop|1 - local.get $5 - local.get $1 - i32.lt_u - i32.eqz - br_if $break|1 - local.get $5 - i32.load - call $~lib/rt/pure/scan - local.get $5 - i32.const 4 - i32.add - local.set $5 - br $loop|1 - end - unreachable - end - block $break|2 - local.get $0 - local.set $5 - loop $loop|2 - local.get $5 - local.get $1 - i32.lt_u - i32.eqz - br_if $break|2 - local.get $5 - i32.load - local.set $4 - local.get $4 - local.get $4 - i32.load offset=4 - i32.const -2147483648 - i32.const -1 - i32.xor - i32.and - i32.store offset=4 - local.get $4 - call $~lib/rt/pure/collectWhite - local.get $5 - i32.const 4 - i32.add - local.set $5 - br $loop|2 - end - unreachable - end - local.get $0 - global.set $~lib/rt/pure/CUR - ) - (func $~lib/rt/tlsf/growMemory (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - i32.const 536870904 - i32.lt_u - if - local.get $1 - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - i32.add - local.set $1 - end - memory.size - local.set $2 - local.get $1 - i32.const 16 - local.get $2 - i32.const 16 - i32.shl - i32.const 16 - i32.sub - local.get $0 - local.set $3 - local.get $3 - i32.load offset=1568 - i32.ne - i32.shl - i32.add - local.set $1 - local.get $1 - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $4 - local.get $2 - local.tee $3 - local.get $4 - local.tee $5 - local.get $3 - local.get $5 - i32.gt_s - select - local.set $6 - local.get $6 - memory.grow - i32.const 0 - i32.lt_s - if - local.get $4 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - memory.size - local.set $7 - local.get $0 - local.get $2 - i32.const 16 - i32.shl - local.get $7 - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - drop - ) - (func $~lib/rt/tlsf/prepareBlock (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $1 - i32.load - local.set $3 - local.get $2 - i32.const 15 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 365 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.get $2 - i32.sub - local.set $4 - local.get $4 - i32.const 32 - i32.ge_u - if - local.get $1 - local.get $2 - local.get $3 - i32.const 2 - i32.and - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.get $2 - i32.add - local.set $5 - local.get $5 - local.get $4 - i32.const 16 - i32.sub - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $5 - call $~lib/rt/tlsf/insertBlock - else - local.get $1 - local.get $3 - i32.const 1 - i32.const -1 - i32.xor - i32.and - i32.store - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - i32.load - i32.const 2 - i32.const -1 - i32.xor - i32.and - i32.store - end - ) - (func $~lib/rt/tlsf/allocateBlock (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/rt/tlsf/collectLock - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 486 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/rt/tlsf/prepareSize - local.set $2 - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - global.get $~lib/gc/gc.auto - if - i32.const 1 - global.set $~lib/rt/tlsf/collectLock - call $~lib/rt/pure/__collect - i32.const 0 - global.set $~lib/rt/tlsf/collectLock - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - local.get $0 - local.get $2 - call $~lib/rt/tlsf/growMemory - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 498 - i32.const 19 - call $~lib/builtins/abort - unreachable - end - end - else - local.get $0 - local.get $2 - call $~lib/rt/tlsf/growMemory - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 503 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - end - end - local.get $3 - i32.load - i32.const -4 - i32.and - local.get $2 - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 506 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=12 - local.get $0 - local.get $3 - call $~lib/rt/tlsf/removeBlock - local.get $0 - local.get $3 - local.get $2 - call $~lib/rt/tlsf/prepareBlock - local.get $3 - call $~lib/rt/rtrace/onalloc - local.get $3 - ) - (func $~lib/rt/tlsf/__alloc (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/rt/tlsf/ROOT - local.set $2 - local.get $2 - i32.eqz - if - call $~lib/rt/tlsf/initializeRoot - global.get $~lib/rt/tlsf/ROOT - local.set $2 - end - local.get $2 - local.get $0 - call $~lib/rt/tlsf/allocateBlock - local.set $3 - local.get $3 - local.get $1 - i32.store offset=8 - local.get $3 - i32.const 16 - i32.add - ) - (func $~lib/memory/memory.fill (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - block $~lib/util/memory/memset|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 1 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 2 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.get $4 - i32.store8 - local.get $5 - i32.const 2 - i32.add - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 2 - i32.sub - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 3 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 6 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 3 - i32.add - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 8 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - i32.const 0 - local.get $5 - i32.sub - i32.const 3 - i32.and - local.set $6 - local.get $5 - local.get $6 - i32.add - local.set $5 - local.get $3 - local.get $6 - i32.sub - local.set $3 - local.get $3 - i32.const -4 - i32.and - local.set $3 - i32.const -1 - i32.const 255 - i32.div_u - local.get $4 - i32.const 255 - i32.and - i32.mul - local.set $7 - local.get $5 - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.get $7 - i32.store - local.get $3 - i32.const 8 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 4 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 8 - i32.add - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 12 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 8 - i32.sub - local.get $7 - i32.store - local.get $3 - i32.const 24 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 12 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 16 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 20 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 24 - i32.add - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 28 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 24 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 20 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 16 - i32.sub - local.get $7 - i32.store - i32.const 24 - local.get $5 - i32.const 4 - i32.and - i32.add - local.set $6 - local.get $5 - local.get $6 - i32.add - local.set $5 - local.get $3 - local.get $6 - i32.sub - local.set $3 - local.get $7 - i64.extend_i32_u - local.get $7 - i64.extend_i32_u - i64.const 32 - i64.shl - i64.or - local.set $8 - block $break|0 - loop $continue|0 - local.get $3 - i32.const 32 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $5 - local.get $8 - i64.store - local.get $5 - i32.const 8 - i32.add - local.get $8 - i64.store - local.get $5 - i32.const 16 - i32.add - local.get $8 - i64.store - local.get $5 - i32.const 24 - i32.add - local.get $8 - i64.store - local.get $3 - i32.const 32 - i32.sub - local.set $3 - local.get $5 - i32.const 32 - i32.add - local.set $5 - br $continue|0 - end - unreachable - end - end - ) - (func $~lib/rt/pure/increment (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const -268435456 - i32.and - local.get $1 - i32.const 1 - i32.add - i32.const -268435456 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 104 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=4 - local.get $0 - call $~lib/rt/rtrace/onincrement - local.get $0 - i32.load - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 107 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - ) - (func $~lib/rt/pure/__retain (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.gt_u - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/pure/increment - end - local.get $0 - ) - (func $~lib/rt/__typeinfo (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - global.get $~lib/rt/__rtti_base - local.set $1 - local.get $0 - local.get $1 - i32.load - i32.gt_u - if - i32.const 280 - i32.const 336 - i32.const 22 - i32.const 27 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 4 - i32.add - local.get $0 - i32.const 8 - i32.mul - i32.add - i32.load - ) - (func $~lib/util/memory/memcpy (; 25 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - loop $continue|0 - local.get $2 - if (result i32) - local.get $1 - i32.const 3 - i32.and - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $0 - i32.const 3 - i32.and - i32.const 0 - i32.eq - if - block $break|1 - loop $continue|1 - local.get $2 - i32.const 16 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $1 - i32.const 8 - i32.add - i32.load - i32.store - local.get $0 - i32.const 12 - i32.add - local.get $1 - i32.const 12 - i32.add - i32.load - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|1 - end - unreachable - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.set $0 - local.get $1 - i32.const 4 - i32.add - local.set $1 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.get $1 - i32.load16_u - i32.store16 - local.get $0 - i32.const 2 - i32.add - local.set $0 - local.get $1 - i32.const 2 - i32.add - local.set $1 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - return - end - local.get $2 - i32.const 32 - i32.ge_u - if - block $break|2 - block $case2|2 - block $case1|2 - block $case0|2 - local.get $0 - i32.const 3 - i32.and - local.set $5 - local.get $5 - i32.const 1 - i32.eq - br_if $case0|2 - local.get $5 - i32.const 2 - i32.eq - br_if $case1|2 - local.get $5 - i32.const 3 - i32.eq - br_if $case2|2 - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 3 - i32.sub - local.set $2 - block $break|3 - loop $continue|3 - local.get $2 - i32.const 17 - i32.ge_u - i32.eqz - br_if $break|3 - local.get $1 - i32.const 1 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 5 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 9 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 13 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|3 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - block $break|4 - loop $continue|4 - local.get $2 - i32.const 18 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $1 - i32.const 2 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 6 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 10 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 14 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|4 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - block $break|5 - loop $continue|5 - local.get $2 - i32.const 19 - i32.ge_u - i32.eqz - br_if $break|5 - local.get $1 - i32.const 3 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 7 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 11 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 15 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|5 - end - unreachable - end - br $break|2 - end - end - local.get $2 - i32.const 16 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - ) - (func $~lib/memory/memory.copy (; 26 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - block $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - local.get $4 - i32.eq - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $4 - local.get $3 - i32.add - local.get $5 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $5 - local.get $3 - i32.add - local.get $4 - i32.le_u - end - if - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $4 - i32.lt_u - if - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|0 - loop $continue|0 - local.get $5 - i32.const 7 - i32.and - i32.eqz - br_if $break|0 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $3 - i32.const 1 - i32.sub - local.set $3 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - br $continue|0 - end - unreachable - end - block $break|1 - loop $continue|1 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $5 - local.get $4 - i64.load - i64.store - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - i32.const 8 - i32.add - local.set $5 - local.get $4 - i32.const 8 - i32.add - local.set $4 - br $continue|1 - end - unreachable - end - end - block $break|2 - loop $continue|2 - local.get $3 - i32.eqz - br_if $break|2 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - local.get $3 - i32.const 1 - i32.sub - local.set $3 - br $continue|2 - end - unreachable - end - else - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|3 - loop $continue|3 - local.get $5 - local.get $3 - i32.add - i32.const 7 - i32.and - i32.eqz - br_if $break|3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - local.get $3 - i32.add - local.get $4 - local.get $3 - i32.add - i64.load - i64.store - br $continue|4 - end - unreachable - end - end - block $break|5 - loop $continue|5 - local.get $3 - i32.eqz - br_if $break|5 - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|5 - end - unreachable - end - end - end - ) - (func $~lib/rt/tlsf/__free (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 593 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 594 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/tlsf/ROOT - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/tlsf/freeBlock - ) - (func $~lib/rt/pure/growRoots (; 28 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/rt/pure/ROOTS - local.set $0 - global.get $~lib/rt/pure/CUR - local.get $0 - i32.sub - local.set $1 - local.get $1 - i32.const 2 - i32.mul - local.tee $2 - i32.const 64 - i32.const 2 - i32.shl - local.tee $3 - local.get $2 - local.get $3 - i32.gt_u - select - local.set $4 - local.get $4 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $5 - local.get $5 - i32.const 16 - i32.sub - call $~lib/rt/rtrace/onfree - local.get $5 - local.get $0 - local.get $1 - call $~lib/memory/memory.copy - local.get $0 - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/rtrace/onalloc - local.get $0 - call $~lib/rt/tlsf/__free - end - local.get $5 - global.set $~lib/rt/pure/ROOTS - local.get $5 - local.get $1 - i32.add - global.set $~lib/rt/pure/CUR - local.get $5 - local.get $4 - i32.add - global.set $~lib/rt/pure/END - ) - (func $~lib/rt/pure/appendRoot (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - global.get $~lib/rt/pure/CUR - local.set $1 - local.get $1 - global.get $~lib/rt/pure/END - i32.ge_u - if - call $~lib/rt/pure/growRoots - global.get $~lib/rt/pure/CUR - local.set $1 - end - local.get $1 - local.get $0 - i32.store - local.get $1 - i32.const 4 - i32.add - global.set $~lib/rt/pure/CUR - ) - (func $~lib/rt/pure/decrement (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 268435455 - i32.and - local.set $2 - local.get $0 - call $~lib/rt/rtrace/ondecrement - local.get $0 - i32.load - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 115 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - i32.eq - if - local.get $0 - i32.const 16 - i32.add - i32.const 1 - call $~lib/rt/__visit_members - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - if - global.get $~lib/rt/tlsf/ROOT - local.get $0 - call $~lib/rt/tlsf/freeBlock - else - local.get $0 - i32.const -2147483648 - i32.const 0 - i32.or - i32.const 0 - i32.or - i32.store offset=4 - end - else - local.get $2 - i32.const 0 - i32.gt_u - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 124 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=8 - call $~lib/rt/__typeinfo - i32.const 16 - i32.and - i32.eqz - if - local.get $0 - i32.const -2147483648 - i32.const 805306368 - i32.or - local.get $2 - i32.const 1 - i32.sub - i32.or - i32.store offset=4 - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - if - local.get $0 - call $~lib/rt/pure/appendRoot - end - else - local.get $0 - local.get $1 - i32.const 268435455 - i32.const -1 - i32.xor - i32.and - local.get $2 - i32.const 1 - i32.sub - i32.or - i32.store offset=4 - end - end - ) - (func $~lib/rt/pure/__release (; 31 ;) (type $FUNCSIG$vi) (param $0 i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.gt_u - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/pure/decrement - end - ) - (func $~lib/arraybuffer/ArrayBufferView#constructor (; 32 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $1 - i32.const 1073741808 - local.get $2 - i32.shr_u - i32.gt_u - if - i32.const 24 - i32.const 72 - i32.const 14 - i32.const 56 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $2 - i32.shl - local.tee $1 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $3 - local.get $3 - i32.const 0 - local.get $1 - call $~lib/memory/memory.fill - local.get $0 - i32.eqz - if - i32.const 12 - i32.const 2 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $0 - end - local.get $0 - i32.const 0 - i32.store - local.get $0 - i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - i32.load - local.tee $4 - i32.ne - if - local.get $5 - call $~lib/rt/pure/__retain - drop - local.get $4 - call $~lib/rt/pure/__release - end - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $0 - ) - (func $~lib/array/Array#constructor (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 16 - i32.const 3 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 2 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - i32.const 0 - i32.store offset=12 - local.get $0 - local.get $1 - i32.store offset=12 - local.get $0 - ) - (func $~lib/rt/tlsf/reallocateBlock (; 34 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $2 - call $~lib/rt/tlsf/prepareSize - local.set $3 - local.get $1 - i32.load - local.set $4 - local.get $4 - i32.const 1 - i32.and - i32.eqz - if (result i32) - local.get $1 - i32.load offset=4 - i32.const -268435456 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 521 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - local.get $4 - i32.const -4 - i32.and - i32.le_u - if - local.get $0 - local.get $1 - local.get $3 - call $~lib/rt/tlsf/prepareBlock - local.get $1 - local.get $2 - i32.store offset=12 - local.get $1 - return - end - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $6 - local.get $6 - i32.load - local.set $7 - local.get $7 - i32.const 1 - i32.and - if - local.get $4 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $7 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $5 - local.get $5 - local.get $3 - i32.ge_u - if - local.get $0 - local.get $6 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $4 - i32.const 3 - i32.and - local.get $5 - i32.or - i32.store - local.get $1 - local.get $2 - i32.store offset=12 - local.get $0 - local.get $1 - local.get $3 - call $~lib/rt/tlsf/prepareBlock - local.get $1 - return - end - end - local.get $0 - local.get $2 - call $~lib/rt/tlsf/allocateBlock - local.set $8 - local.get $8 - local.get $1 - i32.load offset=8 - i32.store offset=8 - local.get $8 - i32.const 16 - i32.add - local.get $1 - i32.const 16 - i32.add - local.get $2 - call $~lib/memory/memory.copy - local.get $1 - local.get $4 - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $1 - call $~lib/rt/tlsf/insertBlock - local.get $1 - call $~lib/rt/rtrace/onfree - local.get $8 - ) - (func $~lib/rt/tlsf/__realloc (; 35 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 585 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/tlsf/ROOT - local.get $0 - i32.const 16 - i32.sub - local.get $1 - call $~lib/rt/tlsf/reallocateBlock - i32.const 16 - i32.add - ) - (func $~lib/array/ensureSize (; 36 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=8 - local.set $3 - local.get $1 - local.get $3 - local.get $2 - i32.shr_u - i32.gt_u - if - local.get $1 - i32.const 1073741808 - local.get $2 - i32.shr_u - i32.gt_u - if - i32.const 24 - i32.const 376 - i32.const 14 - i32.const 47 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load - local.set $4 - local.get $1 - local.get $2 - i32.shl - local.set $5 - local.get $4 - local.get $5 - call $~lib/rt/tlsf/__realloc - local.set $6 - local.get $6 - local.get $3 - i32.add - i32.const 0 - local.get $5 - local.get $3 - i32.sub - call $~lib/memory/memory.fill - local.get $6 - local.get $4 - i32.ne - if - local.get $0 - local.get $6 - call $~lib/rt/pure/__retain - i32.store - local.get $0 - local.get $6 - i32.store offset=4 - end - local.get $0 - local.get $5 - i32.store offset=8 - end - ) - (func $~lib/array/Array#push (; 37 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 1 - i32.add - local.set $3 - local.get $0 - local.get $3 - i32.const 2 - call $~lib/array/ensureSize - local.get $0 - i32.load offset=4 - local.get $2 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - local.get $0 - local.get $3 - i32.store offset=12 - local.get $3 - ) - (func $~lib/array/Array#pop (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.load offset=12 - local.set $1 - local.get $1 - i32.const 1 - i32.lt_s - if - i32.const 424 - i32.const 376 - i32.const 274 - i32.const 20 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.sub - local.tee $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - local.get $0 - local.get $1 - i32.store offset=12 - local.get $2 - ) - (func $~lib/array/Array<~lib/array/Array<~lib/string/String>>#constructor (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 16 - i32.const 5 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 2 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - i32.const 0 - i32.store offset=12 - local.get $0 - local.get $1 - i32.store offset=12 - local.get $0 - ) - (func $~lib/array/Array<~lib/string/String>#constructor (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 16 - i32.const 4 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 2 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - i32.const 0 - i32.store offset=12 - local.get $0 - local.get $1 - i32.store offset=12 - local.get $0 - ) - (func $~lib/array/Array<~lib/string/String>#push (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 1 - i32.add - local.set $3 - local.get $0 - local.get $3 - i32.const 2 - call $~lib/array/ensureSize - local.get $0 - i32.load offset=4 - local.get $2 - i32.const 2 - i32.shl - i32.add - local.get $1 - call $~lib/rt/pure/__retain - i32.store - local.get $0 - local.get $3 - i32.store offset=12 - local.get $3 - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/string/String#get:length (; 42 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 16 - i32.sub - i32.load offset=12 - i32.const 1 - i32.shr_u - ) - (func $~lib/string/String#concat (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 0 - i32.eq - if - i32.const 536 - local.tee $2 - local.get $1 - local.tee $3 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/rt/pure/__release - end - local.get $2 - local.set $1 - end - local.get $0 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - local.set $4 - local.get $1 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - local.set $5 - local.get $4 - local.get $5 - i32.add - local.set $6 - local.get $6 - i32.const 0 - i32.eq - if - i32.const 472 - call $~lib/rt/pure/__retain - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $6 - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.get $0 - local.get $4 - call $~lib/memory/memory.copy - local.get $7 - local.get $4 - i32.add - local.get $1 - local.get $5 - call $~lib/memory/memory.copy - local.get $7 - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/string/String.__concat (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 536 - local.get $0 - i32.const 0 - i32.ne - select - local.get $1 - call $~lib/string/String#concat - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $retain-release-sanity/A#constructor (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.eqz - if - i32.const 4 - i32.const 6 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $0 - end - local.get $0 - i32.const 0 - i32.store - local.get $0 - ) - (func $retain-release-sanity/B#constructor (; 46 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.eqz - if - i32.const 4 - i32.const 7 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $0 - end - local.get $0 - i32.const 0 - i32.store - local.get $0 - ) - (func $start:retain-release-sanity (; 47 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/array/Array#constructor - local.set $0 - local.get $0 - i32.const 123 - call $~lib/array/Array#push - drop - local.get $0 - i32.const 123 - call $~lib/array/Array#push - drop - local.get $0 - call $~lib/array/Array#pop - drop - local.get $0 - call $~lib/rt/pure/__release - i32.const 0 - i32.const 0 - call $~lib/array/Array<~lib/array/Array<~lib/string/String>>#constructor - local.set $0 - block $break|0 - i32.const 0 - local.set $1 - loop $loop|0 - local.get $1 - i32.const 10 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 0 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#constructor - local.set $2 - block $break|1 - i32.const 0 - local.set $3 - loop $loop|1 - local.get $3 - i32.const 10 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $2 - i32.const 472 - call $~lib/array/Array<~lib/string/String>#push - drop - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|1 - end - unreachable - end - local.get $1 - i32.const 1 - i32.add - local.set $1 - local.get $2 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - i32.const 488 - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - i32.const 512 - call $~lib/string/String.__concat - local.tee $2 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 560 - call $~lib/string/String.__concat - local.tee $3 - drop - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - i32.const 0 - call $retain-release-sanity/A#constructor - local.set $3 - i32.const 0 - call $retain-release-sanity/B#constructor - local.set $1 - local.get $3 - local.tee $2 - local.get $1 - local.tee $0 - local.get $2 - i32.load - local.tee $2 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/rt/pure/__release - end - local.get $0 - i32.store - local.get $3 - local.tee $0 - local.get $1 - local.tee $2 - local.get $0 - i32.load - local.tee $0 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__release - end - local.get $2 - i32.store - local.get $1 - local.tee $2 - local.get $3 - local.tee $0 - local.get $2 - i32.load - local.tee $2 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/rt/pure/__release - end - local.get $0 - i32.store - local.get $1 - local.tee $0 - local.get $3 - local.tee $2 - local.get $0 - i32.load - local.tee $0 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__release - end - local.get $2 - i32.store - local.get $3 - local.tee $2 - local.get $1 - local.tee $0 - local.get $2 - i32.load - local.tee $2 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/rt/pure/__release - end - local.get $0 - i32.store - local.get $1 - local.tee $0 - local.get $3 - local.tee $2 - local.get $0 - i32.load - local.tee $0 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__release - end - local.get $2 - i32.store - local.get $3 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - call $~lib/rt/pure/__collect - ) - (func $start (; 48 ;) (type $FUNCSIG$v) - call $start:retain-release-sanity - ) - (func $~lib/array/Array#__visit_impl (; 49 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/rt/pure/__visit (; 50 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.lt_u - if - return - end - local.get $0 - i32.const 16 - i32.sub - local.set $2 - block $break|0 - block $case5|0 - block $case4|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $1 - local.set $3 - local.get $3 - i32.const 1 - i32.eq - br_if $case0|0 - local.get $3 - i32.const 2 - i32.eq - br_if $case1|0 - local.get $3 - i32.const 3 - i32.eq - br_if $case2|0 - local.get $3 - i32.const 4 - i32.eq - br_if $case3|0 - local.get $3 - i32.const 5 - i32.eq - br_if $case4|0 - br $case5|0 - end - local.get $2 - call $~lib/rt/pure/decrement - br $break|0 - end - local.get $2 - i32.load offset=4 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 75 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $2 - i32.load offset=4 - i32.const 1 - i32.sub - i32.store offset=4 - local.get $2 - call $~lib/rt/pure/markGray - br $break|0 - end - local.get $2 - call $~lib/rt/pure/scan - br $break|0 - end - local.get $2 - i32.load offset=4 - local.set $3 - local.get $3 - i32.const -268435456 - i32.and - local.get $3 - i32.const 1 - i32.add - i32.const -268435456 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 86 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $3 - i32.const 1 - i32.add - i32.store offset=4 - local.get $3 - i32.const 1879048192 - i32.and - i32.const 0 - i32.ne - if - local.get $2 - call $~lib/rt/pure/scanBlack - end - br $break|0 - end - local.get $2 - call $~lib/rt/pure/collectWhite - br $break|0 - end - i32.const 0 - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 97 - i32.const 24 - call $~lib/builtins/abort - unreachable - end - end - ) - (func $~lib/array/Array<~lib/string/String>#__visit_impl (; 51 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/array/Array<~lib/array/Array<~lib/string/String>>#__visit_impl (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/rt/__visit_members (; 53 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - block $block$4$break - block $switch$1$default - block $switch$1$case$7 - block $switch$1$case$6 - block $switch$1$case$5 - block $switch$1$case$4 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$6 $switch$1$case$7 $switch$1$case$4 $switch$1$case$4 $switch$1$default - end - return - end - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/string/String>#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/array/Array<~lib/string/String>>#__visit_impl - br $block$4$break - end - unreachable - end - local.get $0 - i32.load - local.tee $2 - if - local.get $2 - local.get $1 - call $~lib/rt/pure/__visit - end - return - ) - (func $null (; 54 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/runtime-full.optimized.wat b/tests/compiler/runtime-full.optimized.wat index 261c212f50..8cc29c5013 100644 --- a/tests/compiler/runtime-full.optimized.wat +++ b/tests/compiler/runtime-full.optimized.wat @@ -1877,7 +1877,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/runtime-full.untouched.wat b/tests/compiler/runtime-full.untouched.wat index 56944d4a18..fd19ccb958 100644 --- a/tests/compiler/runtime-full.untouched.wat +++ b/tests/compiler/runtime-full.untouched.wat @@ -3391,7 +3391,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index 70f5d67550..6338497344 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -25,13 +25,13 @@ if i32.const 24 i32.const 80 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -42,7 +42,7 @@ if i32.const 128 i32.const 80 - i32.const 100 + i32.const 96 i32.const 39 call $~lib/builtins/abort unreachable @@ -57,13 +57,13 @@ if i32.const 24 i32.const 80 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load i32.const 4 i32.add i32.load diff --git a/tests/compiler/std/array-access.untouched.wat b/tests/compiler/std/array-access.untouched.wat index 224fcd7c50..784b79895c 100644 --- a/tests/compiler/std/array-access.untouched.wat +++ b/tests/compiler/std/array-access.untouched.wat @@ -26,7 +26,7 @@ ) (func $~lib/array/Array<~lib/array/Array>#__unchecked_get (; 2 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -46,7 +46,7 @@ if i32.const 24 i32.const 80 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -62,7 +62,7 @@ call $~lib/rt/stub/__release i32.const 128 i32.const 80 - i32.const 100 + i32.const 96 i32.const 39 call $~lib/builtins/abort unreachable @@ -71,7 +71,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -87,7 +87,7 @@ if i32.const 24 i32.const 80 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -119,7 +119,7 @@ ) (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -136,7 +136,7 @@ if i32.const 24 i32.const 80 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -152,7 +152,7 @@ call $~lib/rt/stub/__release i32.const 128 i32.const 80 - i32.const 100 + i32.const 96 i32.const 39 call $~lib/builtins/abort unreachable @@ -347,7 +347,7 @@ ) (func $~lib/array/Array<~lib/array/Array<~lib/string/String>>#__unchecked_get (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -364,7 +364,7 @@ if i32.const 24 i32.const 80 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -380,7 +380,7 @@ call $~lib/rt/stub/__release i32.const 128 i32.const 80 - i32.const 100 + i32.const 96 i32.const 39 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/array-literal.untouched.wat b/tests/compiler/std/array-literal.untouched.wat index 40b963b838..e69de29bb2 100644 --- a/tests/compiler/std/array-literal.untouched.wat +++ b/tests/compiler/std/array-literal.untouched.wat @@ -1,4101 +0,0 @@ -(module - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$v (func)) - (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) - (type $FUNCSIG$vii (func (param i32 i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32))) - (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32))) - (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32))) - (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32))) - (memory $0 1) - (data (i32.const 8) "\03\00\00\00\01\00\00\00\00\00\00\00\03\00\00\00\00\01\02") - (data (i32.const 32) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\18\00\00\00\18\00\00\00\03\00\00\00\03\00\00\00") - (data (i32.const 64) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00s\00t\00d\00/\00a\00r\00r\00a\00y\00-\00l\00i\00t\00e\00r\00a\00l\00.\00t\00s\00") - (data (i32.const 120) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") - (data (i32.const 176) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") - (data (i32.const 224) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00") - (data (i32.const 256) "\10\00\00\00\01\00\00\00\04\00\00\00\10\00\00\00\f0\00\00\00\f0\00\00\00\0c\00\00\00\03\00\00\00") - (data (i32.const 288) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 304) "\10\00\00\00\01\00\00\00\04\00\00\00\10\00\00\000\01\00\000\01\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 336) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") - (data (i32.const 384) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") - (data (i32.const 440) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") - (data (i32.const 488) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") - (data (i32.const 528) "\t\00\00\00\10\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\10\00\00\00\00\00\00\003\04\00\00\02\00\00\00\93\04\00\00\02\00\00\00\10\00\00\00\00\00\00\00\93 \00\00\02\00\00\00\10\00\00\00\00\00\00\00\93 \00\00\02\00\00\00") - (table $0 1 funcref) - (elem (i32.const 0) $null) - (global $std/array-literal/staticArrayI8 i32 (i32.const 48)) - (global $std/array-literal/staticArrayI32 i32 (i32.const 272)) - (global $std/array-literal/emptyArrayI32 (mut i32) (i32.const 320)) - (global $std/array-literal/i (mut i32) (i32.const 0)) - (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) - (global $~lib/rt/tlsf/collectLock (mut i32) (i32.const 0)) - (global $~lib/gc/gc.auto (mut i32) (i32.const 1)) - (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) - (global $~lib/rt/pure/CUR (mut i32) (i32.const 0)) - (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) - (global $std/array-literal/dynamicArrayI8 (mut i32) (i32.const 0)) - (global $std/array-literal/dynamicArrayI32 (mut i32) (i32.const 0)) - (global $std/array-literal/dynamicArrayRef (mut i32) (i32.const 0)) - (global $std/array-literal/dynamicArrayRefWithCtor (mut i32) (i32.const 0)) - (global $~lib/rt/pure/END (mut i32) (i32.const 0)) - (global $~lib/rt/__rtti_base i32 (i32.const 528)) - (global $~lib/heap/__heap_base i32 (i32.const 604)) - (export "memory" (memory $0)) - (start $start) - (func $~lib/array/Array#get:length (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array#__unchecked_get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 0 - i32.shl - i32.add - i32.load8_s - ) - (func $~lib/array/Array#__get (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 136 - i32.const 192 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $~lib/array/Array#get:length (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array#__unchecked_get (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - ) - (func $~lib/array/Array#__get (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 136 - i32.const 192 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $~lib/rt/tlsf/removeBlock (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 277 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.set $3 - local.get $3 - i32.const 16 - i32.ge_u - if (result i32) - local.get $3 - i32.const 1073741808 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 279 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $4 - local.get $3 - i32.const 4 - i32.shr_u - local.set $5 - else - i32.const 31 - local.get $3 - i32.clz - i32.sub - local.set $4 - local.get $3 - local.get $4 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $5 - local.get $4 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $4 - end - local.get $4 - i32.const 23 - i32.lt_u - if (result i32) - local.get $5 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 292 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load offset=16 - local.set $6 - local.get $1 - i32.load offset=20 - local.set $7 - local.get $6 - if - local.get $6 - local.get $7 - i32.store offset=20 - end - local.get $7 - if - local.get $7 - local.get $6 - i32.store offset=16 - end - local.get $1 - local.get $0 - local.set $10 - local.get $4 - local.set $9 - local.get $5 - local.set $8 - local.get $10 - local.get $9 - i32.const 4 - i32.shl - local.get $8 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - i32.eq - if - local.get $0 - local.set $11 - local.get $4 - local.set $10 - local.get $5 - local.set $9 - local.get $7 - local.set $8 - local.get $11 - local.get $10 - i32.const 4 - i32.shl - local.get $9 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $8 - i32.store offset=96 - local.get $7 - i32.eqz - if - local.get $0 - local.set $9 - local.get $4 - local.set $8 - local.get $9 - local.get $8 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - local.set $9 - local.get $0 - local.set $8 - local.get $4 - local.set $11 - local.get $9 - i32.const 1 - local.get $5 - i32.shl - i32.const -1 - i32.xor - i32.and - local.tee $9 - local.set $10 - local.get $8 - local.get $11 - i32.const 2 - i32.shl - i32.add - local.get $10 - i32.store offset=4 - local.get $9 - i32.eqz - if - local.get $0 - local.get $0 - i32.load - i32.const 1 - local.get $4 - i32.shl - i32.const -1 - i32.xor - i32.and - i32.store - end - end - end - ) - (func $~lib/rt/tlsf/insertBlock (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $1 - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 205 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 207 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.set $3 - local.get $3 - i32.const 16 - i32.add - local.get $3 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $4 - local.get $4 - i32.load - local.set $5 - local.get $5 - i32.const 1 - i32.and - if - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $5 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $3 - local.get $3 - i32.const 1073741808 - i32.lt_u - if - local.get $0 - local.get $4 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $2 - i32.const 3 - i32.and - local.get $3 - i32.or - local.tee $2 - i32.store - local.get $1 - local.set $6 - local.get $6 - i32.const 16 - i32.add - local.get $6 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $4 - local.get $4 - i32.load - local.set $5 - end - end - local.get $2 - i32.const 2 - i32.and - if - local.get $1 - local.set $6 - local.get $6 - i32.const 4 - i32.sub - i32.load - local.set $6 - local.get $6 - i32.load - local.set $3 - local.get $3 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 228 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $7 - local.get $7 - i32.const 1073741808 - i32.lt_u - if - local.get $0 - local.get $6 - call $~lib/rt/tlsf/removeBlock - local.get $6 - local.get $3 - i32.const 3 - i32.and - local.get $7 - i32.or - local.tee $2 - i32.store - local.get $6 - local.set $1 - end - end - local.get $4 - local.get $5 - i32.const 2 - i32.or - i32.store - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.set $8 - local.get $8 - i32.const 16 - i32.ge_u - if (result i32) - local.get $8 - i32.const 1073741808 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 243 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 16 - i32.add - local.get $8 - i32.add - local.get $4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 244 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $4 - i32.const 4 - i32.sub - local.get $1 - i32.store - local.get $8 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $9 - local.get $8 - i32.const 4 - i32.shr_u - local.set $10 - else - i32.const 31 - local.get $8 - i32.clz - i32.sub - local.set $9 - local.get $8 - local.get $9 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $10 - local.get $9 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $9 - end - local.get $9 - i32.const 23 - i32.lt_u - if (result i32) - local.get $10 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 260 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $7 - local.get $9 - local.set $3 - local.get $10 - local.set $6 - local.get $7 - local.get $3 - i32.const 4 - i32.shl - local.get $6 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $11 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - local.get $11 - i32.store offset=20 - local.get $11 - if - local.get $11 - local.get $1 - i32.store offset=16 - end - local.get $0 - local.set $12 - local.get $9 - local.set $7 - local.get $10 - local.set $3 - local.get $1 - local.set $6 - local.get $12 - local.get $7 - i32.const 4 - i32.shl - local.get $3 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store offset=96 - local.get $0 - local.get $0 - i32.load - i32.const 1 - local.get $9 - i32.shl - i32.or - i32.store - local.get $0 - local.set $13 - local.get $9 - local.set $12 - local.get $0 - local.set $3 - local.get $9 - local.set $6 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - i32.const 1 - local.get $10 - i32.shl - i32.or - local.set $7 - local.get $13 - local.get $12 - i32.const 2 - i32.shl - i32.add - local.get $7 - i32.store offset=4 - ) - (func $~lib/rt/tlsf/addMemory (; 13 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - local.get $2 - i32.le_u - if (result i32) - local.get $1 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - if (result i32) - local.get $2 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 386 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $3 - local.get $3 - i32.load offset=1568 - local.set $4 - i32.const 0 - local.set $5 - local.get $4 - if - local.get $1 - local.get $4 - i32.const 16 - i32.add - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 396 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 16 - i32.sub - local.get $4 - i32.eq - if - local.get $1 - i32.const 16 - i32.sub - local.set $1 - local.get $4 - i32.load - local.set $5 - else - nop - end - else - local.get $1 - local.get $0 - i32.const 1572 - i32.add - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 408 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - end - local.get $2 - local.get $1 - i32.sub - local.set $6 - local.get $6 - i32.const 48 - i32.lt_u - if - i32.const 0 - return - end - local.get $6 - i32.const 16 - i32.const 1 - i32.shl - i32.sub - local.set $7 - local.get $1 - local.set $8 - local.get $8 - local.get $7 - i32.const 1 - i32.or - local.get $5 - i32.const 2 - i32.and - i32.or - i32.store - local.get $8 - i32.const 0 - i32.store offset=16 - local.get $8 - i32.const 0 - i32.store offset=20 - local.get $1 - local.get $6 - i32.add - i32.const 16 - i32.sub - local.set $4 - local.get $4 - i32.const 0 - i32.const 2 - i32.or - i32.store - local.get $0 - local.set $9 - local.get $4 - local.set $3 - local.get $9 - local.get $3 - i32.store offset=1568 - local.get $0 - local.get $8 - call $~lib/rt/tlsf/insertBlock - i32.const 1 - ) - (func $~lib/rt/tlsf/initializeRoot (; 14 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $~lib/heap/__heap_base - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.set $0 - memory.size - local.set $1 - local.get $0 - i32.const 1572 - i32.add - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $2 - local.get $2 - local.get $1 - i32.gt_s - if (result i32) - local.get $2 - local.get $1 - i32.sub - memory.grow - i32.const 0 - i32.lt_s - else - i32.const 0 - end - if - unreachable - end - local.get $0 - local.set $3 - local.get $3 - i32.const 0 - i32.store - local.get $3 - local.set $5 - i32.const 0 - local.set $4 - local.get $5 - local.get $4 - i32.store offset=1568 - block $break|0 - i32.const 0 - local.set $5 - loop $loop|0 - local.get $5 - i32.const 23 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $3 - local.set $7 - local.get $5 - local.set $6 - i32.const 0 - local.set $4 - local.get $7 - local.get $6 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store offset=4 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - i32.const 16 - i32.lt_u - i32.eqz - br_if $break|1 - local.get $3 - local.set $9 - local.get $5 - local.set $8 - local.get $7 - local.set $6 - i32.const 0 - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $6 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store offset=96 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - local.get $0 - i32.const 1572 - i32.add - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - memory.size - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - drop - local.get $3 - global.set $~lib/rt/tlsf/ROOT - ) - (func $~lib/rt/tlsf/prepareSize (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.const 1073741808 - i32.ge_u - if - i32.const 400 - i32.const 352 - i32.const 457 - i32.const 29 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.tee $1 - i32.const 16 - local.tee $2 - local.get $1 - local.get $2 - i32.gt_u - select - ) - (func $~lib/rt/tlsf/searchBlock (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $2 - local.get $1 - i32.const 4 - i32.shr_u - local.set $3 - else - local.get $1 - i32.const 536870904 - i32.lt_u - if (result i32) - local.get $1 - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - i32.add - i32.const 1 - i32.sub - else - local.get $1 - end - local.set $4 - i32.const 31 - local.get $4 - i32.clz - i32.sub - local.set $2 - local.get $4 - local.get $2 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $3 - local.get $2 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $2 - end - local.get $2 - i32.const 23 - i32.lt_u - if (result i32) - local.get $3 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 338 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $5 - local.get $2 - local.set $4 - local.get $5 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - i32.const 0 - i32.const -1 - i32.xor - local.get $3 - i32.shl - i32.and - local.set $6 - i32.const 0 - local.set $7 - local.get $6 - i32.eqz - if - local.get $0 - i32.load - i32.const 0 - i32.const -1 - i32.xor - local.get $2 - i32.const 1 - i32.add - i32.shl - i32.and - local.set $5 - local.get $5 - i32.eqz - if - i32.const 0 - local.set $7 - else - local.get $5 - i32.ctz - local.set $2 - local.get $0 - local.set $8 - local.get $2 - local.set $4 - local.get $8 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - local.set $6 - local.get $6 - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 351 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $9 - local.get $2 - local.set $8 - local.get $6 - i32.ctz - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $4 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $7 - end - else - local.get $0 - local.set $9 - local.get $2 - local.set $8 - local.get $6 - i32.ctz - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $4 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $7 - end - local.get $7 - ) - (func $~lib/rt/pure/markGray (; 17 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 268435456 - i32.ne - if - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 268435456 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 2 - call $~lib/rt/__visit_members - end - ) - (func $~lib/rt/tlsf/freeBlock (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $2 - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $1 - call $~lib/rt/tlsf/insertBlock - local.get $1 - call $~lib/rt/rtrace/onfree - ) - (func $~lib/rt/pure/scanBlack (; 19 ;) (type $FUNCSIG$vi) (param $0 i32) - local.get $0 - local.get $0 - i32.load offset=4 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 0 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 4 - call $~lib/rt/__visit_members - ) - (func $~lib/rt/pure/scan (; 20 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 268435456 - i32.eq - if - local.get $1 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - if - local.get $0 - call $~lib/rt/pure/scanBlack - else - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 536870912 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 3 - call $~lib/rt/__visit_members - end - end - ) - (func $~lib/rt/pure/collectWhite (; 21 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 536870912 - i32.eq - if (result i32) - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - else - i32.const 0 - end - if - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 0 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 5 - call $~lib/rt/__visit_members - global.get $~lib/rt/tlsf/ROOT - local.get $0 - call $~lib/rt/tlsf/freeBlock - end - ) - (func $~lib/rt/pure/__collect (; 22 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/rt/pure/ROOTS - local.set $0 - local.get $0 - local.set $1 - block $break|0 - local.get $1 - local.set $2 - global.get $~lib/rt/pure/CUR - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - i32.load offset=4 - local.set $5 - local.get $5 - i32.const 1879048192 - i32.and - i32.const 805306368 - i32.eq - if (result i32) - local.get $5 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - else - i32.const 0 - end - if - local.get $4 - call $~lib/rt/pure/markGray - local.get $1 - local.get $4 - i32.store - local.get $1 - i32.const 4 - i32.add - local.set $1 - else - local.get $5 - i32.const 1879048192 - i32.and - i32.const 0 - i32.eq - if (result i32) - local.get $5 - i32.const 268435455 - i32.and - i32.eqz - else - i32.const 0 - end - if - global.get $~lib/rt/tlsf/ROOT - local.get $4 - call $~lib/rt/tlsf/freeBlock - else - local.get $4 - local.get $5 - i32.const -2147483648 - i32.const -1 - i32.xor - i32.and - i32.store offset=4 - end - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - local.get $1 - global.set $~lib/rt/pure/CUR - block $break|1 - local.get $0 - local.set $5 - loop $loop|1 - local.get $5 - local.get $1 - i32.lt_u - i32.eqz - br_if $break|1 - local.get $5 - i32.load - call $~lib/rt/pure/scan - local.get $5 - i32.const 4 - i32.add - local.set $5 - br $loop|1 - end - unreachable - end - block $break|2 - local.get $0 - local.set $5 - loop $loop|2 - local.get $5 - local.get $1 - i32.lt_u - i32.eqz - br_if $break|2 - local.get $5 - i32.load - local.set $4 - local.get $4 - local.get $4 - i32.load offset=4 - i32.const -2147483648 - i32.const -1 - i32.xor - i32.and - i32.store offset=4 - local.get $4 - call $~lib/rt/pure/collectWhite - local.get $5 - i32.const 4 - i32.add - local.set $5 - br $loop|2 - end - unreachable - end - local.get $0 - global.set $~lib/rt/pure/CUR - ) - (func $~lib/rt/tlsf/growMemory (; 23 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - i32.const 536870904 - i32.lt_u - if - local.get $1 - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - i32.add - local.set $1 - end - memory.size - local.set $2 - local.get $1 - i32.const 16 - local.get $2 - i32.const 16 - i32.shl - i32.const 16 - i32.sub - local.get $0 - local.set $3 - local.get $3 - i32.load offset=1568 - i32.ne - i32.shl - i32.add - local.set $1 - local.get $1 - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $4 - local.get $2 - local.tee $3 - local.get $4 - local.tee $5 - local.get $3 - local.get $5 - i32.gt_s - select - local.set $6 - local.get $6 - memory.grow - i32.const 0 - i32.lt_s - if - local.get $4 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - memory.size - local.set $7 - local.get $0 - local.get $2 - i32.const 16 - i32.shl - local.get $7 - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - drop - ) - (func $~lib/rt/tlsf/prepareBlock (; 24 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $1 - i32.load - local.set $3 - local.get $2 - i32.const 15 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 365 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.get $2 - i32.sub - local.set $4 - local.get $4 - i32.const 32 - i32.ge_u - if - local.get $1 - local.get $2 - local.get $3 - i32.const 2 - i32.and - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.get $2 - i32.add - local.set $5 - local.get $5 - local.get $4 - i32.const 16 - i32.sub - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $5 - call $~lib/rt/tlsf/insertBlock - else - local.get $1 - local.get $3 - i32.const 1 - i32.const -1 - i32.xor - i32.and - i32.store - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - i32.load - i32.const 2 - i32.const -1 - i32.xor - i32.and - i32.store - end - ) - (func $~lib/rt/tlsf/allocateBlock (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/rt/tlsf/collectLock - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 486 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/rt/tlsf/prepareSize - local.set $2 - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - global.get $~lib/gc/gc.auto - if - i32.const 1 - global.set $~lib/rt/tlsf/collectLock - call $~lib/rt/pure/__collect - i32.const 0 - global.set $~lib/rt/tlsf/collectLock - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - local.get $0 - local.get $2 - call $~lib/rt/tlsf/growMemory - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 498 - i32.const 19 - call $~lib/builtins/abort - unreachable - end - end - else - local.get $0 - local.get $2 - call $~lib/rt/tlsf/growMemory - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 503 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - end - end - local.get $3 - i32.load - i32.const -4 - i32.and - local.get $2 - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 506 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=12 - local.get $0 - local.get $3 - call $~lib/rt/tlsf/removeBlock - local.get $0 - local.get $3 - local.get $2 - call $~lib/rt/tlsf/prepareBlock - local.get $3 - call $~lib/rt/rtrace/onalloc - local.get $3 - ) - (func $~lib/rt/tlsf/__alloc (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/rt/tlsf/ROOT - local.set $2 - local.get $2 - i32.eqz - if - call $~lib/rt/tlsf/initializeRoot - global.get $~lib/rt/tlsf/ROOT - local.set $2 - end - local.get $2 - local.get $0 - call $~lib/rt/tlsf/allocateBlock - local.set $3 - local.get $3 - local.get $1 - i32.store offset=8 - local.get $3 - i32.const 16 - i32.add - ) - (func $~lib/rt/pure/increment (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const -268435456 - i32.and - local.get $1 - i32.const 1 - i32.add - i32.const -268435456 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 456 - i32.const 104 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=4 - local.get $0 - call $~lib/rt/rtrace/onincrement - local.get $0 - i32.load - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 456 - i32.const 107 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - ) - (func $~lib/rt/pure/__retain (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.gt_u - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/pure/increment - end - local.get $0 - ) - (func $~lib/util/memory/memcpy (; 29 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - loop $continue|0 - local.get $2 - if (result i32) - local.get $1 - i32.const 3 - i32.and - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $0 - i32.const 3 - i32.and - i32.const 0 - i32.eq - if - block $break|1 - loop $continue|1 - local.get $2 - i32.const 16 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $1 - i32.const 8 - i32.add - i32.load - i32.store - local.get $0 - i32.const 12 - i32.add - local.get $1 - i32.const 12 - i32.add - i32.load - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|1 - end - unreachable - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.set $0 - local.get $1 - i32.const 4 - i32.add - local.set $1 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.get $1 - i32.load16_u - i32.store16 - local.get $0 - i32.const 2 - i32.add - local.set $0 - local.get $1 - i32.const 2 - i32.add - local.set $1 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - return - end - local.get $2 - i32.const 32 - i32.ge_u - if - block $break|2 - block $case2|2 - block $case1|2 - block $case0|2 - local.get $0 - i32.const 3 - i32.and - local.set $5 - local.get $5 - i32.const 1 - i32.eq - br_if $case0|2 - local.get $5 - i32.const 2 - i32.eq - br_if $case1|2 - local.get $5 - i32.const 3 - i32.eq - br_if $case2|2 - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 3 - i32.sub - local.set $2 - block $break|3 - loop $continue|3 - local.get $2 - i32.const 17 - i32.ge_u - i32.eqz - br_if $break|3 - local.get $1 - i32.const 1 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 5 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 9 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 13 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|3 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - block $break|4 - loop $continue|4 - local.get $2 - i32.const 18 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $1 - i32.const 2 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 6 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 10 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 14 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|4 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - block $break|5 - loop $continue|5 - local.get $2 - i32.const 19 - i32.ge_u - i32.eqz - br_if $break|5 - local.get $1 - i32.const 3 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 7 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 11 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 15 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|5 - end - unreachable - end - br $break|2 - end - end - local.get $2 - i32.const 16 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - ) - (func $~lib/memory/memory.copy (; 30 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - block $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - local.get $4 - i32.eq - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $4 - local.get $3 - i32.add - local.get $5 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $5 - local.get $3 - i32.add - local.get $4 - i32.le_u - end - if - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $4 - i32.lt_u - if - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|0 - loop $continue|0 - local.get $5 - i32.const 7 - i32.and - i32.eqz - br_if $break|0 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $3 - i32.const 1 - i32.sub - local.set $3 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - br $continue|0 - end - unreachable - end - block $break|1 - loop $continue|1 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $5 - local.get $4 - i64.load - i64.store - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - i32.const 8 - i32.add - local.set $5 - local.get $4 - i32.const 8 - i32.add - local.set $4 - br $continue|1 - end - unreachable - end - end - block $break|2 - loop $continue|2 - local.get $3 - i32.eqz - br_if $break|2 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - local.get $3 - i32.const 1 - i32.sub - local.set $3 - br $continue|2 - end - unreachable - end - else - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|3 - loop $continue|3 - local.get $5 - local.get $3 - i32.add - i32.const 7 - i32.and - i32.eqz - br_if $break|3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - local.get $3 - i32.add - local.get $4 - local.get $3 - i32.add - i64.load - i64.store - br $continue|4 - end - unreachable - end - end - block $break|5 - loop $continue|5 - local.get $3 - i32.eqz - br_if $break|5 - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|5 - end - unreachable - end - end - end - ) - (func $~lib/rt/__allocArray (; 31 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - i32.const 16 - local.get $2 - call $~lib/rt/tlsf/__alloc - local.set $4 - local.get $0 - local.get $1 - i32.shl - local.set $5 - local.get $5 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $4 - local.get $6 - call $~lib/rt/pure/__retain - i32.store - local.get $4 - local.get $6 - i32.store offset=4 - local.get $4 - local.get $5 - i32.store offset=8 - local.get $4 - local.get $0 - i32.store offset=12 - local.get $3 - if - local.get $6 - local.get $3 - local.get $5 - call $~lib/memory/memory.copy - end - local.get $4 - ) - (func $std/array-literal/Ref#constructor (; 32 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 5 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $0 - end - local.get $0 - ) - (func $~lib/array/Array#get:length (; 33 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $std/array-literal/RefWithCtor#constructor (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 7 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $0 - end - local.get $0 - ) - (func $~lib/array/Array#get:length (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/rt/__typeinfo (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - global.get $~lib/rt/__rtti_base - local.set $1 - local.get $0 - local.get $1 - i32.load - i32.gt_u - if - i32.const 136 - i32.const 504 - i32.const 22 - i32.const 27 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 4 - i32.add - local.get $0 - i32.const 8 - i32.mul - i32.add - i32.load - ) - (func $~lib/rt/tlsf/__free (; 37 ;) (type $FUNCSIG$vi) (param $0 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 593 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 352 - i32.const 594 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/tlsf/ROOT - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/tlsf/freeBlock - ) - (func $~lib/rt/pure/growRoots (; 38 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/rt/pure/ROOTS - local.set $0 - global.get $~lib/rt/pure/CUR - local.get $0 - i32.sub - local.set $1 - local.get $1 - i32.const 2 - i32.mul - local.tee $2 - i32.const 64 - i32.const 2 - i32.shl - local.tee $3 - local.get $2 - local.get $3 - i32.gt_u - select - local.set $4 - local.get $4 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $5 - local.get $5 - i32.const 16 - i32.sub - call $~lib/rt/rtrace/onfree - local.get $5 - local.get $0 - local.get $1 - call $~lib/memory/memory.copy - local.get $0 - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/rtrace/onalloc - local.get $0 - call $~lib/rt/tlsf/__free - end - local.get $5 - global.set $~lib/rt/pure/ROOTS - local.get $5 - local.get $1 - i32.add - global.set $~lib/rt/pure/CUR - local.get $5 - local.get $4 - i32.add - global.set $~lib/rt/pure/END - ) - (func $~lib/rt/pure/appendRoot (; 39 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - global.get $~lib/rt/pure/CUR - local.set $1 - local.get $1 - global.get $~lib/rt/pure/END - i32.ge_u - if - call $~lib/rt/pure/growRoots - global.get $~lib/rt/pure/CUR - local.set $1 - end - local.get $1 - local.get $0 - i32.store - local.get $1 - i32.const 4 - i32.add - global.set $~lib/rt/pure/CUR - ) - (func $~lib/rt/pure/decrement (; 40 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 268435455 - i32.and - local.set $2 - local.get $0 - call $~lib/rt/rtrace/ondecrement - local.get $0 - i32.load - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 456 - i32.const 115 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - i32.eq - if - local.get $0 - i32.const 16 - i32.add - i32.const 1 - call $~lib/rt/__visit_members - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - if - global.get $~lib/rt/tlsf/ROOT - local.get $0 - call $~lib/rt/tlsf/freeBlock - else - local.get $0 - i32.const -2147483648 - i32.const 0 - i32.or - i32.const 0 - i32.or - i32.store offset=4 - end - else - local.get $2 - i32.const 0 - i32.gt_u - i32.eqz - if - i32.const 0 - i32.const 456 - i32.const 124 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=8 - call $~lib/rt/__typeinfo - i32.const 16 - i32.and - i32.eqz - if - local.get $0 - i32.const -2147483648 - i32.const 805306368 - i32.or - local.get $2 - i32.const 1 - i32.sub - i32.or - i32.store offset=4 - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - if - local.get $0 - call $~lib/rt/pure/appendRoot - end - else - local.get $0 - local.get $1 - i32.const 268435455 - i32.const -1 - i32.xor - i32.and - local.get $2 - i32.const 1 - i32.sub - i32.or - i32.store offset=4 - end - end - ) - (func $~lib/rt/pure/__release (; 41 ;) (type $FUNCSIG$vi) (param $0 i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.gt_u - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/pure/decrement - end - ) - (func $start:std/array-literal (; 42 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - i32.const 48 - call $~lib/array/Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 2 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 48 - i32.const 0 - call $~lib/array/Array#__get - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 3 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 48 - i32.const 1 - call $~lib/array/Array#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 4 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 48 - i32.const 2 - call $~lib/array/Array#__get - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 5 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 272 - call $~lib/array/Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 8 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 272 - i32.const 0 - call $~lib/array/Array#__get - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 9 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 272 - i32.const 1 - call $~lib/array/Array#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 10 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 272 - i32.const 2 - call $~lib/array/Array#__get - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 11 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/array-literal/emptyArrayI32 - call $~lib/array/Array#get:length - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 14 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 0 - i32.const 3 - i32.const 0 - call $~lib/rt/__allocArray - local.set $1 - local.get $1 - i32.load offset=4 - local.set $0 - local.get $0 - global.get $std/array-literal/i - i32.store8 - local.get $0 - global.get $std/array-literal/i - i32.const 1 - i32.add - global.set $std/array-literal/i - global.get $std/array-literal/i - i32.store8 offset=1 - local.get $0 - global.get $std/array-literal/i - i32.const 1 - i32.add - global.set $std/array-literal/i - global.get $std/array-literal/i - i32.store8 offset=2 - local.get $1 - call $~lib/rt/pure/__retain - global.set $std/array-literal/dynamicArrayI8 - global.get $std/array-literal/dynamicArrayI8 - call $~lib/array/Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 19 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/array-literal/dynamicArrayI8 - i32.const 0 - call $~lib/array/Array#__get - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 20 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/array-literal/dynamicArrayI8 - i32.const 1 - call $~lib/array/Array#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 21 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/array-literal/dynamicArrayI8 - i32.const 2 - call $~lib/array/Array#__get - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 22 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - global.set $std/array-literal/i - i32.const 3 - i32.const 2 - i32.const 4 - i32.const 0 - call $~lib/rt/__allocArray - local.set $0 - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - global.get $std/array-literal/i - i32.store - local.get $1 - global.get $std/array-literal/i - i32.const 1 - i32.add - global.set $std/array-literal/i - global.get $std/array-literal/i - i32.store offset=4 - local.get $1 - global.get $std/array-literal/i - i32.const 1 - i32.add - global.set $std/array-literal/i - global.get $std/array-literal/i - i32.store offset=8 - local.get $0 - call $~lib/rt/pure/__retain - global.set $std/array-literal/dynamicArrayI32 - global.get $std/array-literal/dynamicArrayI32 - call $~lib/array/Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 27 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/array-literal/dynamicArrayI32 - i32.const 0 - call $~lib/array/Array#__get - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 28 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/array-literal/dynamicArrayI32 - i32.const 1 - call $~lib/array/Array#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 29 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/array-literal/dynamicArrayI32 - i32.const 2 - call $~lib/array/Array#__get - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 30 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 2 - i32.const 6 - i32.const 0 - call $~lib/rt/__allocArray - local.set $1 - local.get $1 - i32.load offset=4 - local.set $0 - local.get $0 - i32.const 0 - call $std/array-literal/Ref#constructor - local.tee $2 - call $~lib/rt/pure/__retain - i32.store - local.get $0 - i32.const 0 - call $std/array-literal/Ref#constructor - local.tee $3 - call $~lib/rt/pure/__retain - i32.store offset=4 - local.get $0 - i32.const 0 - call $std/array-literal/Ref#constructor - local.tee $4 - call $~lib/rt/pure/__retain - i32.store offset=8 - local.get $1 - call $~lib/rt/pure/__retain - global.set $std/array-literal/dynamicArrayRef - global.get $std/array-literal/dynamicArrayRef - call $~lib/array/Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 34 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 2 - i32.const 8 - i32.const 0 - call $~lib/rt/__allocArray - local.set $0 - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 0 - call $std/array-literal/RefWithCtor#constructor - local.tee $5 - call $~lib/rt/pure/__retain - i32.store - local.get $1 - i32.const 0 - call $std/array-literal/RefWithCtor#constructor - local.tee $6 - call $~lib/rt/pure/__retain - i32.store offset=4 - local.get $1 - i32.const 0 - call $std/array-literal/RefWithCtor#constructor - local.tee $7 - call $~lib/rt/pure/__retain - i32.store offset=8 - local.get $0 - call $~lib/rt/pure/__retain - global.set $std/array-literal/dynamicArrayRefWithCtor - global.get $std/array-literal/dynamicArrayRefWithCtor - call $~lib/array/Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 80 - i32.const 38 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/array-literal/emptyArrayI32 - call $~lib/rt/pure/__release - global.get $std/array-literal/dynamicArrayI8 - call $~lib/rt/pure/__release - global.get $std/array-literal/dynamicArrayI32 - call $~lib/rt/pure/__release - global.get $std/array-literal/dynamicArrayRef - call $~lib/rt/pure/__release - global.get $std/array-literal/dynamicArrayRefWithCtor - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - ) - (func $start (; 43 ;) (type $FUNCSIG$v) - call $start:std/array-literal - ) - (func $~lib/array/Array#__visit_impl (; 44 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 45 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/rt/pure/__visit (; 46 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.lt_u - if - return - end - local.get $0 - i32.const 16 - i32.sub - local.set $2 - block $break|0 - block $case5|0 - block $case4|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $1 - local.set $3 - local.get $3 - i32.const 1 - i32.eq - br_if $case0|0 - local.get $3 - i32.const 2 - i32.eq - br_if $case1|0 - local.get $3 - i32.const 3 - i32.eq - br_if $case2|0 - local.get $3 - i32.const 4 - i32.eq - br_if $case3|0 - local.get $3 - i32.const 5 - i32.eq - br_if $case4|0 - br $case5|0 - end - local.get $2 - call $~lib/rt/pure/decrement - br $break|0 - end - local.get $2 - i32.load offset=4 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - i32.eqz - if - i32.const 0 - i32.const 456 - i32.const 75 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $2 - i32.load offset=4 - i32.const 1 - i32.sub - i32.store offset=4 - local.get $2 - call $~lib/rt/pure/markGray - br $break|0 - end - local.get $2 - call $~lib/rt/pure/scan - br $break|0 - end - local.get $2 - i32.load offset=4 - local.set $3 - local.get $3 - i32.const -268435456 - i32.and - local.get $3 - i32.const 1 - i32.add - i32.const -268435456 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 456 - i32.const 86 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $3 - i32.const 1 - i32.add - i32.store offset=4 - local.get $3 - i32.const 1879048192 - i32.and - i32.const 0 - i32.ne - if - local.get $2 - call $~lib/rt/pure/scanBlack - end - br $break|0 - end - local.get $2 - call $~lib/rt/pure/collectWhite - br $break|0 - end - i32.const 0 - i32.eqz - if - i32.const 0 - i32.const 456 - i32.const 97 - i32.const 24 - call $~lib/builtins/abort - unreachable - end - end - ) - (func $~lib/array/Array#__visit_impl (; 47 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/array/Array#__visit_impl (; 48 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/rt/__visit_members (; 49 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - block $block$4$break - block $switch$1$default - block $switch$1$case$10 - block $switch$1$case$8 - block $switch$1$case$6 - block $switch$1$case$5 - block $switch$1$case$4 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$6 $switch$1$case$2 $switch$1$case$8 $switch$1$case$2 $switch$1$case$10 $switch$1$default - end - return - end - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - unreachable - end - local.get $0 - i32.load - local.tee $2 - if - local.get $2 - local.get $1 - call $~lib/rt/pure/__visit - end - return - ) - (func $null (; 50 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/std/array.untouched.wat b/tests/compiler/std/array.untouched.wat index 108f78f14d..e69de29bb2 100644 --- a/tests/compiler/std/array.untouched.wat +++ b/tests/compiler/std/array.untouched.wat @@ -1,23605 +0,0 @@ -(module - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$v (func)) - (type $FUNCSIG$vii (func (param i32 i32))) - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$fiii (func (param i32 i32 i32) (result f32))) - (type $FUNCSIG$fii (func (param i32 i32) (result f32))) - (type $FUNCSIG$d (func (result f64))) - (type $FUNCSIG$vj (func (param i64))) - (type $FUNCSIG$jj (func (param i64) (result i64))) - (type $FUNCSIG$iff (func (param f32 f32) (result i32))) - (type $FUNCSIG$if (func (param f32) (result i32))) - (type $FUNCSIG$idd (func (param f64 f64) (result i32))) - (type $FUNCSIG$dii (func (param i32 i32) (result f64))) - (type $FUNCSIG$id (func (param f64) (result i32))) - (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$iid (func (param i32 f64) (result i32))) - (type $FUNCSIG$jii (func (param i32 i32) (result i64))) - (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) - (type $FUNCSIG$iiid (func (param i32 i32 f64) (result i32))) - (type $FUNCSIG$ij (func (param i64) (result i32))) - (type $FUNCSIG$viji (func (param i32 i64 i32))) - (type $FUNCSIG$iiij (func (param i32 i32 i64) (result i32))) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32))) - (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32))) - (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32))) - (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32))) - (import "Math" "random" (func $~lib/bindings/Math/random (result f64))) - (memory $0 1) - (data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") - (data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") - (data (i32.const 112) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") - (data (i32.const 160) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") - (data (i32.const 216) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") - (data (i32.const 264) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") - (data (i32.const 320) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") - (data (i32.const 360) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00s\00t\00d\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") - (data (i32.const 400) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00a\00b\00c\00") - (data (i32.const 424) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\02\03\04\05") - (data (i32.const 448) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\01\04\05") - (data (i32.const 472) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") - (data (i32.const 520) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\00\00\00\00\00") - (data (i32.const 544) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\00\00\00") - (data (i32.const 568) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\00\02\02") - (data (i32.const 592) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\00\02\02") - (data (i32.const 616) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 656) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 696) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 736) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 776) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\02\00\00\00") - (data (i32.const 816) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\02\00\00\00") - (data (i32.const 856) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00A\00r\00r\00a\00y\00 \00i\00s\00 \00e\00m\00p\00t\00y\00") - (data (i32.const 904) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 920) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 936) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 976) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1016) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1056) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1096) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1136) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00") - (data (i32.const 1176) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1216) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1256) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1296) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1336) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1376) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\04\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1416) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1456) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1496) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1536) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1576) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1616) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1656) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1696) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1736) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1776) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1816) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1856) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00") - (data (i32.const 1896) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1936) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1976) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 1992) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2032) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2064) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") - (data (i32.const 2088) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2128) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\03\00\00\00\04\00\00\00") - (data (i32.const 2152) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\05\00\00\00") - (data (i32.const 2184) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2224) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") - (data (i32.const 2248) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2280) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2320) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2344) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00") - (data (i32.const 2376) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2416) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2440) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00") - (data (i32.const 2472) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2512) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\04\00\00\00") - (data (i32.const 2536) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00") - (data (i32.const 2568) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2608) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") - (data (i32.const 2632) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2664) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2704) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 2720) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2760) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2800) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 2816) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2856) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2896) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 2912) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2952) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 2992) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 3008) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 3048) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 3088) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 3104) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 3144) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s\00") - (data (i32.const 3184) "\ac\00\00\00\01\00\00\00\01\00\00\00\ac\00\00\00A\00B\00C\00D\00E\00F\00G\00H\00I\00J\00K\00L\00M\00N\00O\00P\00Q\00R\00S\00T\00U\00V\00W\00X\00Y\00Z\00a\00b\00c\00d\00e\00f\00g\00h\00i\00j\00k\00l\00m\00n\00o\00p\00q\00r\00s\00t\00u\00v\00w\00x\00y\00z\000\001\002\003\004\005\006\007\008\009\00_\00-\00,\00.\00+\00/\00\\\00[\00]\00{\00}\00(\00)\00<\00>\00*\00&\00$\00%\00^\00@\00#\00!\00?\00") - (data (i32.const 3376) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\00\00\80?\00\00\c0\7f\00\00\80\ff\00\00\80?\00\00\00\00\00\00\80\bf\00\00\00\c0\00\00\80\7f") - (data (i32.const 3424) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\00\00\80\ff\00\00\00\c0\00\00\80\bf\00\00\00\00\00\00\80?\00\00\80?\00\00\80\7f\00\00\c0\7f") - (data (i32.const 3472) "@\00\00\00\01\00\00\00\00\00\00\00@\00\00\00\00\00\00\00\00\00\f0?\00\00\00\00\00\00\f8\7f\00\00\00\00\00\00\f0\ff\05\00\00\00\00\00\f0?\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0\bf\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f0\7f") - (data (i32.const 3552) "@\00\00\00\01\00\00\00\00\00\00\00@\00\00\00\00\00\00\00\00\00\f0\ff\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f0\bf\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0?\05\00\00\00\00\00\f0?\00\00\00\00\00\00\f0\7f\00\00\00\00\00\00\f8\7f") - (data (i32.const 3632) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\02\00\00\00") - (data (i32.const 3672) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\01\00\00\00\02\00\00\00") - (data (i32.const 3712) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\ff\ff\ff\ff\fe\ff\ff\ff\00\00\00\00\02\00\00\00") - (data (i32.const 3752) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff") - (data (i32.const 3792) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 3808) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") - (data (i32.const 3832) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\02\00\00\00\01\00\00\00") - (data (i32.const 3856) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\03\00\00\00\02\00\00\00\01\00\00\00\00\00\00\00") - (data (i32.const 3888) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00") - (data (i32.const 3920) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00P\00R\00N\00G\00 \00m\00u\00s\00t\00 \00b\00e\00 \00s\00e\00e\00d\00e\00d\00.\00") - (data (i32.const 3976) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") - (data (i32.const 4000) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") - (data (i32.const 4024) "^\00\00\00\01\00\00\00\01\00\00\00^\00\00\00E\00l\00e\00m\00e\00n\00t\00 \00t\00y\00p\00e\00 \00m\00u\00s\00t\00 \00b\00e\00 \00n\00u\00l\00l\00a\00b\00l\00e\00 \00i\00f\00 \00a\00r\00r\00a\00y\00 \00i\00s\00 \00h\00o\00l\00e\00y\00") - (data (i32.const 4136) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00a\00") - (data (i32.const 4160) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00b\00") - (data (i32.const 4184) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00a\00b\00") - (data (i32.const 4208) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00b\00a\00") - (data (i32.const 4232) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00") - (data (i32.const 4248) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\008\10\00\00P\10\00\008\10\00\00h\10\00\00\80\10\00\00\98\10\00\00\00\00\00\00") - (data (i32.const 4296) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00\98\10\00\008\10\00\008\10\00\00h\10\00\00P\10\00\00\80\10\00\00\00\00\00\00") - (data (i32.const 4344) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00n\00u\00l\00l\00") - (data (i32.const 4368) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\01\00") - (data (i32.const 4392) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00t\00r\00u\00e\00") - (data (i32.const 4416) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00f\00a\00l\00s\00e\00") - (data (i32.const 4448) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00,\00") - (data (i32.const 4472) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00t\00r\00u\00e\00,\00f\00a\00l\00s\00e\00") - (data (i32.const 4512) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\fe\ff\ff\ff\fd\ff\ff\ff") - (data (i32.const 4544) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") - (data (i32.const 4568) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") - (data (i32.const 4984) "\10\00\00\00\01\00\00\00\07\00\00\00\10\00\00\00\e8\11\00\00\e8\11\00\00\90\01\00\00d\00\00\00") - (data (i32.const 5016) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\00-\002\00-\003\00") - (data (i32.const 5048) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00") - (data (i32.const 5080) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00-\00") - (data (i32.const 5104) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\00\00\00\80\00\00\00\80") - (data (i32.const 5128) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00_\00_\00") - (data (i32.const 5152) "0\00\00\00\01\00\00\00\01\00\00\000\00\00\00-\002\001\004\007\004\008\003\006\004\008\00_\00_\00-\002\001\004\007\004\008\003\006\004\008\00") - (data (i32.const 5216) "0\00\00\00\01\00\00\00\00\00\00\000\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0?\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f8\7f\00\00\00\00\00\00\f0\ff\00\00\00\00\00\00\f0\7f") - (data (i32.const 5280) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00,\00 \00") - (data (i32.const 5304) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") - (data (i32.const 5328) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") - (data (i32.const 5352) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 5392) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 5424) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|1 $start:std/array~anonymous|43 $start:std/array~anonymous|44 $start:std/array~anonymous|45 $start:std/array~anonymous|46 $start:std/array~anonymous|47 $start:std/array~anonymous|48 $~lib/util/sort/COMPARATOR<~lib/string/String | null>~anonymous|0 $~lib/util/sort/COMPARATOR<~lib/string/String>~anonymous|0) - (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) - (global $~lib/rt/tlsf/collectLock (mut i32) (i32.const 0)) - (global $~lib/gc/gc.auto (mut i32) (i32.const 1)) - (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) - (global $~lib/rt/pure/CUR (mut i32) (i32.const 0)) - (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) - (global $~lib/rt/pure/END (mut i32) (i32.const 0)) - (global $std/array/arr (mut i32) (i32.const 0)) - (global $~lib/builtins/i32.MAX_VALUE i32 (i32.const 2147483647)) - (global $std/array/i (mut i32) (i32.const 0)) - (global $~lib/argc (mut i32) (i32.const 0)) - (global $~lib/math/random_seeded (mut i32) (i32.const 0)) - (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) - (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) - (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) - (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) - (global $std/array/charset i32 (i32.const 3200)) - (global $~lib/builtins/i32.MIN_VALUE i32 (i32.const -2147483648)) - (global $~lib/util/number/_frc_plus (mut i64) (i64.const 0)) - (global $~lib/util/number/_frc_minus (mut i64) (i64.const 0)) - (global $~lib/util/number/_exp (mut i32) (i32.const 0)) - (global $~lib/util/number/_K (mut i32) (i32.const 0)) - (global $~lib/util/number/_frc_pow (mut i64) (i64.const 0)) - (global $~lib/util/number/_exp_pow (mut i32) (i32.const 0)) - (global $~lib/builtins/u32.MAX_VALUE i32 (i32.const -1)) - (global $~lib/builtins/i64.MAX_VALUE i64 (i64.const 9223372036854775807)) - (global $~lib/started (mut i32) (i32.const 0)) - (global $~lib/rt/__rtti_base i32 (i32.const 7648)) - (global $~lib/heap/__heap_base i32 (i32.const 7860)) - (export "__start" (func $start)) - (export "memory" (memory $0)) - (func $~lib/rt/tlsf/removeBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 277 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.set $3 - local.get $3 - i32.const 16 - i32.ge_u - if (result i32) - local.get $3 - i32.const 1073741808 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 279 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $4 - local.get $3 - i32.const 4 - i32.shr_u - local.set $5 - else - i32.const 31 - local.get $3 - i32.clz - i32.sub - local.set $4 - local.get $3 - local.get $4 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $5 - local.get $4 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $4 - end - local.get $4 - i32.const 23 - i32.lt_u - if (result i32) - local.get $5 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 292 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load offset=16 - local.set $6 - local.get $1 - i32.load offset=20 - local.set $7 - local.get $6 - if - local.get $6 - local.get $7 - i32.store offset=20 - end - local.get $7 - if - local.get $7 - local.get $6 - i32.store offset=16 - end - local.get $1 - local.get $0 - local.set $10 - local.get $4 - local.set $9 - local.get $5 - local.set $8 - local.get $10 - local.get $9 - i32.const 4 - i32.shl - local.get $8 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - i32.eq - if - local.get $0 - local.set $11 - local.get $4 - local.set $10 - local.get $5 - local.set $9 - local.get $7 - local.set $8 - local.get $11 - local.get $10 - i32.const 4 - i32.shl - local.get $9 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $8 - i32.store offset=96 - local.get $7 - i32.eqz - if - local.get $0 - local.set $9 - local.get $4 - local.set $8 - local.get $9 - local.get $8 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - local.set $9 - local.get $0 - local.set $8 - local.get $4 - local.set $11 - local.get $9 - i32.const 1 - local.get $5 - i32.shl - i32.const -1 - i32.xor - i32.and - local.tee $9 - local.set $10 - local.get $8 - local.get $11 - i32.const 2 - i32.shl - i32.add - local.get $10 - i32.store offset=4 - local.get $9 - i32.eqz - if - local.get $0 - local.get $0 - i32.load - i32.const 1 - local.get $4 - i32.shl - i32.const -1 - i32.xor - i32.and - i32.store - end - end - end - ) - (func $~lib/rt/tlsf/insertBlock (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $1 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 205 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 207 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.set $3 - local.get $3 - i32.const 16 - i32.add - local.get $3 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $4 - local.get $4 - i32.load - local.set $5 - local.get $5 - i32.const 1 - i32.and - if - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $5 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $3 - local.get $3 - i32.const 1073741808 - i32.lt_u - if - local.get $0 - local.get $4 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $2 - i32.const 3 - i32.and - local.get $3 - i32.or - local.tee $2 - i32.store - local.get $1 - local.set $6 - local.get $6 - i32.const 16 - i32.add - local.get $6 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $4 - local.get $4 - i32.load - local.set $5 - end - end - local.get $2 - i32.const 2 - i32.and - if - local.get $1 - local.set $6 - local.get $6 - i32.const 4 - i32.sub - i32.load - local.set $6 - local.get $6 - i32.load - local.set $3 - local.get $3 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 228 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $7 - local.get $7 - i32.const 1073741808 - i32.lt_u - if - local.get $0 - local.get $6 - call $~lib/rt/tlsf/removeBlock - local.get $6 - local.get $3 - i32.const 3 - i32.and - local.get $7 - i32.or - local.tee $2 - i32.store - local.get $6 - local.set $1 - end - end - local.get $4 - local.get $5 - i32.const 2 - i32.or - i32.store - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.set $8 - local.get $8 - i32.const 16 - i32.ge_u - if (result i32) - local.get $8 - i32.const 1073741808 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 243 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 16 - i32.add - local.get $8 - i32.add - local.get $4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 244 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $4 - i32.const 4 - i32.sub - local.get $1 - i32.store - local.get $8 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $9 - local.get $8 - i32.const 4 - i32.shr_u - local.set $10 - else - i32.const 31 - local.get $8 - i32.clz - i32.sub - local.set $9 - local.get $8 - local.get $9 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $10 - local.get $9 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $9 - end - local.get $9 - i32.const 23 - i32.lt_u - if (result i32) - local.get $10 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 260 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $7 - local.get $9 - local.set $3 - local.get $10 - local.set $6 - local.get $7 - local.get $3 - i32.const 4 - i32.shl - local.get $6 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $11 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - local.get $11 - i32.store offset=20 - local.get $11 - if - local.get $11 - local.get $1 - i32.store offset=16 - end - local.get $0 - local.set $12 - local.get $9 - local.set $7 - local.get $10 - local.set $3 - local.get $1 - local.set $6 - local.get $12 - local.get $7 - i32.const 4 - i32.shl - local.get $3 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store offset=96 - local.get $0 - local.get $0 - i32.load - i32.const 1 - local.get $9 - i32.shl - i32.or - i32.store - local.get $0 - local.set $13 - local.get $9 - local.set $12 - local.get $0 - local.set $3 - local.get $9 - local.set $6 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - i32.const 1 - local.get $10 - i32.shl - i32.or - local.set $7 - local.get $13 - local.get $12 - i32.const 2 - i32.shl - i32.add - local.get $7 - i32.store offset=4 - ) - (func $~lib/rt/tlsf/addMemory (; 8 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - local.get $2 - i32.le_u - if (result i32) - local.get $1 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - if (result i32) - local.get $2 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 386 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $3 - local.get $3 - i32.load offset=1568 - local.set $4 - i32.const 0 - local.set $5 - local.get $4 - if - local.get $1 - local.get $4 - i32.const 16 - i32.add - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 396 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 16 - i32.sub - local.get $4 - i32.eq - if - local.get $1 - i32.const 16 - i32.sub - local.set $1 - local.get $4 - i32.load - local.set $5 - else - nop - end - else - local.get $1 - local.get $0 - i32.const 1572 - i32.add - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 408 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - end - local.get $2 - local.get $1 - i32.sub - local.set $6 - local.get $6 - i32.const 48 - i32.lt_u - if - i32.const 0 - return - end - local.get $6 - i32.const 16 - i32.const 1 - i32.shl - i32.sub - local.set $7 - local.get $1 - local.set $8 - local.get $8 - local.get $7 - i32.const 1 - i32.or - local.get $5 - i32.const 2 - i32.and - i32.or - i32.store - local.get $8 - i32.const 0 - i32.store offset=16 - local.get $8 - i32.const 0 - i32.store offset=20 - local.get $1 - local.get $6 - i32.add - i32.const 16 - i32.sub - local.set $4 - local.get $4 - i32.const 0 - i32.const 2 - i32.or - i32.store - local.get $0 - local.set $9 - local.get $4 - local.set $3 - local.get $9 - local.get $3 - i32.store offset=1568 - local.get $0 - local.get $8 - call $~lib/rt/tlsf/insertBlock - i32.const 1 - ) - (func $~lib/rt/tlsf/initializeRoot (; 9 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $~lib/heap/__heap_base - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.set $0 - memory.size - local.set $1 - local.get $0 - i32.const 1572 - i32.add - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $2 - local.get $2 - local.get $1 - i32.gt_s - if (result i32) - local.get $2 - local.get $1 - i32.sub - memory.grow - i32.const 0 - i32.lt_s - else - i32.const 0 - end - if - unreachable - end - local.get $0 - local.set $3 - local.get $3 - i32.const 0 - i32.store - local.get $3 - local.set $5 - i32.const 0 - local.set $4 - local.get $5 - local.get $4 - i32.store offset=1568 - block $break|0 - i32.const 0 - local.set $5 - loop $loop|0 - local.get $5 - i32.const 23 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $3 - local.set $7 - local.get $5 - local.set $6 - i32.const 0 - local.set $4 - local.get $7 - local.get $6 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store offset=4 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - i32.const 16 - i32.lt_u - i32.eqz - br_if $break|1 - local.get $3 - local.set $9 - local.get $5 - local.set $8 - local.get $7 - local.set $6 - i32.const 0 - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $6 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store offset=96 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - local.get $0 - i32.const 1572 - i32.add - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - memory.size - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - drop - local.get $3 - global.set $~lib/rt/tlsf/ROOT - ) - (func $~lib/rt/tlsf/prepareSize (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.const 1073741808 - i32.ge_u - if - i32.const 176 - i32.const 128 - i32.const 457 - i32.const 29 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.tee $1 - i32.const 16 - local.tee $2 - local.get $1 - local.get $2 - i32.gt_u - select - ) - (func $~lib/rt/tlsf/searchBlock (; 11 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $2 - local.get $1 - i32.const 4 - i32.shr_u - local.set $3 - else - local.get $1 - i32.const 536870904 - i32.lt_u - if (result i32) - local.get $1 - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - i32.add - i32.const 1 - i32.sub - else - local.get $1 - end - local.set $4 - i32.const 31 - local.get $4 - i32.clz - i32.sub - local.set $2 - local.get $4 - local.get $2 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $3 - local.get $2 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $2 - end - local.get $2 - i32.const 23 - i32.lt_u - if (result i32) - local.get $3 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 338 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $5 - local.get $2 - local.set $4 - local.get $5 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - i32.const 0 - i32.const -1 - i32.xor - local.get $3 - i32.shl - i32.and - local.set $6 - i32.const 0 - local.set $7 - local.get $6 - i32.eqz - if - local.get $0 - i32.load - i32.const 0 - i32.const -1 - i32.xor - local.get $2 - i32.const 1 - i32.add - i32.shl - i32.and - local.set $5 - local.get $5 - i32.eqz - if - i32.const 0 - local.set $7 - else - local.get $5 - i32.ctz - local.set $2 - local.get $0 - local.set $8 - local.get $2 - local.set $4 - local.get $8 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - local.set $6 - local.get $6 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 351 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $9 - local.get $2 - local.set $8 - local.get $6 - i32.ctz - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $4 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $7 - end - else - local.get $0 - local.set $9 - local.get $2 - local.set $8 - local.get $6 - i32.ctz - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $4 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $7 - end - local.get $7 - ) - (func $~lib/rt/pure/markGray (; 12 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 268435456 - i32.ne - if - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 268435456 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 2 - call $~lib/rt/__visit_members - end - ) - (func $~lib/rt/tlsf/freeBlock (; 13 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $2 - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $1 - call $~lib/rt/tlsf/insertBlock - local.get $1 - call $~lib/rt/rtrace/onfree - ) - (func $~lib/rt/pure/scanBlack (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) - local.get $0 - local.get $0 - i32.load offset=4 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 0 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 4 - call $~lib/rt/__visit_members - ) - (func $~lib/rt/pure/scan (; 15 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 268435456 - i32.eq - if - local.get $1 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - if - local.get $0 - call $~lib/rt/pure/scanBlack - else - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 536870912 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 3 - call $~lib/rt/__visit_members - end - end - ) - (func $~lib/rt/pure/collectWhite (; 16 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 536870912 - i32.eq - if (result i32) - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - else - i32.const 0 - end - if - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 0 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 5 - call $~lib/rt/__visit_members - global.get $~lib/rt/tlsf/ROOT - local.get $0 - call $~lib/rt/tlsf/freeBlock - end - ) - (func $~lib/rt/pure/__collect (; 17 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/rt/pure/ROOTS - local.set $0 - local.get $0 - local.set $1 - block $break|0 - local.get $1 - local.set $2 - global.get $~lib/rt/pure/CUR - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - i32.load offset=4 - local.set $5 - local.get $5 - i32.const 1879048192 - i32.and - i32.const 805306368 - i32.eq - if (result i32) - local.get $5 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - else - i32.const 0 - end - if - local.get $4 - call $~lib/rt/pure/markGray - local.get $1 - local.get $4 - i32.store - local.get $1 - i32.const 4 - i32.add - local.set $1 - else - local.get $5 - i32.const 1879048192 - i32.and - i32.const 0 - i32.eq - if (result i32) - local.get $5 - i32.const 268435455 - i32.and - i32.eqz - else - i32.const 0 - end - if - global.get $~lib/rt/tlsf/ROOT - local.get $4 - call $~lib/rt/tlsf/freeBlock - else - local.get $4 - local.get $5 - i32.const -2147483648 - i32.const -1 - i32.xor - i32.and - i32.store offset=4 - end - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - local.get $1 - global.set $~lib/rt/pure/CUR - block $break|1 - local.get $0 - local.set $5 - loop $loop|1 - local.get $5 - local.get $1 - i32.lt_u - i32.eqz - br_if $break|1 - local.get $5 - i32.load - call $~lib/rt/pure/scan - local.get $5 - i32.const 4 - i32.add - local.set $5 - br $loop|1 - end - unreachable - end - block $break|2 - local.get $0 - local.set $5 - loop $loop|2 - local.get $5 - local.get $1 - i32.lt_u - i32.eqz - br_if $break|2 - local.get $5 - i32.load - local.set $4 - local.get $4 - local.get $4 - i32.load offset=4 - i32.const -2147483648 - i32.const -1 - i32.xor - i32.and - i32.store offset=4 - local.get $4 - call $~lib/rt/pure/collectWhite - local.get $5 - i32.const 4 - i32.add - local.set $5 - br $loop|2 - end - unreachable - end - local.get $0 - global.set $~lib/rt/pure/CUR - ) - (func $~lib/rt/tlsf/growMemory (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - i32.const 536870904 - i32.lt_u - if - local.get $1 - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - i32.add - local.set $1 - end - memory.size - local.set $2 - local.get $1 - i32.const 16 - local.get $2 - i32.const 16 - i32.shl - i32.const 16 - i32.sub - local.get $0 - local.set $3 - local.get $3 - i32.load offset=1568 - i32.ne - i32.shl - i32.add - local.set $1 - local.get $1 - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $4 - local.get $2 - local.tee $3 - local.get $4 - local.tee $5 - local.get $3 - local.get $5 - i32.gt_s - select - local.set $6 - local.get $6 - memory.grow - i32.const 0 - i32.lt_s - if - local.get $4 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - memory.size - local.set $7 - local.get $0 - local.get $2 - i32.const 16 - i32.shl - local.get $7 - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - drop - ) - (func $~lib/rt/tlsf/prepareBlock (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $1 - i32.load - local.set $3 - local.get $2 - i32.const 15 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 365 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.get $2 - i32.sub - local.set $4 - local.get $4 - i32.const 32 - i32.ge_u - if - local.get $1 - local.get $2 - local.get $3 - i32.const 2 - i32.and - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.get $2 - i32.add - local.set $5 - local.get $5 - local.get $4 - i32.const 16 - i32.sub - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $5 - call $~lib/rt/tlsf/insertBlock - else - local.get $1 - local.get $3 - i32.const 1 - i32.const -1 - i32.xor - i32.and - i32.store - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - i32.load - i32.const 2 - i32.const -1 - i32.xor - i32.and - i32.store - end - ) - (func $~lib/rt/tlsf/allocateBlock (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/rt/tlsf/collectLock - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 486 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/rt/tlsf/prepareSize - local.set $2 - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - global.get $~lib/gc/gc.auto - if - i32.const 1 - global.set $~lib/rt/tlsf/collectLock - call $~lib/rt/pure/__collect - i32.const 0 - global.set $~lib/rt/tlsf/collectLock - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - local.get $0 - local.get $2 - call $~lib/rt/tlsf/growMemory - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 498 - i32.const 19 - call $~lib/builtins/abort - unreachable - end - end - else - local.get $0 - local.get $2 - call $~lib/rt/tlsf/growMemory - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 503 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - end - end - local.get $3 - i32.load - i32.const -4 - i32.and - local.get $2 - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 506 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=12 - local.get $0 - local.get $3 - call $~lib/rt/tlsf/removeBlock - local.get $0 - local.get $3 - local.get $2 - call $~lib/rt/tlsf/prepareBlock - local.get $3 - call $~lib/rt/rtrace/onalloc - local.get $3 - ) - (func $~lib/rt/tlsf/__alloc (; 21 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/rt/tlsf/ROOT - local.set $2 - local.get $2 - i32.eqz - if - call $~lib/rt/tlsf/initializeRoot - global.get $~lib/rt/tlsf/ROOT - local.set $2 - end - local.get $2 - local.get $0 - call $~lib/rt/tlsf/allocateBlock - local.set $3 - local.get $3 - local.get $1 - i32.store offset=8 - local.get $3 - i32.const 16 - i32.add - ) - (func $~lib/memory/memory.fill (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - block $~lib/util/memory/memset|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 1 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 2 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.get $4 - i32.store8 - local.get $5 - i32.const 2 - i32.add - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 2 - i32.sub - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 3 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 6 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 3 - i32.add - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 8 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - i32.const 0 - local.get $5 - i32.sub - i32.const 3 - i32.and - local.set $6 - local.get $5 - local.get $6 - i32.add - local.set $5 - local.get $3 - local.get $6 - i32.sub - local.set $3 - local.get $3 - i32.const -4 - i32.and - local.set $3 - i32.const -1 - i32.const 255 - i32.div_u - local.get $4 - i32.const 255 - i32.and - i32.mul - local.set $7 - local.get $5 - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.get $7 - i32.store - local.get $3 - i32.const 8 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 4 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 8 - i32.add - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 12 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 8 - i32.sub - local.get $7 - i32.store - local.get $3 - i32.const 24 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 12 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 16 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 20 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 24 - i32.add - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 28 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 24 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 20 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 16 - i32.sub - local.get $7 - i32.store - i32.const 24 - local.get $5 - i32.const 4 - i32.and - i32.add - local.set $6 - local.get $5 - local.get $6 - i32.add - local.set $5 - local.get $3 - local.get $6 - i32.sub - local.set $3 - local.get $7 - i64.extend_i32_u - local.get $7 - i64.extend_i32_u - i64.const 32 - i64.shl - i64.or - local.set $8 - block $break|0 - loop $continue|0 - local.get $3 - i32.const 32 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $5 - local.get $8 - i64.store - local.get $5 - i32.const 8 - i32.add - local.get $8 - i64.store - local.get $5 - i32.const 16 - i32.add - local.get $8 - i64.store - local.get $5 - i32.const 24 - i32.add - local.get $8 - i64.store - local.get $3 - i32.const 32 - i32.sub - local.set $3 - local.get $5 - i32.const 32 - i32.add - local.set $5 - br $continue|0 - end - unreachable - end - end - ) - (func $~lib/rt/pure/increment (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const -268435456 - i32.and - local.get $1 - i32.const 1 - i32.add - i32.const -268435456 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 104 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=4 - local.get $0 - call $~lib/rt/rtrace/onincrement - local.get $0 - i32.load - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 107 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - ) - (func $~lib/rt/pure/__retain (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.gt_u - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/pure/increment - end - local.get $0 - ) - (func $~lib/rt/__typeinfo (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - global.get $~lib/rt/__rtti_base - local.set $1 - local.get $0 - local.get $1 - i32.load - i32.gt_u - if - i32.const 280 - i32.const 336 - i32.const 22 - i32.const 27 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 4 - i32.add - local.get $0 - i32.const 8 - i32.mul - i32.add - i32.load - ) - (func $~lib/util/memory/memcpy (; 26 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - loop $continue|0 - local.get $2 - if (result i32) - local.get $1 - i32.const 3 - i32.and - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $0 - i32.const 3 - i32.and - i32.const 0 - i32.eq - if - block $break|1 - loop $continue|1 - local.get $2 - i32.const 16 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $1 - i32.const 8 - i32.add - i32.load - i32.store - local.get $0 - i32.const 12 - i32.add - local.get $1 - i32.const 12 - i32.add - i32.load - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|1 - end - unreachable - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.set $0 - local.get $1 - i32.const 4 - i32.add - local.set $1 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.get $1 - i32.load16_u - i32.store16 - local.get $0 - i32.const 2 - i32.add - local.set $0 - local.get $1 - i32.const 2 - i32.add - local.set $1 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - return - end - local.get $2 - i32.const 32 - i32.ge_u - if - block $break|2 - block $case2|2 - block $case1|2 - block $case0|2 - local.get $0 - i32.const 3 - i32.and - local.set $5 - local.get $5 - i32.const 1 - i32.eq - br_if $case0|2 - local.get $5 - i32.const 2 - i32.eq - br_if $case1|2 - local.get $5 - i32.const 3 - i32.eq - br_if $case2|2 - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 3 - i32.sub - local.set $2 - block $break|3 - loop $continue|3 - local.get $2 - i32.const 17 - i32.ge_u - i32.eqz - br_if $break|3 - local.get $1 - i32.const 1 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 5 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 9 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 13 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|3 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - block $break|4 - loop $continue|4 - local.get $2 - i32.const 18 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $1 - i32.const 2 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 6 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 10 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 14 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|4 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - block $break|5 - loop $continue|5 - local.get $2 - i32.const 19 - i32.ge_u - i32.eqz - br_if $break|5 - local.get $1 - i32.const 3 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 7 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 11 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 15 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|5 - end - unreachable - end - br $break|2 - end - end - local.get $2 - i32.const 16 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - ) - (func $~lib/memory/memory.copy (; 27 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - block $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - local.get $4 - i32.eq - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $4 - local.get $3 - i32.add - local.get $5 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $5 - local.get $3 - i32.add - local.get $4 - i32.le_u - end - if - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $4 - i32.lt_u - if - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|0 - loop $continue|0 - local.get $5 - i32.const 7 - i32.and - i32.eqz - br_if $break|0 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $3 - i32.const 1 - i32.sub - local.set $3 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - br $continue|0 - end - unreachable - end - block $break|1 - loop $continue|1 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $5 - local.get $4 - i64.load - i64.store - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - i32.const 8 - i32.add - local.set $5 - local.get $4 - i32.const 8 - i32.add - local.set $4 - br $continue|1 - end - unreachable - end - end - block $break|2 - loop $continue|2 - local.get $3 - i32.eqz - br_if $break|2 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - local.get $3 - i32.const 1 - i32.sub - local.set $3 - br $continue|2 - end - unreachable - end - else - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|3 - loop $continue|3 - local.get $5 - local.get $3 - i32.add - i32.const 7 - i32.and - i32.eqz - br_if $break|3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - local.get $3 - i32.add - local.get $4 - local.get $3 - i32.add - i64.load - i64.store - br $continue|4 - end - unreachable - end - end - block $break|5 - loop $continue|5 - local.get $3 - i32.eqz - br_if $break|5 - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|5 - end - unreachable - end - end - end - ) - (func $~lib/rt/tlsf/__free (; 28 ;) (type $FUNCSIG$vi) (param $0 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 593 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 594 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/tlsf/ROOT - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/tlsf/freeBlock - ) - (func $~lib/rt/pure/growRoots (; 29 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/rt/pure/ROOTS - local.set $0 - global.get $~lib/rt/pure/CUR - local.get $0 - i32.sub - local.set $1 - local.get $1 - i32.const 2 - i32.mul - local.tee $2 - i32.const 64 - i32.const 2 - i32.shl - local.tee $3 - local.get $2 - local.get $3 - i32.gt_u - select - local.set $4 - local.get $4 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $5 - local.get $5 - i32.const 16 - i32.sub - call $~lib/rt/rtrace/onfree - local.get $5 - local.get $0 - local.get $1 - call $~lib/memory/memory.copy - local.get $0 - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/rtrace/onalloc - local.get $0 - call $~lib/rt/tlsf/__free - end - local.get $5 - global.set $~lib/rt/pure/ROOTS - local.get $5 - local.get $1 - i32.add - global.set $~lib/rt/pure/CUR - local.get $5 - local.get $4 - i32.add - global.set $~lib/rt/pure/END - ) - (func $~lib/rt/pure/appendRoot (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - global.get $~lib/rt/pure/CUR - local.set $1 - local.get $1 - global.get $~lib/rt/pure/END - i32.ge_u - if - call $~lib/rt/pure/growRoots - global.get $~lib/rt/pure/CUR - local.set $1 - end - local.get $1 - local.get $0 - i32.store - local.get $1 - i32.const 4 - i32.add - global.set $~lib/rt/pure/CUR - ) - (func $~lib/rt/pure/decrement (; 31 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 268435455 - i32.and - local.set $2 - local.get $0 - call $~lib/rt/rtrace/ondecrement - local.get $0 - i32.load - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 115 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - i32.eq - if - local.get $0 - i32.const 16 - i32.add - i32.const 1 - call $~lib/rt/__visit_members - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - if - global.get $~lib/rt/tlsf/ROOT - local.get $0 - call $~lib/rt/tlsf/freeBlock - else - local.get $0 - i32.const -2147483648 - i32.const 0 - i32.or - i32.const 0 - i32.or - i32.store offset=4 - end - else - local.get $2 - i32.const 0 - i32.gt_u - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 124 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=8 - call $~lib/rt/__typeinfo - i32.const 16 - i32.and - i32.eqz - if - local.get $0 - i32.const -2147483648 - i32.const 805306368 - i32.or - local.get $2 - i32.const 1 - i32.sub - i32.or - i32.store offset=4 - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - if - local.get $0 - call $~lib/rt/pure/appendRoot - end - else - local.get $0 - local.get $1 - i32.const 268435455 - i32.const -1 - i32.xor - i32.and - local.get $2 - i32.const 1 - i32.sub - i32.or - i32.store offset=4 - end - end - ) - (func $~lib/rt/pure/__release (; 32 ;) (type $FUNCSIG$vi) (param $0 i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.gt_u - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/pure/decrement - end - ) - (func $~lib/arraybuffer/ArrayBufferView#constructor (; 33 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $1 - i32.const 1073741808 - local.get $2 - i32.shr_u - i32.gt_u - if - i32.const 24 - i32.const 72 - i32.const 14 - i32.const 56 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $2 - i32.shl - local.tee $1 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $3 - local.get $3 - i32.const 0 - local.get $1 - call $~lib/memory/memory.fill - local.get $0 - i32.eqz - if - i32.const 12 - i32.const 2 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $0 - end - local.get $0 - i32.const 0 - i32.store - local.get $0 - i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - i32.load - local.tee $4 - i32.ne - if - local.get $5 - call $~lib/rt/pure/__retain - drop - local.get $4 - call $~lib/rt/pure/__release - end - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $0 - ) - (func $~lib/array/Array#constructor (; 34 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 16 - i32.const 3 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 2 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - i32.const 0 - i32.store offset=12 - local.get $0 - local.get $1 - i32.store offset=12 - local.get $0 - ) - (func $~lib/array/Array.isArray<~lib/array/Array | null> (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - i32.const 1 - if (result i32) - local.get $0 - i32.const 0 - i32.ne - else - i32.const 0 - end - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - ) - (func $~lib/array/Array.isArray<~lib/array/Array> (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - i32.const 1 - if (result i32) - local.get $0 - i32.const 0 - i32.ne - else - i32.const 0 - end - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - ) - (func $std/array/P#constructor (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 4 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $0 - end - local.get $0 - ) - (func $~lib/array/Array.isArray (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - i32.const 0 - if (result i32) - local.get $0 - i32.const 0 - i32.ne - else - i32.const 0 - end - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - ) - (func $~lib/typedarray/Uint8Array#constructor (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 5 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/array/Array.isArray<~lib/typedarray/Uint8Array> (; 40 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - i32.const 0 - if (result i32) - local.get $0 - i32.const 0 - i32.ne - else - i32.const 0 - end - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - ) - (func $~lib/array/Array.isArray (; 41 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - i32.const 0 - if (result i32) - local.get $0 - i32.const 0 - i32.ne - else - i32.const 0 - end - ) - (func $~lib/array/Array.isArray<~lib/string/String> (; 42 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - i32.const 0 - if (result i32) - local.get $0 - i32.const 0 - i32.ne - else - i32.const 0 - end - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - ) - (func $~lib/rt/__allocArray (; 43 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - i32.const 16 - local.get $2 - call $~lib/rt/tlsf/__alloc - local.set $4 - local.get $0 - local.get $1 - i32.shl - local.set $5 - local.get $5 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $4 - local.get $6 - call $~lib/rt/pure/__retain - i32.store - local.get $4 - local.get $6 - i32.store offset=4 - local.get $4 - local.get $5 - i32.store offset=8 - local.get $4 - local.get $0 - i32.store offset=12 - local.get $3 - if - local.get $6 - local.get $3 - local.get $5 - call $~lib/memory/memory.copy - end - local.get $4 - ) - (func $~lib/array/Array#fill (; 44 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - i32.load offset=4 - local.set $4 - local.get $0 - i32.load offset=12 - local.set $5 - local.get $2 - i32.const 0 - i32.lt_s - if (result i32) - local.get $5 - local.get $2 - i32.add - local.tee $6 - i32.const 0 - local.tee $7 - local.get $6 - local.get $7 - i32.gt_s - select - else - local.get $2 - local.tee $6 - local.get $5 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - end - local.set $2 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $5 - local.get $3 - i32.add - local.tee $6 - i32.const 0 - local.tee $7 - local.get $6 - local.get $7 - i32.gt_s - select - else - local.get $3 - local.tee $6 - local.get $5 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - end - local.set $3 - local.get $2 - local.get $3 - i32.lt_s - if - local.get $4 - local.get $2 - i32.add - local.get $1 - local.get $3 - local.get $2 - i32.sub - call $~lib/memory/memory.fill - end - local.get $0 - call $~lib/rt/pure/__retain - ) - (func $~lib/array/Array#get:length (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array#__unchecked_get (; 46 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 0 - i32.shl - i32.add - i32.load8_u - ) - (func $~lib/array/Array#__get (; 47 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 280 - i32.const 488 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $std/array/isArraysEqual (; 48 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.eqz - if - local.get $0 - call $~lib/array/Array#get:length - local.set $2 - local.get $2 - local.get $1 - call $~lib/array/Array#get:length - i32.ne - if - i32.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - end - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $2 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - call $~lib/array/Array#__get - local.get $1 - local.get $3 - call $~lib/array/Array#__get - i32.ne - if - i32.const 0 - local.set $4 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/array/Array#fill (; 49 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - i32.load offset=4 - local.set $4 - local.get $0 - i32.load offset=12 - local.set $5 - local.get $2 - i32.const 0 - i32.lt_s - if (result i32) - local.get $5 - local.get $2 - i32.add - local.tee $6 - i32.const 0 - local.tee $7 - local.get $6 - local.get $7 - i32.gt_s - select - else - local.get $2 - local.tee $6 - local.get $5 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - end - local.set $2 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $5 - local.get $3 - i32.add - local.tee $6 - i32.const 0 - local.tee $7 - local.get $6 - local.get $7 - i32.gt_s - select - else - local.get $3 - local.tee $6 - local.get $5 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - end - local.set $3 - block $break|0 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $4 - local.get $2 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - local.get $0 - call $~lib/rt/pure/__retain - ) - (func $~lib/array/Array#get:length (; 50 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array#__unchecked_get (; 51 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - ) - (func $~lib/array/Array#__get (; 52 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 280 - i32.const 488 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $std/array/isArraysEqual (; 53 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.eqz - if - local.get $0 - call $~lib/array/Array#get:length - local.set $2 - local.get $2 - local.get $1 - call $~lib/array/Array#get:length - i32.ne - if - i32.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - end - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $2 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - call $~lib/array/Array#__get - local.get $1 - local.get $3 - call $~lib/array/Array#__get - i32.ne - if - i32.const 0 - local.set $4 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/array/Array#get:length (; 54 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 55 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 16 - i32.sub - i32.load offset=12 - ) - (func $std/array/internalCapacity (; 56 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 2 - i32.shr_s - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/rt/tlsf/reallocateBlock (; 57 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $2 - call $~lib/rt/tlsf/prepareSize - local.set $3 - local.get $1 - i32.load - local.set $4 - local.get $4 - i32.const 1 - i32.and - i32.eqz - if (result i32) - local.get $1 - i32.load offset=4 - i32.const -268435456 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 521 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - local.get $4 - i32.const -4 - i32.and - i32.le_u - if - local.get $0 - local.get $1 - local.get $3 - call $~lib/rt/tlsf/prepareBlock - local.get $1 - local.get $2 - i32.store offset=12 - local.get $1 - return - end - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $6 - local.get $6 - i32.load - local.set $7 - local.get $7 - i32.const 1 - i32.and - if - local.get $4 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $7 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $5 - local.get $5 - local.get $3 - i32.ge_u - if - local.get $0 - local.get $6 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $4 - i32.const 3 - i32.and - local.get $5 - i32.or - i32.store - local.get $1 - local.get $2 - i32.store offset=12 - local.get $0 - local.get $1 - local.get $3 - call $~lib/rt/tlsf/prepareBlock - local.get $1 - return - end - end - local.get $0 - local.get $2 - call $~lib/rt/tlsf/allocateBlock - local.set $8 - local.get $8 - local.get $1 - i32.load offset=8 - i32.store offset=8 - local.get $8 - i32.const 16 - i32.add - local.get $1 - i32.const 16 - i32.add - local.get $2 - call $~lib/memory/memory.copy - local.get $1 - local.get $4 - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $1 - call $~lib/rt/tlsf/insertBlock - local.get $1 - call $~lib/rt/rtrace/onfree - local.get $8 - ) - (func $~lib/rt/tlsf/__realloc (; 58 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 585 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/tlsf/ROOT - local.get $0 - i32.const 16 - i32.sub - local.get $1 - call $~lib/rt/tlsf/reallocateBlock - i32.const 16 - i32.add - ) - (func $~lib/array/ensureSize (; 59 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=8 - local.set $3 - local.get $1 - local.get $3 - local.get $2 - i32.shr_u - i32.gt_u - if - local.get $1 - i32.const 1073741808 - local.get $2 - i32.shr_u - i32.gt_u - if - i32.const 24 - i32.const 488 - i32.const 14 - i32.const 47 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load - local.set $4 - local.get $1 - local.get $2 - i32.shl - local.set $5 - local.get $4 - local.get $5 - call $~lib/rt/tlsf/__realloc - local.set $6 - local.get $6 - local.get $3 - i32.add - i32.const 0 - local.get $5 - local.get $3 - i32.sub - call $~lib/memory/memory.fill - local.get $6 - local.get $4 - i32.ne - if - local.get $0 - local.get $6 - call $~lib/rt/pure/__retain - i32.store - local.get $0 - local.get $6 - i32.store offset=4 - end - local.get $0 - local.get $5 - i32.store offset=8 - end - ) - (func $~lib/array/Array#push (; 60 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 1 - i32.add - local.set $3 - local.get $0 - local.get $3 - i32.const 2 - call $~lib/array/ensureSize - local.get $0 - i32.load offset=4 - local.get $2 - i32.const 2 - i32.shl - i32.add - local.get $1 - i32.store - local.get $0 - local.get $3 - i32.store offset=12 - local.get $3 - ) - (func $~lib/array/Array#__unchecked_get (; 61 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - ) - (func $~lib/array/Array#__get (; 62 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 280 - i32.const 488 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $~lib/array/Array#pop (; 63 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.load offset=12 - local.set $1 - local.get $1 - i32.const 1 - i32.lt_s - if - i32.const 872 - i32.const 488 - i32.const 274 - i32.const 20 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.sub - local.tee $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $2 - local.get $0 - local.get $1 - i32.store offset=12 - local.get $2 - ) - (func $~lib/array/Array#concat (; 64 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=12 - local.set $2 - i32.const 0 - local.get $1 - i32.load offset=12 - local.get $1 - i32.const 0 - i32.eq - select - local.set $3 - local.get $2 - local.get $3 - i32.add - local.set $4 - local.get $4 - i32.const 268435452 - i32.gt_u - if - local.get $1 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 488 - i32.const 204 - i32.const 59 - call $~lib/builtins/abort - unreachable - end - local.get $4 - i32.const 2 - i32.const 3 - i32.const 0 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.set $5 - local.get $5 - i32.load offset=4 - local.set $6 - local.get $2 - i32.const 2 - i32.shl - local.set $7 - local.get $6 - local.get $0 - i32.load offset=4 - local.get $7 - call $~lib/memory/memory.copy - local.get $6 - local.get $7 - i32.add - local.get $1 - i32.load offset=4 - local.get $3 - i32.const 2 - i32.shl - call $~lib/memory/memory.copy - local.get $5 - local.set $8 - local.get $1 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/array/Array#copyWithin (; 65 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $0 - i32.load offset=4 - local.set $4 - local.get $0 - i32.load offset=12 - local.set $5 - local.get $3 - local.tee $6 - local.get $5 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - local.set $3 - local.get $1 - i32.const 0 - i32.lt_s - if (result i32) - local.get $5 - local.get $1 - i32.add - local.tee $6 - i32.const 0 - local.tee $7 - local.get $6 - local.get $7 - i32.gt_s - select - else - local.get $1 - local.tee $6 - local.get $5 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - end - local.set $8 - local.get $2 - i32.const 0 - i32.lt_s - if (result i32) - local.get $5 - local.get $2 - i32.add - local.tee $6 - i32.const 0 - local.tee $7 - local.get $6 - local.get $7 - i32.gt_s - select - else - local.get $2 - local.tee $6 - local.get $5 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - end - local.set $9 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $5 - local.get $3 - i32.add - local.tee $6 - i32.const 0 - local.tee $7 - local.get $6 - local.get $7 - i32.gt_s - select - else - local.get $3 - local.tee $6 - local.get $5 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - end - local.set $10 - local.get $10 - local.get $9 - i32.sub - local.tee $6 - local.get $5 - local.get $8 - i32.sub - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - local.set $11 - local.get $4 - local.get $8 - i32.const 2 - i32.shl - i32.add - local.get $4 - local.get $9 - i32.const 2 - i32.shl - i32.add - local.get $11 - i32.const 2 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - call $~lib/rt/pure/__retain - ) - (func $std/array/isArraysEqual (; 66 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.eqz - if - local.get $0 - call $~lib/array/Array#get:length - local.set $2 - local.get $2 - local.get $1 - call $~lib/array/Array#get:length - i32.ne - if - i32.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - end - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $2 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - call $~lib/array/Array#__get - local.get $1 - local.get $3 - call $~lib/array/Array#__get - i32.ne - if - i32.const 0 - local.set $4 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/array/Array#unshift (; 67 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.load offset=12 - i32.const 1 - i32.add - local.set $2 - local.get $0 - local.get $2 - i32.const 2 - call $~lib/array/ensureSize - local.get $0 - i32.load offset=4 - local.set $3 - local.get $3 - i32.const 4 - i32.add - local.get $3 - local.get $2 - i32.const 1 - i32.sub - i32.const 2 - i32.shl - call $~lib/memory/memory.copy - local.get $3 - local.get $1 - i32.store - local.get $0 - local.get $2 - i32.store offset=12 - local.get $2 - ) - (func $~lib/array/Array#shift (; 68 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=12 - local.set $1 - local.get $1 - i32.const 1 - i32.lt_s - if - i32.const 872 - i32.const 488 - i32.const 335 - i32.const 20 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - i32.load - local.set $3 - local.get $1 - i32.const 1 - i32.sub - local.set $4 - local.get $2 - local.get $2 - i32.const 4 - i32.add - local.get $4 - i32.const 2 - i32.shl - call $~lib/memory/memory.copy - local.get $2 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.const 0 - i32.store - local.get $0 - local.get $4 - i32.store offset=12 - local.get $3 - ) - (func $~lib/array/Array#reverse (; 69 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=12 - local.set $1 - local.get $1 - if - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.sub - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $2 - local.get $3 - i32.load - i32.store - local.get $3 - local.get $4 - i32.store - local.get $2 - i32.const 4 - i32.add - local.set $2 - local.get $3 - i32.const 4 - i32.sub - local.set $3 - br $continue|0 - end - unreachable - end - end - local.get $0 - call $~lib/rt/pure/__retain - ) - (func $~lib/array/Array#indexOf (; 70 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=12 - local.set $3 - local.get $3 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $2 - local.get $3 - i32.ge_s - end - if - i32.const -1 - return - end - local.get $2 - i32.const 0 - i32.lt_s - if - local.get $3 - local.get $2 - i32.add - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.set $2 - end - local.get $0 - i32.load offset=4 - local.set $6 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $6 - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $1 - i32.eq - if - local.get $2 - return - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - i32.const -1 - ) - (func $~lib/array/Array#includes (; 71 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - local.get $0 - local.get $1 - local.get $2 - call $~lib/array/Array#indexOf - i32.const 0 - i32.ge_s - ) - (func $~lib/array/Array#splice (; 72 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - i32.load offset=12 - local.set $3 - local.get $1 - i32.const 0 - i32.lt_s - if (result i32) - local.get $3 - local.get $1 - i32.add - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - else - local.get $1 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - end - local.set $1 - local.get $2 - local.tee $4 - local.get $3 - local.get $1 - i32.sub - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.set $2 - local.get $2 - i32.const 2 - i32.const 3 - i32.const 0 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.set $6 - local.get $6 - i32.load offset=4 - local.set $7 - local.get $0 - i32.load offset=4 - local.set $8 - local.get $8 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.set $9 - local.get $7 - local.get $9 - local.get $2 - i32.const 2 - i32.shl - call $~lib/memory/memory.copy - local.get $1 - local.get $2 - i32.add - local.set $10 - local.get $3 - local.get $10 - i32.ne - if - local.get $9 - local.get $8 - local.get $10 - i32.const 2 - i32.shl - i32.add - local.get $3 - local.get $10 - i32.sub - i32.const 2 - i32.shl - call $~lib/memory/memory.copy - end - local.get $0 - local.get $3 - local.get $2 - i32.sub - i32.store offset=12 - local.get $6 - ) - (func $~lib/array/Array#__unchecked_set (; 73 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.get $2 - i32.store - ) - (func $~lib/array/Array#__set (; 74 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.const 2 - call $~lib/array/ensureSize - local.get $0 - local.get $1 - local.get $2 - call $~lib/array/Array#__unchecked_set - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_s - if - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=12 - end - ) - (func $start:std/array~anonymous|0 (; 75 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/array/Array#findIndex (; 76 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - i32.const 0 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - local.tee $4 - local.get $0 - i32.load offset=12 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $0 - i32.load offset=4 - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $2 - local.get $0 - local.get $1 - call_indirect (type $FUNCSIG$iiii) - if - local.get $2 - return - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - i32.const -1 - ) - (func $start:std/array~anonymous|1 (; 77 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 1 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|2 (; 78 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 100 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|3 (; 79 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.const 100 - call $~lib/array/Array#push - drop - local.get $0 - i32.const 100 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|4 (; 80 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 100 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|5 (; 81 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/array/Array#pop - drop - local.get $0 - i32.const 100 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|6 (; 82 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 0 - i32.ge_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/array/Array#every (; 83 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - i32.const 0 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - local.tee $4 - local.get $0 - i32.load offset=12 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $0 - i32.load offset=4 - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $2 - local.get $0 - local.get $1 - call_indirect (type $FUNCSIG$iiii) - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - return - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - i32.const 1 - ) - (func $start:std/array~anonymous|7 (; 84 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 0 - i32.le_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|8 (; 85 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.const 100 - call $~lib/array/Array#push - drop - local.get $0 - i32.const 10 - i32.lt_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|9 (; 86 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 10 - i32.lt_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|10 (; 87 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/array/Array#pop - drop - local.get $0 - i32.const 3 - i32.lt_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|11 (; 88 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 3 - i32.ge_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/array/Array#some (; 89 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - i32.const 0 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - local.tee $4 - local.get $0 - i32.load offset=12 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $0 - i32.load offset=4 - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $2 - local.get $0 - local.get $1 - call_indirect (type $FUNCSIG$iiii) - if - i32.const 1 - return - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - i32.const 0 - ) - (func $start:std/array~anonymous|12 (; 90 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const -1 - i32.le_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|13 (; 91 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.const 100 - call $~lib/array/Array#push - drop - local.get $0 - i32.const 10 - i32.gt_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|14 (; 92 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 10 - i32.gt_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|15 (; 93 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/array/Array#pop - drop - local.get $0 - i32.const 3 - i32.gt_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|16 (; 94 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/array/i - local.get $0 - i32.add - global.set $std/array/i - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/array/Array#forEach (; 95 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - i32.const 0 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - local.tee $4 - local.get $0 - i32.load offset=12 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $0 - i32.load offset=4 - local.get $2 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $2 - local.get $0 - local.get $1 - call_indirect (type $FUNCSIG$viii) - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - ) - (func $start:std/array~anonymous|17 (; 96 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.const 100 - call $~lib/array/Array#push - drop - global.get $std/array/i - local.get $0 - i32.add - global.set $std/array/i - local.get $2 - call $~lib/rt/pure/__release - ) - (func $start:std/array~anonymous|18 (; 97 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/array/i - local.get $0 - i32.add - global.set $std/array/i - local.get $2 - call $~lib/rt/pure/__release - ) - (func $start:std/array~anonymous|19 (; 98 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/array/Array#pop - drop - global.get $std/array/i - local.get $0 - i32.add - global.set $std/array/i - local.get $2 - call $~lib/rt/pure/__release - ) - (func $start:std/array~anonymous|20 (; 99 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 0 - i32.eq - if - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - i32.const 4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $2 - call $~lib/array/Array#pop - drop - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|0 - end - unreachable - end - block $break|1 - i32.const 0 - local.set $3 - loop $loop|1 - local.get $3 - i32.const 100 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $2 - i32.const 100 - local.get $3 - i32.add - call $~lib/array/Array#push - drop - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|1 - end - unreachable - end - block $break|2 - i32.const 0 - local.set $3 - loop $loop|2 - local.get $3 - i32.const 100 - i32.lt_s - i32.eqz - br_if $break|2 - local.get $2 - call $~lib/array/Array#pop - drop - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|2 - end - unreachable - end - block $break|3 - i32.const 0 - local.set $3 - loop $loop|3 - local.get $3 - i32.const 100 - i32.lt_s - i32.eqz - br_if $break|3 - local.get $2 - local.get $3 - i32.const 200 - i32.add - call $~lib/array/Array#push - drop - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|3 - end - unreachable - end - end - local.get $1 - i32.const 2 - i32.eq - if - local.get $0 - i32.const 202 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 569 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - end - local.get $2 - call $~lib/rt/pure/__release - ) - (func $start:std/array~anonymous|21 (; 100 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) - (local $3 f32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f32.convert_i32_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/array/Array#map (; 101 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 f32) - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 2 - i32.const 8 - i32.const 0 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.set $3 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - loop $loop|0 - local.get $5 - local.get $2 - local.tee $6 - local.get $0 - i32.load offset=12 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $0 - i32.load offset=4 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $5 - local.get $0 - local.get $1 - call_indirect (type $FUNCSIG$fiii) - local.set $8 - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - local.get $8 - f32.store - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - ) - (func $~lib/array/Array#get:length (; 102 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array#__unchecked_get (; 103 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - f32.load - ) - (func $~lib/array/Array#__get (; 104 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) - (local $2 f32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 280 - i32.const 488 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $start:std/array~anonymous|22 (; 105 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.const 100 - call $~lib/array/Array#push - drop - global.get $std/array/i - local.get $0 - i32.add - global.set $std/array/i - local.get $0 - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/array/Array#map (; 106 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 2 - i32.const 3 - i32.const 0 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.set $3 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - loop $loop|0 - local.get $5 - local.get $2 - local.tee $6 - local.get $0 - i32.load offset=12 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $0 - i32.load offset=4 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $5 - local.get $0 - local.get $1 - call_indirect (type $FUNCSIG$iiii) - local.set $6 - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - ) - (func $start:std/array~anonymous|23 (; 107 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/array/i - local.get $0 - i32.add - global.set $std/array/i - local.get $0 - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|24 (; 108 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/array/Array#pop - drop - global.get $std/array/i - local.get $0 - i32.add - global.set $std/array/i - local.get $0 - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|25 (; 109 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 2 - i32.ge_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/array/Array#filter (; 110 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - i32.const 0 - i32.const 2 - i32.const 3 - i32.const 0 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.set $2 - block $break|0 - i32.const 0 - local.set $3 - local.get $0 - i32.load offset=12 - local.set $4 - loop $loop|0 - local.get $3 - local.get $4 - local.tee $5 - local.get $0 - i32.load offset=12 - local.tee $6 - local.get $5 - local.get $6 - i32.lt_s - select - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - i32.load offset=4 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - i32.const 3 - global.set $~lib/argc - local.get $5 - local.get $3 - local.get $0 - local.get $1 - call_indirect (type $FUNCSIG$iiii) - if - local.get $2 - local.get $5 - call $~lib/array/Array#push - drop - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|0 - end - unreachable - end - local.get $2 - ) - (func $start:std/array~anonymous|26 (; 111 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.const 100 - call $~lib/array/Array#push - drop - global.get $std/array/i - local.get $0 - i32.add - global.set $std/array/i - local.get $0 - i32.const 2 - i32.ge_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|27 (; 112 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/array/i - local.get $0 - i32.add - global.set $std/array/i - local.get $0 - i32.const 2 - i32.ge_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|28 (; 113 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/array/Array#pop - drop - global.get $std/array/i - local.get $0 - i32.add - global.set $std/array/i - local.get $0 - i32.const 2 - i32.ge_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $start:std/array~anonymous|29 (; 114 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#reduce (; 115 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $2 - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - local.get $0 - i32.load offset=12 - local.set $5 - loop $loop|0 - local.get $4 - local.get $5 - local.tee $6 - local.get $0 - i32.load offset=12 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $0 - i32.load offset=4 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $4 - local.get $0 - local.get $1 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - ) - (func $start:std/array~anonymous|30 (; 116 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $start:std/array~anonymous|31 (; 117 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 2 - i32.gt_s - end - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#reduce (; 118 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $2 - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - local.get $0 - i32.load offset=12 - local.set $5 - loop $loop|0 - local.get $4 - local.get $5 - local.tee $6 - local.get $0 - i32.load offset=12 - local.tee $7 - local.get $6 - local.get $7 - i32.lt_s - select - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $0 - i32.load offset=4 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $4 - local.get $0 - local.get $1 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - ) - (func $start:std/array~anonymous|32 (; 119 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 100 - i32.gt_s - end - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $start:std/array~anonymous|33 (; 120 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $3 - i32.const 1 - call $~lib/array/Array#push - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $start:std/array~anonymous|34 (; 121 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $start:std/array~anonymous|35 (; 122 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/array/Array#pop - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $start:std/array~anonymous|36 (; 123 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#reduceRight (; 124 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - local.get $2 - local.set $3 - block $break|0 - local.get $0 - i32.load offset=12 - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $4 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $0 - i32.load offset=4 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $4 - local.get $0 - local.get $1 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - ) - (func $start:std/array~anonymous|37 (; 125 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $start:std/array~anonymous|38 (; 126 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 2 - i32.gt_s - end - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#reduceRight (; 127 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - local.get $2 - local.set $3 - block $break|0 - local.get $0 - i32.load offset=12 - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $4 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $0 - i32.load offset=4 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $4 - local.get $0 - local.get $1 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - ) - (func $start:std/array~anonymous|39 (; 128 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 100 - i32.gt_s - end - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $start:std/array~anonymous|40 (; 129 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $3 - i32.const 1 - call $~lib/array/Array#push - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $start:std/array~anonymous|41 (; 130 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $start:std/array~anonymous|42 (; 131 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/array/Array#pop - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/math/murmurHash3 (; 132 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) - local.get $0 - local.get $0 - i64.const 33 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - i64.const -49064778989728563 - i64.mul - local.set $0 - local.get $0 - local.get $0 - i64.const 33 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - i64.const -4265267296055464877 - i64.mul - local.set $0 - local.get $0 - local.get $0 - i64.const 33 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - ) - (func $~lib/math/splitMix32 (; 133 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 1831565813 - i32.add - local.set $0 - local.get $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - local.get $0 - i32.const 1 - i32.or - i32.mul - local.set $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - i32.const 7 - i32.shr_u - i32.xor - local.get $0 - i32.const 61 - i32.or - i32.mul - i32.add - i32.xor - local.set $0 - local.get $0 - local.get $0 - i32.const 14 - i32.shr_u - i32.xor - ) - (func $~lib/math/NativeMath.seedRandom (; 134 ;) (type $FUNCSIG$vj) (param $0 i64) - i32.const 1 - global.set $~lib/math/random_seeded - local.get $0 - call $~lib/math/murmurHash3 - global.set $~lib/math/random_state0_64 - global.get $~lib/math/random_state0_64 - i64.const -1 - i64.xor - call $~lib/math/murmurHash3 - global.set $~lib/math/random_state1_64 - local.get $0 - i32.wrap_i64 - call $~lib/math/splitMix32 - global.set $~lib/math/random_state0_32 - global.get $~lib/math/random_state0_32 - call $~lib/math/splitMix32 - global.set $~lib/math/random_state1_32 - global.get $~lib/math/random_state0_64 - i64.const 0 - i64.ne - if (result i32) - global.get $~lib/math/random_state1_64 - i64.const 0 - i64.ne - else - i32.const 0 - end - if (result i32) - global.get $~lib/math/random_state0_32 - i32.const 0 - i32.ne - else - i32.const 0 - end - if (result i32) - global.get $~lib/math/random_state1_32 - i32.const 0 - i32.ne - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 3160 - i32.const 1369 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - ) - (func $~lib/util/sort/insertionSort (; 135 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 f32) - (local $5 i32) - (local $6 f32) - (local $7 i32) - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - f32.load - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - block $break|1 - loop $continue|1 - local.get $5 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - f32.load - local.set $6 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $6 - local.get $2 - call_indirect (type $FUNCSIG$iff) - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $5 - local.tee $7 - i32.const 1 - i32.sub - local.set $5 - local.get $7 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $6 - f32.store - else - br $break|1 - end - br $continue|1 - end - unreachable - end - local.get $0 - local.get $5 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $4 - f32.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|0 - end - unreachable - end - ) - (func $~lib/util/sort/weakHeapSort (; 136 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 f32) - (local $9 f32) - (local $10 f32) - local.get $1 - i32.const 31 - i32.add - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - local.set $3 - local.get $3 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $4 - local.get $4 - i32.const 0 - local.get $3 - call $~lib/memory/memory.fill - block $break|0 - local.get $1 - i32.const 1 - i32.sub - local.set $5 - loop $loop|0 - local.get $5 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|0 - local.get $5 - local.set $6 - block $break|1 - loop $continue|1 - local.get $6 - i32.const 1 - i32.and - local.get $4 - local.get $6 - i32.const 6 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - local.get $6 - i32.const 1 - i32.shr_s - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.eq - i32.eqz - br_if $break|1 - local.get $6 - i32.const 1 - i32.shr_s - local.set $6 - br $continue|1 - end - unreachable - end - local.get $6 - i32.const 1 - i32.shr_s - local.set $7 - local.get $0 - local.get $7 - i32.const 2 - i32.shl - i32.add - f32.load - local.set $8 - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - f32.load - local.set $9 - i32.const 2 - global.set $~lib/argc - local.get $8 - local.get $9 - local.get $2 - call_indirect (type $FUNCSIG$iff) - i32.const 0 - i32.lt_s - if - local.get $4 - local.get $5 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - local.get $4 - local.get $5 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - i32.const 1 - local.get $5 - i32.const 31 - i32.and - i32.shl - i32.xor - i32.store - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - local.get $8 - f32.store - local.get $0 - local.get $7 - i32.const 2 - i32.shl - i32.add - local.get $9 - f32.store - end - local.get $5 - i32.const 1 - i32.sub - local.set $5 - br $loop|0 - end - unreachable - end - block $break|2 - local.get $1 - i32.const 1 - i32.sub - local.set $7 - loop $loop|2 - local.get $7 - i32.const 2 - i32.ge_s - i32.eqz - br_if $break|2 - local.get $0 - f32.load - local.set $9 - local.get $0 - local.get $0 - local.get $7 - i32.const 2 - i32.shl - i32.add - f32.load - f32.store - local.get $0 - local.get $7 - i32.const 2 - i32.shl - i32.add - local.get $9 - f32.store - i32.const 1 - local.set $6 - block $break|3 - loop $continue|3 - local.get $6 - i32.const 1 - i32.shl - local.get $4 - local.get $6 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - local.get $6 - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.add - local.tee $5 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|3 - local.get $5 - local.set $6 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $6 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|4 - local.get $0 - f32.load - local.set $9 - local.get $0 - local.get $6 - i32.const 2 - i32.shl - i32.add - f32.load - local.set $8 - i32.const 2 - global.set $~lib/argc - local.get $9 - local.get $8 - local.get $2 - call_indirect (type $FUNCSIG$iff) - i32.const 0 - i32.lt_s - if - local.get $4 - local.get $6 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - local.get $4 - local.get $6 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - i32.const 1 - local.get $6 - i32.const 31 - i32.and - i32.shl - i32.xor - i32.store - local.get $0 - local.get $6 - i32.const 2 - i32.shl - i32.add - local.get $9 - f32.store - local.get $0 - local.get $8 - f32.store - end - local.get $6 - i32.const 1 - i32.shr_s - local.set $6 - br $continue|4 - end - unreachable - end - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|2 - end - unreachable - end - local.get $4 - call $~lib/rt/tlsf/__free - local.get $0 - f32.load offset=4 - local.set $10 - local.get $0 - local.get $0 - f32.load - f32.store offset=4 - local.get $0 - local.get $10 - f32.store - ) - (func $~lib/array/Array#sort (; 137 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 f32) - (local $5 f32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 1 - i32.le_s - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i32.load offset=4 - local.set $3 - local.get $2 - i32.const 2 - i32.eq - if - local.get $3 - f32.load offset=4 - local.set $4 - local.get $3 - f32.load - local.set $5 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $5 - local.get $1 - call_indirect (type $FUNCSIG$iff) - i32.const 0 - i32.lt_s - if - local.get $3 - local.get $5 - f32.store offset=4 - local.get $3 - local.get $4 - f32.store - end - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $3 - local.set $8 - local.get $2 - local.set $7 - local.get $1 - local.set $6 - local.get $7 - i32.const 256 - i32.lt_s - if - local.get $8 - local.get $7 - local.get $6 - call $~lib/util/sort/insertionSort - else - local.get $8 - local.get $7 - local.get $6 - call $~lib/util/sort/weakHeapSort - end - local.get $0 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 138 ;) (type $FUNCSIG$iff) (param $0 f32) (param $1 f32) (result i32) - (local $2 i32) - (local $3 i32) - local.get $0 - i32.reinterpret_f32 - local.set $2 - local.get $1 - i32.reinterpret_f32 - local.set $3 - local.get $2 - local.get $2 - i32.const 31 - i32.shr_s - i32.const 1 - i32.shr_u - i32.xor - local.set $2 - local.get $3 - local.get $3 - i32.const 31 - i32.shr_s - i32.const 1 - i32.shr_u - i32.xor - local.set $3 - local.get $2 - local.get $3 - i32.gt_s - local.get $2 - local.get $3 - i32.lt_s - i32.sub - ) - (func $~lib/array/Array#sort|trampoline (; 139 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - block $~lib/util/sort/COMPARATOR|inlined.0 (result i32) - i32.const 44 - br $~lib/util/sort/COMPARATOR|inlined.0 - end - local.set $1 - end - local.get $0 - local.get $1 - call $~lib/array/Array#sort - ) - (func $~lib/number/isNaN (; 140 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) - local.get $0 - local.get $0 - f32.ne - ) - (func $std/array/isArraysEqual (; 141 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.eqz - if - local.get $0 - call $~lib/array/Array#get:length - local.set $2 - local.get $2 - local.get $1 - call $~lib/array/Array#get:length - i32.ne - if - i32.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - end - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $2 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - local.get $0 - local.get $3 - call $~lib/array/Array#__get - call $~lib/number/isNaN - local.get $1 - local.get $3 - call $~lib/array/Array#__get - call $~lib/number/isNaN - i32.eq - if - br $continue|0 - end - local.get $0 - local.get $3 - call $~lib/array/Array#__get - local.get $1 - local.get $3 - call $~lib/array/Array#__get - f32.ne - if - i32.const 0 - local.set $4 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - end - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/util/sort/insertionSort (; 142 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 i32) - (local $6 f64) - (local $7 i32) - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - block $break|1 - loop $continue|1 - local.get $5 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $6 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $6 - local.get $2 - call_indirect (type $FUNCSIG$idd) - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $5 - local.tee $7 - i32.const 1 - i32.sub - local.set $5 - local.get $7 - i32.const 1 - i32.add - i32.const 3 - i32.shl - i32.add - local.get $6 - f64.store - else - br $break|1 - end - br $continue|1 - end - unreachable - end - local.get $0 - local.get $5 - i32.const 1 - i32.add - i32.const 3 - i32.shl - i32.add - local.get $4 - f64.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|0 - end - unreachable - end - ) - (func $~lib/util/sort/weakHeapSort (; 143 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 f64) - (local $9 f64) - (local $10 f64) - local.get $1 - i32.const 31 - i32.add - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - local.set $3 - local.get $3 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $4 - local.get $4 - i32.const 0 - local.get $3 - call $~lib/memory/memory.fill - block $break|0 - local.get $1 - i32.const 1 - i32.sub - local.set $5 - loop $loop|0 - local.get $5 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|0 - local.get $5 - local.set $6 - block $break|1 - loop $continue|1 - local.get $6 - i32.const 1 - i32.and - local.get $4 - local.get $6 - i32.const 6 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - local.get $6 - i32.const 1 - i32.shr_s - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.eq - i32.eqz - br_if $break|1 - local.get $6 - i32.const 1 - i32.shr_s - local.set $6 - br $continue|1 - end - unreachable - end - local.get $6 - i32.const 1 - i32.shr_s - local.set $7 - local.get $0 - local.get $7 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $8 - local.get $0 - local.get $5 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $9 - i32.const 2 - global.set $~lib/argc - local.get $8 - local.get $9 - local.get $2 - call_indirect (type $FUNCSIG$idd) - i32.const 0 - i32.lt_s - if - local.get $4 - local.get $5 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - local.get $4 - local.get $5 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - i32.const 1 - local.get $5 - i32.const 31 - i32.and - i32.shl - i32.xor - i32.store - local.get $0 - local.get $5 - i32.const 3 - i32.shl - i32.add - local.get $8 - f64.store - local.get $0 - local.get $7 - i32.const 3 - i32.shl - i32.add - local.get $9 - f64.store - end - local.get $5 - i32.const 1 - i32.sub - local.set $5 - br $loop|0 - end - unreachable - end - block $break|2 - local.get $1 - i32.const 1 - i32.sub - local.set $7 - loop $loop|2 - local.get $7 - i32.const 2 - i32.ge_s - i32.eqz - br_if $break|2 - local.get $0 - f64.load - local.set $9 - local.get $0 - local.get $0 - local.get $7 - i32.const 3 - i32.shl - i32.add - f64.load - f64.store - local.get $0 - local.get $7 - i32.const 3 - i32.shl - i32.add - local.get $9 - f64.store - i32.const 1 - local.set $6 - block $break|3 - loop $continue|3 - local.get $6 - i32.const 1 - i32.shl - local.get $4 - local.get $6 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - local.get $6 - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.add - local.tee $5 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|3 - local.get $5 - local.set $6 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $6 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|4 - local.get $0 - f64.load - local.set $9 - local.get $0 - local.get $6 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $8 - i32.const 2 - global.set $~lib/argc - local.get $9 - local.get $8 - local.get $2 - call_indirect (type $FUNCSIG$idd) - i32.const 0 - i32.lt_s - if - local.get $4 - local.get $6 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - local.get $4 - local.get $6 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - i32.const 1 - local.get $6 - i32.const 31 - i32.and - i32.shl - i32.xor - i32.store - local.get $0 - local.get $6 - i32.const 3 - i32.shl - i32.add - local.get $9 - f64.store - local.get $0 - local.get $8 - f64.store - end - local.get $6 - i32.const 1 - i32.shr_s - local.set $6 - br $continue|4 - end - unreachable - end - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|2 - end - unreachable - end - local.get $4 - call $~lib/rt/tlsf/__free - local.get $0 - f64.load offset=8 - local.set $10 - local.get $0 - local.get $0 - f64.load - f64.store offset=8 - local.get $0 - local.get $10 - f64.store - ) - (func $~lib/array/Array#sort (; 144 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 1 - i32.le_s - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i32.load offset=4 - local.set $3 - local.get $2 - i32.const 2 - i32.eq - if - local.get $3 - f64.load offset=8 - local.set $4 - local.get $3 - f64.load - local.set $5 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $5 - local.get $1 - call_indirect (type $FUNCSIG$idd) - i32.const 0 - i32.lt_s - if - local.get $3 - local.get $5 - f64.store offset=8 - local.get $3 - local.get $4 - f64.store - end - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $3 - local.set $8 - local.get $2 - local.set $7 - local.get $1 - local.set $6 - local.get $7 - i32.const 256 - i32.lt_s - if - local.get $8 - local.get $7 - local.get $6 - call $~lib/util/sort/insertionSort - else - local.get $8 - local.get $7 - local.get $6 - call $~lib/util/sort/weakHeapSort - end - local.get $0 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 145 ;) (type $FUNCSIG$idd) (param $0 f64) (param $1 f64) (result i32) - (local $2 i64) - (local $3 i64) - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $1 - i64.reinterpret_f64 - local.set $3 - local.get $2 - local.get $2 - i64.const 63 - i64.shr_s - i64.const 1 - i64.shr_u - i64.xor - local.set $2 - local.get $3 - local.get $3 - i64.const 63 - i64.shr_s - i64.const 1 - i64.shr_u - i64.xor - local.set $3 - local.get $2 - local.get $3 - i64.gt_s - local.get $2 - local.get $3 - i64.lt_s - i32.sub - ) - (func $~lib/array/Array#sort|trampoline (; 146 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - block $~lib/util/sort/COMPARATOR|inlined.0 (result i32) - i32.const 45 - br $~lib/util/sort/COMPARATOR|inlined.0 - end - local.set $1 - end - local.get $0 - local.get $1 - call $~lib/array/Array#sort - ) - (func $~lib/array/Array#get:length (; 147 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array#__unchecked_get (; 148 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - f64.load - ) - (func $~lib/array/Array#__get (; 149 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) - (local $2 f64) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 280 - i32.const 488 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $~lib/number/isNaN (; 150 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.ne - ) - (func $std/array/isArraysEqual (; 151 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.eqz - if - local.get $0 - call $~lib/array/Array#get:length - local.set $2 - local.get $2 - local.get $1 - call $~lib/array/Array#get:length - i32.ne - if - i32.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - end - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $2 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - local.get $0 - local.get $3 - call $~lib/array/Array#__get - call $~lib/number/isNaN - local.get $1 - local.get $3 - call $~lib/array/Array#__get - call $~lib/number/isNaN - i32.eq - if - br $continue|0 - end - local.get $0 - local.get $3 - call $~lib/array/Array#__get - local.get $1 - local.get $3 - call $~lib/array/Array#__get - f64.ne - if - i32.const 0 - local.set $4 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - end - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/util/sort/insertionSort (; 152 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - block $break|1 - loop $continue|1 - local.get $5 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $6 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $6 - local.get $2 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $5 - local.tee $7 - i32.const 1 - i32.sub - local.set $5 - local.get $7 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store - else - br $break|1 - end - br $continue|1 - end - unreachable - end - local.get $0 - local.get $5 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|0 - end - unreachable - end - ) - (func $~lib/util/sort/weakHeapSort (; 153 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $1 - i32.const 31 - i32.add - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - local.set $3 - local.get $3 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $4 - local.get $4 - i32.const 0 - local.get $3 - call $~lib/memory/memory.fill - block $break|0 - local.get $1 - i32.const 1 - i32.sub - local.set $5 - loop $loop|0 - local.get $5 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|0 - local.get $5 - local.set $6 - block $break|1 - loop $continue|1 - local.get $6 - i32.const 1 - i32.and - local.get $4 - local.get $6 - i32.const 6 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - local.get $6 - i32.const 1 - i32.shr_s - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.eq - i32.eqz - br_if $break|1 - local.get $6 - i32.const 1 - i32.shr_s - local.set $6 - br $continue|1 - end - unreachable - end - local.get $6 - i32.const 1 - i32.shr_s - local.set $7 - local.get $0 - local.get $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $8 - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $9 - i32.const 2 - global.set $~lib/argc - local.get $8 - local.get $9 - local.get $2 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $4 - local.get $5 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - local.get $4 - local.get $5 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - i32.const 1 - local.get $5 - i32.const 31 - i32.and - i32.shl - i32.xor - i32.store - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - local.get $8 - i32.store - local.get $0 - local.get $7 - i32.const 2 - i32.shl - i32.add - local.get $9 - i32.store - end - local.get $5 - i32.const 1 - i32.sub - local.set $5 - br $loop|0 - end - unreachable - end - block $break|2 - local.get $1 - i32.const 1 - i32.sub - local.set $9 - loop $loop|2 - local.get $9 - i32.const 2 - i32.ge_s - i32.eqz - br_if $break|2 - local.get $0 - i32.load - local.set $8 - local.get $0 - local.get $0 - local.get $9 - i32.const 2 - i32.shl - i32.add - i32.load - i32.store - local.get $0 - local.get $9 - i32.const 2 - i32.shl - i32.add - local.get $8 - i32.store - i32.const 1 - local.set $7 - block $break|3 - loop $continue|3 - local.get $7 - i32.const 1 - i32.shl - local.get $4 - local.get $7 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - local.get $7 - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.add - local.tee $6 - local.get $9 - i32.lt_s - i32.eqz - br_if $break|3 - local.get $6 - local.set $7 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $7 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|4 - local.get $0 - i32.load - local.set $8 - local.get $0 - local.get $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - i32.const 2 - global.set $~lib/argc - local.get $8 - local.get $5 - local.get $2 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $4 - local.get $7 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - local.get $4 - local.get $7 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - i32.const 1 - local.get $7 - i32.const 31 - i32.and - i32.shl - i32.xor - i32.store - local.get $0 - local.get $7 - i32.const 2 - i32.shl - i32.add - local.get $8 - i32.store - local.get $0 - local.get $5 - i32.store - end - local.get $7 - i32.const 1 - i32.shr_s - local.set $7 - br $continue|4 - end - unreachable - end - local.get $9 - i32.const 1 - i32.sub - local.set $9 - br $loop|2 - end - unreachable - end - local.get $4 - call $~lib/rt/tlsf/__free - local.get $0 - i32.load offset=4 - local.set $10 - local.get $0 - local.get $0 - i32.load - i32.store offset=4 - local.get $0 - local.get $10 - i32.store - ) - (func $~lib/array/Array#sort (; 154 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 1 - i32.le_s - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i32.load offset=4 - local.set $3 - local.get $2 - i32.const 2 - i32.eq - if - local.get $3 - i32.load offset=4 - local.set $4 - local.get $3 - i32.load - local.set $5 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $5 - local.get $1 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $3 - local.get $5 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store - end - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $3 - local.set $6 - local.get $2 - local.set $5 - local.get $1 - local.set $4 - local.get $5 - i32.const 256 - i32.lt_s - if - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/sort/insertionSort - else - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/sort/weakHeapSort - end - local.get $0 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 155 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - local.get $1 - i32.sub - ) - (func $~lib/array/Array#sort|trampoline (; 156 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - block $~lib/util/sort/COMPARATOR|inlined.0 (result i32) - i32.const 46 - br $~lib/util/sort/COMPARATOR|inlined.0 - end - local.set $1 - end - local.get $0 - local.get $1 - call $~lib/array/Array#sort - ) - (func $~lib/util/sort/insertionSort (; 157 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - block $break|1 - loop $continue|1 - local.get $5 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $6 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $6 - local.get $2 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $5 - local.tee $7 - i32.const 1 - i32.sub - local.set $5 - local.get $7 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store - else - br $break|1 - end - br $continue|1 - end - unreachable - end - local.get $0 - local.get $5 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|0 - end - unreachable - end - ) - (func $~lib/util/sort/weakHeapSort (; 158 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $1 - i32.const 31 - i32.add - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - local.set $3 - local.get $3 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $4 - local.get $4 - i32.const 0 - local.get $3 - call $~lib/memory/memory.fill - block $break|0 - local.get $1 - i32.const 1 - i32.sub - local.set $5 - loop $loop|0 - local.get $5 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|0 - local.get $5 - local.set $6 - block $break|1 - loop $continue|1 - local.get $6 - i32.const 1 - i32.and - local.get $4 - local.get $6 - i32.const 6 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - local.get $6 - i32.const 1 - i32.shr_s - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.eq - i32.eqz - br_if $break|1 - local.get $6 - i32.const 1 - i32.shr_s - local.set $6 - br $continue|1 - end - unreachable - end - local.get $6 - i32.const 1 - i32.shr_s - local.set $7 - local.get $0 - local.get $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $8 - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $9 - i32.const 2 - global.set $~lib/argc - local.get $8 - local.get $9 - local.get $2 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $4 - local.get $5 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - local.get $4 - local.get $5 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - i32.const 1 - local.get $5 - i32.const 31 - i32.and - i32.shl - i32.xor - i32.store - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - local.get $8 - i32.store - local.get $0 - local.get $7 - i32.const 2 - i32.shl - i32.add - local.get $9 - i32.store - end - local.get $5 - i32.const 1 - i32.sub - local.set $5 - br $loop|0 - end - unreachable - end - block $break|2 - local.get $1 - i32.const 1 - i32.sub - local.set $9 - loop $loop|2 - local.get $9 - i32.const 2 - i32.ge_s - i32.eqz - br_if $break|2 - local.get $0 - i32.load - local.set $8 - local.get $0 - local.get $0 - local.get $9 - i32.const 2 - i32.shl - i32.add - i32.load - i32.store - local.get $0 - local.get $9 - i32.const 2 - i32.shl - i32.add - local.get $8 - i32.store - i32.const 1 - local.set $7 - block $break|3 - loop $continue|3 - local.get $7 - i32.const 1 - i32.shl - local.get $4 - local.get $7 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - local.get $7 - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.add - local.tee $6 - local.get $9 - i32.lt_s - i32.eqz - br_if $break|3 - local.get $6 - local.set $7 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $7 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|4 - local.get $0 - i32.load - local.set $8 - local.get $0 - local.get $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - i32.const 2 - global.set $~lib/argc - local.get $8 - local.get $5 - local.get $2 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $4 - local.get $7 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - local.get $4 - local.get $7 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - i32.const 1 - local.get $7 - i32.const 31 - i32.and - i32.shl - i32.xor - i32.store - local.get $0 - local.get $7 - i32.const 2 - i32.shl - i32.add - local.get $8 - i32.store - local.get $0 - local.get $5 - i32.store - end - local.get $7 - i32.const 1 - i32.shr_s - local.set $7 - br $continue|4 - end - unreachable - end - local.get $9 - i32.const 1 - i32.sub - local.set $9 - br $loop|2 - end - unreachable - end - local.get $4 - call $~lib/rt/tlsf/__free - local.get $0 - i32.load offset=4 - local.set $10 - local.get $0 - local.get $0 - i32.load - i32.store offset=4 - local.get $0 - local.get $10 - i32.store - ) - (func $~lib/array/Array#sort (; 159 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 1 - i32.le_s - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i32.load offset=4 - local.set $3 - local.get $2 - i32.const 2 - i32.eq - if - local.get $3 - i32.load offset=4 - local.set $4 - local.get $3 - i32.load - local.set $5 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $5 - local.get $1 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $3 - local.get $5 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store - end - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $3 - local.set $6 - local.get $2 - local.set $5 - local.get $1 - local.set $4 - local.get $5 - i32.const 256 - i32.lt_s - if - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/sort/insertionSort - else - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/sort/weakHeapSort - end - local.get $0 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 160 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - local.get $1 - i32.gt_u - local.get $0 - local.get $1 - i32.lt_u - i32.sub - ) - (func $~lib/array/Array#sort|trampoline (; 161 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - block $~lib/util/sort/COMPARATOR|inlined.0 (result i32) - i32.const 47 - br $~lib/util/sort/COMPARATOR|inlined.0 - end - local.set $1 - end - local.get $0 - local.get $1 - call $~lib/array/Array#sort - ) - (func $std/array/createReverseOrderedArray (; 162 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - local.get $0 - call $~lib/array/Array#constructor - local.set $1 - block $break|0 - i32.const 0 - local.set $2 - loop $loop|0 - local.get $2 - local.get $0 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $1 - local.get $2 - local.get $0 - i32.const 1 - i32.sub - local.get $2 - i32.sub - call $~lib/array/Array#__set - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $~lib/math/NativeMath.random (; 163 ;) (type $FUNCSIG$d) (result f64) - (local $0 i64) - (local $1 i64) - (local $2 i64) - global.get $~lib/math/random_seeded - i32.eqz - if - i32.const 3936 - i32.const 3160 - i32.const 1376 - i32.const 24 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/math/random_state0_64 - local.set $0 - global.get $~lib/math/random_state1_64 - local.set $1 - local.get $1 - global.set $~lib/math/random_state0_64 - local.get $0 - local.get $0 - i64.const 23 - i64.shl - i64.xor - local.set $0 - local.get $0 - local.get $0 - i64.const 17 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - local.get $1 - i64.xor - local.set $0 - local.get $0 - local.get $1 - i64.const 26 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - global.set $~lib/math/random_state1_64 - local.get $1 - i64.const 12 - i64.shr_u - i64.const 4607182418800017408 - i64.or - local.set $2 - local.get $2 - f64.reinterpret_i64 - f64.const 1 - f64.sub - ) - (func $std/array/createRandomOrderedArray (; 164 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - local.get $0 - call $~lib/array/Array#constructor - local.set $1 - block $break|0 - i32.const 0 - local.set $2 - loop $loop|0 - local.get $2 - local.get $0 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $1 - local.get $2 - call $~lib/math/NativeMath.random - local.get $0 - f64.convert_i32_s - f64.mul - i32.trunc_f64_s - call $~lib/array/Array#__set - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $~lib/util/sort/COMPARATOR~anonymous|1 (; 165 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - local.get $1 - i32.sub - ) - (func $std/array/isSorted (; 166 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - block $break|0 - i32.const 1 - local.set $2 - local.get $0 - call $~lib/array/Array#get:length - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 2 - global.set $~lib/argc - local.get $0 - local.get $2 - i32.const 1 - i32.sub - call $~lib/array/Array#__get - local.get $0 - local.get $2 - call $~lib/array/Array#__get - local.get $1 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.gt_s - if - i32.const 0 - local.set $4 - local.get $0 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/array/assertSorted (; 167 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - call $~lib/array/Array#sort - local.tee $2 - local.get $1 - call $std/array/isSorted - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 831 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - ) - (func $std/array/assertSortedDefault (; 168 ;) (type $FUNCSIG$vi) (param $0 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - block $~lib/util/sort/COMPARATOR|inlined.1 (result i32) - i32.const 48 - br $~lib/util/sort/COMPARATOR|inlined.1 - end - call $std/array/assertSorted - local.get $0 - call $~lib/rt/pure/__release - ) - (func $start:std/array~anonymous|43 (; 169 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - local.get $1 - i32.sub - ) - (func $start:std/array~anonymous|44 (; 170 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $1 - local.get $0 - i32.sub - ) - (func $start:std/array~anonymous|45 (; 171 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - local.get $1 - i32.sub - ) - (func $start:std/array~anonymous|46 (; 172 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $1 - local.get $0 - i32.sub - ) - (func $~lib/array/Array<~lib/array/Array>#constructor (; 173 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 16 - i32.const 10 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 2 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - i32.const 0 - i32.store offset=12 - local.get $0 - local.get $1 - i32.store offset=12 - local.get $0 - ) - (func $~lib/array/Array<~lib/array/Array>#__unchecked_set (; 174 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.set $3 - local.get $3 - i32.load - local.set $4 - local.get $2 - local.get $4 - i32.ne - if - local.get $3 - local.get $2 - call $~lib/rt/pure/__retain - i32.store - local.get $4 - call $~lib/rt/pure/__release - end - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/array/Array<~lib/array/Array>#__set (; 175 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.const 2 - call $~lib/array/ensureSize - local.get $0 - local.get $1 - local.get $2 - call $~lib/array/Array<~lib/array/Array>#__unchecked_set - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_s - if - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=12 - end - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/array/createReverseOrderedNestedArray (; 176 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - local.get $0 - call $~lib/array/Array<~lib/array/Array>#constructor - local.set $1 - block $break|0 - i32.const 0 - local.set $2 - loop $loop|0 - local.get $2 - local.get $0 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 0 - i32.const 1 - call $~lib/array/Array#constructor - local.set $3 - local.get $3 - i32.const 0 - local.get $0 - i32.const 1 - i32.sub - local.get $2 - i32.sub - call $~lib/array/Array#__set - local.get $1 - local.get $2 - local.get $3 - call $~lib/array/Array<~lib/array/Array>#__set - local.get $2 - i32.const 1 - i32.add - local.set $2 - local.get $3 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $start:std/array~anonymous|47 (; 177 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 0 - call $~lib/array/Array#__get - local.get $1 - i32.const 0 - call $~lib/array/Array#__get - i32.sub - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/util/sort/insertionSort<~lib/array/Array> (; 178 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - block $break|1 - loop $continue|1 - local.get $5 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - local.set $6 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $6 - local.get $2 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $5 - local.tee $7 - i32.const 1 - i32.sub - local.set $5 - local.get $7 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store - else - local.get $6 - call $~lib/rt/pure/__release - br $break|1 - end - local.get $6 - call $~lib/rt/pure/__release - br $continue|1 - end - unreachable - end - local.get $0 - local.get $5 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - ) - (func $~lib/array/Array<~lib/array/Array>#sort (; 179 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 1 - i32.le_s - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i32.load offset=4 - local.set $3 - local.get $2 - i32.const 2 - i32.eq - if - local.get $3 - i32.load offset=4 - call $~lib/rt/pure/__retain - local.set $4 - local.get $3 - i32.load - call $~lib/rt/pure/__retain - local.set $5 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $5 - local.get $1 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $3 - local.get $5 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store - end - local.get $0 - call $~lib/rt/pure/__retain - local.set $6 - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - return - end - local.get $3 - local.set $5 - local.get $2 - local.set $4 - local.get $1 - local.set $6 - local.get $5 - local.get $4 - local.get $6 - call $~lib/util/sort/insertionSort<~lib/array/Array> - local.get $0 - call $~lib/rt/pure/__retain - ) - (func $~lib/array/Array<~lib/array/Array>#get:length (; 180 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array<~lib/array/Array>#__unchecked_get (; 181 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/array/Array<~lib/array/Array>#__get (; 182 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 280 - i32.const 488 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/array/Array>#__unchecked_get - local.set $2 - local.get $2 - i32.eqz - if - local.get $2 - call $~lib/rt/pure/__release - i32.const 4040 - i32.const 488 - i32.const 100 - i32.const 39 - call $~lib/builtins/abort - unreachable - end - local.get $2 - ) - (func $std/array/isSorted<~lib/array/Array> (; 183 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - block $break|0 - i32.const 1 - local.set $2 - local.get $0 - call $~lib/array/Array<~lib/array/Array>#get:length - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 2 - global.set $~lib/argc - local.get $0 - local.get $2 - i32.const 1 - i32.sub - call $~lib/array/Array<~lib/array/Array>#__get - local.tee $4 - local.get $0 - local.get $2 - call $~lib/array/Array<~lib/array/Array>#__get - local.tee $5 - local.get $1 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.gt_s - if - i32.const 0 - local.set $6 - local.get $0 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - return - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $5 - local.get $0 - call $~lib/rt/pure/__release - local.get $5 - ) - (func $std/array/assertSorted<~lib/array/Array> (; 184 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/array/Array>#sort - local.tee $2 - local.get $1 - call $std/array/isSorted<~lib/array/Array> - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 831 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - ) - (func $~lib/array/Array>#constructor (; 185 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 16 - i32.const 12 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 2 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - i32.const 0 - i32.store offset=12 - local.get $0 - local.get $1 - i32.store offset=12 - local.get $0 - ) - (func $std/array/Proxy#constructor (; 186 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.eqz - if - i32.const 4 - i32.const 11 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $0 - end - local.get $0 - local.get $1 - i32.store - local.get $0 - ) - (func $~lib/array/Array>#__unchecked_set (; 187 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.set $3 - local.get $3 - i32.load - local.set $4 - local.get $2 - local.get $4 - i32.ne - if - local.get $3 - local.get $2 - call $~lib/rt/pure/__retain - i32.store - local.get $4 - call $~lib/rt/pure/__release - end - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/array/Array>#__set (; 188 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.const 2 - call $~lib/array/ensureSize - local.get $0 - local.get $1 - local.get $2 - call $~lib/array/Array>#__unchecked_set - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_s - if - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=12 - end - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/array/createReverseOrderedElementsArray (; 189 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - local.get $0 - call $~lib/array/Array>#constructor - local.set $1 - block $break|0 - i32.const 0 - local.set $2 - loop $loop|0 - local.get $2 - local.get $0 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $1 - local.get $2 - i32.const 0 - local.get $0 - i32.const 1 - i32.sub - local.get $2 - i32.sub - call $std/array/Proxy#constructor - local.tee $3 - call $~lib/array/Array>#__set - local.get $2 - i32.const 1 - i32.add - local.set $2 - local.get $3 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $start:std/array~anonymous|48 (; 190 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load - local.get $1 - i32.load - i32.sub - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/util/sort/insertionSort> (; 191 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - block $break|1 - loop $continue|1 - local.get $5 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - local.set $6 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $6 - local.get $2 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $5 - local.tee $7 - i32.const 1 - i32.sub - local.set $5 - local.get $7 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store - else - local.get $6 - call $~lib/rt/pure/__release - br $break|1 - end - local.get $6 - call $~lib/rt/pure/__release - br $continue|1 - end - unreachable - end - local.get $0 - local.get $5 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - ) - (func $~lib/array/Array>#sort (; 192 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 1 - i32.le_s - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i32.load offset=4 - local.set $3 - local.get $2 - i32.const 2 - i32.eq - if - local.get $3 - i32.load offset=4 - call $~lib/rt/pure/__retain - local.set $4 - local.get $3 - i32.load - call $~lib/rt/pure/__retain - local.set $5 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $5 - local.get $1 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $3 - local.get $5 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store - end - local.get $0 - call $~lib/rt/pure/__retain - local.set $6 - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - return - end - local.get $3 - local.set $5 - local.get $2 - local.set $4 - local.get $1 - local.set $6 - local.get $5 - local.get $4 - local.get $6 - call $~lib/util/sort/insertionSort> - local.get $0 - call $~lib/rt/pure/__retain - ) - (func $~lib/array/Array>#get:length (; 193 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array>#__unchecked_get (; 194 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/array/Array>#__get (; 195 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 280 - i32.const 488 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array>#__unchecked_get - local.set $2 - local.get $2 - i32.eqz - if - local.get $2 - call $~lib/rt/pure/__release - i32.const 4040 - i32.const 488 - i32.const 100 - i32.const 39 - call $~lib/builtins/abort - unreachable - end - local.get $2 - ) - (func $std/array/isSorted> (; 196 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - block $break|0 - i32.const 1 - local.set $2 - local.get $0 - call $~lib/array/Array>#get:length - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 2 - global.set $~lib/argc - local.get $0 - local.get $2 - i32.const 1 - i32.sub - call $~lib/array/Array>#__get - local.tee $4 - local.get $0 - local.get $2 - call $~lib/array/Array>#__get - local.tee $5 - local.get $1 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.gt_s - if - i32.const 0 - local.set $6 - local.get $0 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - return - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $5 - local.get $0 - call $~lib/rt/pure/__release - local.get $5 - ) - (func $std/array/assertSorted> (; 197 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - call $~lib/array/Array>#sort - local.tee $2 - local.get $1 - call $std/array/isSorted> - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 831 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - ) - (func $~lib/util/sort/insertionSort<~lib/string/String | null> (; 198 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - block $break|1 - loop $continue|1 - local.get $5 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - local.set $6 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $6 - local.get $2 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $5 - local.tee $7 - i32.const 1 - i32.sub - local.set $5 - local.get $7 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store - else - local.get $6 - call $~lib/rt/pure/__release - br $break|1 - end - local.get $6 - call $~lib/rt/pure/__release - br $continue|1 - end - unreachable - end - local.get $0 - local.get $5 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - ) - (func $~lib/array/Array<~lib/string/String | null>#sort (; 199 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 1 - i32.le_s - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i32.load offset=4 - local.set $3 - local.get $2 - i32.const 2 - i32.eq - if - local.get $3 - i32.load offset=4 - call $~lib/rt/pure/__retain - local.set $4 - local.get $3 - i32.load - call $~lib/rt/pure/__retain - local.set $5 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $5 - local.get $1 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $3 - local.get $5 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store - end - local.get $0 - call $~lib/rt/pure/__retain - local.set $6 - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - return - end - local.get $3 - local.set $5 - local.get $2 - local.set $4 - local.get $1 - local.set $6 - local.get $5 - local.get $4 - local.get $6 - call $~lib/util/sort/insertionSort<~lib/string/String | null> - local.get $0 - call $~lib/rt/pure/__retain - ) - (func $~lib/array/Array<~lib/string/String | null>#get:length (; 200 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array<~lib/string/String | null>#__unchecked_get (; 201 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/array/Array<~lib/string/String | null>#__get (; 202 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 280 - i32.const 488 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/string/String | null>#__unchecked_get - local.set $2 - local.get $2 - ) - (func $std/array/isSorted<~lib/string/String | null> (; 203 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - block $break|0 - i32.const 1 - local.set $2 - local.get $0 - call $~lib/array/Array<~lib/string/String | null>#get:length - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 2 - global.set $~lib/argc - local.get $0 - local.get $2 - i32.const 1 - i32.sub - call $~lib/array/Array<~lib/string/String | null>#__get - local.tee $4 - local.get $0 - local.get $2 - call $~lib/array/Array<~lib/string/String | null>#__get - local.tee $5 - local.get $1 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.gt_s - if - i32.const 0 - local.set $6 - local.get $0 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - return - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $5 - local.get $0 - call $~lib/rt/pure/__release - local.get $5 - ) - (func $std/array/assertSorted<~lib/string/String | null> (; 204 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/string/String | null>#sort - local.tee $2 - local.get $1 - call $std/array/isSorted<~lib/string/String | null> - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 831 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - ) - (func $~lib/string/String#get:length (; 205 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 16 - i32.sub - i32.load offset=12 - i32.const 1 - i32.shr_u - ) - (func $~lib/util/string/compareImpl (; 206 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/rt/pure/__retain - drop - i32.const 0 - local.set $5 - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $6 - local.get $2 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $7 - block $break|0 - loop $continue|0 - local.get $4 - if (result i32) - local.get $6 - i32.load16_u - local.get $7 - i32.load16_u - i32.sub - local.tee $5 - i32.eqz - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - local.get $6 - i32.const 2 - i32.add - local.set $6 - local.get $7 - i32.const 2 - i32.add - local.set $7 - br $continue|0 - end - unreachable - end - local.get $5 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/util/sort/COMPARATOR<~lib/string/String | null>~anonymous|0 (; 207 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.eq - if (result i32) - i32.const 1 - else - local.get $0 - i32.const 0 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 0 - i32.eq - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - call $~lib/string/String#get:length - local.set $4 - local.get $3 - i32.eqz - if (result i32) - local.get $4 - i32.eqz - else - i32.const 0 - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $3 - i32.eqz - if - i32.const -1 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $4 - i32.eqz - if - i32.const 1 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - local.get $1 - i32.const 0 - local.get $3 - local.tee $2 - local.get $4 - local.tee $5 - local.get $2 - local.get $5 - i32.lt_s - select - call $~lib/util/string/compareImpl - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $std/array/assertSorted<~lib/string/String | null>|trampoline (; 208 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - block $~lib/util/sort/COMPARATOR<~lib/string/String | null>|inlined.0 (result i32) - i32.const 55 - br $~lib/util/sort/COMPARATOR<~lib/string/String | null>|inlined.0 - end - local.set $1 - end - local.get $0 - local.get $1 - call $std/array/assertSorted<~lib/string/String | null> - ) - (func $~lib/string/String.__eq (; 209 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 0 - i32.eq - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $3 - local.get $1 - call $~lib/string/String#get:length - i32.ne - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - local.get $1 - i32.const 0 - local.get $3 - call $~lib/util/string/compareImpl - i32.eqz - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/string/String.__ne (; 210 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - call $~lib/string/String.__eq - i32.eqz - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $std/array/isArraysEqual<~lib/string/String | null> (; 211 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.eqz - if - local.get $0 - call $~lib/array/Array<~lib/string/String | null>#get:length - local.set $2 - local.get $2 - local.get $1 - call $~lib/array/Array<~lib/string/String | null>#get:length - i32.ne - if - i32.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - end - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $2 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - call $~lib/array/Array<~lib/string/String | null>#__get - local.tee $4 - local.get $1 - local.get $3 - call $~lib/array/Array<~lib/string/String | null>#__get - local.tee $5 - call $~lib/string/String.__ne - if - i32.const 0 - local.set $6 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - return - end - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $5 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $5 - ) - (func $~lib/array/Array<~lib/string/String>#constructor (; 212 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 16 - i32.const 14 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 2 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - i32.const 0 - i32.store offset=12 - local.get $0 - local.get $1 - i32.store offset=12 - local.get $0 - ) - (func $~lib/string/String#charAt (; 213 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - call $~lib/string/String#get:length - i32.ge_u - if - i32.const 4248 - call $~lib/rt/pure/__retain - return - end - i32.const 2 - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $2 - local.get $2 - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.load16_u - i32.store16 - local.get $2 - call $~lib/rt/pure/__retain - ) - (func $~lib/string/String#concat (; 214 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 0 - i32.eq - if - i32.const 4360 - local.tee $2 - local.get $1 - local.tee $3 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/rt/pure/__release - end - local.get $2 - local.set $1 - end - local.get $0 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - local.set $4 - local.get $1 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - local.set $5 - local.get $4 - local.get $5 - i32.add - local.set $6 - local.get $6 - i32.const 0 - i32.eq - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $6 - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.get $0 - local.get $4 - call $~lib/memory/memory.copy - local.get $7 - local.get $4 - i32.add - local.get $1 - local.get $5 - call $~lib/memory/memory.copy - local.get $7 - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/string/String.__concat (; 215 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 4360 - local.get $0 - i32.const 0 - i32.ne - select - local.get $1 - call $~lib/string/String#concat - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $std/array/createRandomString (; 216 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 f64) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $1 - block $break|0 - i32.const 0 - local.set $2 - loop $loop|0 - local.get $2 - local.get $0 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $1 - global.get $std/array/charset - call $~lib/math/NativeMath.random - global.get $std/array/charset - call $~lib/string/String#get:length - f64.convert_i32_s - f64.mul - local.set $3 - local.get $3 - f64.floor - i32.trunc_f64_s - call $~lib/string/String#charAt - local.tee $4 - call $~lib/string/String.__concat - local.tee $5 - local.tee $6 - local.get $1 - local.tee $7 - i32.ne - if - local.get $6 - call $~lib/rt/pure/__retain - drop - local.get $7 - call $~lib/rt/pure/__release - end - local.get $6 - local.set $1 - local.get $2 - i32.const 1 - i32.add - local.set $2 - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $~lib/array/Array<~lib/string/String>#__unchecked_set (; 217 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.set $3 - local.get $3 - i32.load - local.set $4 - local.get $2 - local.get $4 - i32.ne - if - local.get $3 - local.get $2 - call $~lib/rt/pure/__retain - i32.store - local.get $4 - call $~lib/rt/pure/__release - end - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/array/Array<~lib/string/String>#__set (; 218 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.const 2 - call $~lib/array/ensureSize - local.get $0 - local.get $1 - local.get $2 - call $~lib/array/Array<~lib/string/String>#__unchecked_set - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_s - if - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=12 - end - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/array/createRandomStringArray (; 219 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - local.get $0 - call $~lib/array/Array<~lib/string/String>#constructor - local.set $1 - block $break|0 - i32.const 0 - local.set $2 - loop $loop|0 - local.get $2 - local.get $0 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $1 - local.get $2 - call $~lib/math/NativeMath.random - f64.const 32 - f64.mul - i32.trunc_f64_s - call $std/array/createRandomString - local.tee $3 - call $~lib/array/Array<~lib/string/String>#__set - local.get $2 - i32.const 1 - i32.add - local.set $2 - local.get $3 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $~lib/util/sort/insertionSort<~lib/string/String> (; 220 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - block $break|1 - loop $continue|1 - local.get $5 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - local.set $6 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $6 - local.get $2 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $5 - local.tee $7 - i32.const 1 - i32.sub - local.set $5 - local.get $7 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store - else - local.get $6 - call $~lib/rt/pure/__release - br $break|1 - end - local.get $6 - call $~lib/rt/pure/__release - br $continue|1 - end - unreachable - end - local.get $0 - local.get $5 - i32.const 1 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - ) - (func $~lib/array/Array<~lib/string/String>#sort (; 221 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 1 - i32.le_s - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i32.load offset=4 - local.set $3 - local.get $2 - i32.const 2 - i32.eq - if - local.get $3 - i32.load offset=4 - call $~lib/rt/pure/__retain - local.set $4 - local.get $3 - i32.load - call $~lib/rt/pure/__retain - local.set $5 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $5 - local.get $1 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.lt_s - if - local.get $3 - local.get $5 - i32.store offset=4 - local.get $3 - local.get $4 - i32.store - end - local.get $0 - call $~lib/rt/pure/__retain - local.set $6 - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - return - end - local.get $3 - local.set $5 - local.get $2 - local.set $4 - local.get $1 - local.set $6 - local.get $5 - local.get $4 - local.get $6 - call $~lib/util/sort/insertionSort<~lib/string/String> - local.get $0 - call $~lib/rt/pure/__retain - ) - (func $~lib/array/Array<~lib/string/String>#get:length (; 222 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 223 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/array/Array<~lib/string/String>#__get (; 224 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 280 - i32.const 488 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/string/String>#__unchecked_get - local.set $2 - local.get $2 - i32.eqz - if - local.get $2 - call $~lib/rt/pure/__release - i32.const 4040 - i32.const 488 - i32.const 100 - i32.const 39 - call $~lib/builtins/abort - unreachable - end - local.get $2 - ) - (func $std/array/isSorted<~lib/string/String> (; 225 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - block $break|0 - i32.const 1 - local.set $2 - local.get $0 - call $~lib/array/Array<~lib/string/String>#get:length - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 2 - global.set $~lib/argc - local.get $0 - local.get $2 - i32.const 1 - i32.sub - call $~lib/array/Array<~lib/string/String>#__get - local.tee $4 - local.get $0 - local.get $2 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $5 - local.get $1 - call_indirect (type $FUNCSIG$iii) - i32.const 0 - i32.gt_s - if - i32.const 0 - local.set $6 - local.get $0 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - return - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $5 - local.get $0 - call $~lib/rt/pure/__release - local.get $5 - ) - (func $std/array/assertSorted<~lib/string/String> (; 226 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/string/String>#sort - local.tee $2 - local.get $1 - call $std/array/isSorted<~lib/string/String> - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 831 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - ) - (func $~lib/util/sort/COMPARATOR<~lib/string/String>~anonymous|0 (; 227 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.eq - if (result i32) - i32.const 1 - else - local.get $0 - i32.const 0 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 0 - i32.eq - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - call $~lib/string/String#get:length - local.set $4 - local.get $3 - i32.eqz - if (result i32) - local.get $4 - i32.eqz - else - i32.const 0 - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $3 - i32.eqz - if - i32.const -1 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $4 - i32.eqz - if - i32.const 1 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - local.get $1 - i32.const 0 - local.get $3 - local.tee $2 - local.get $4 - local.tee $5 - local.get $2 - local.get $5 - i32.lt_s - select - call $~lib/util/string/compareImpl - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $std/array/assertSorted<~lib/string/String>|trampoline (; 228 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - block $~lib/util/sort/COMPARATOR<~lib/string/String>|inlined.0 (result i32) - i32.const 56 - br $~lib/util/sort/COMPARATOR<~lib/string/String>|inlined.0 - end - local.set $1 - end - local.get $0 - local.get $1 - call $std/array/assertSorted<~lib/string/String> - ) - (func $~lib/string/String#substring (; 229 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $6 - local.get $2 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $7 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - i32.const 1 - i32.shl - local.set $8 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - i32.const 1 - i32.shl - local.set $9 - local.get $9 - local.get $8 - i32.sub - local.set $3 - local.get $3 - i32.eqz - if - i32.const 4248 - call $~lib/rt/pure/__retain - return - end - local.get $8 - i32.eqz - if (result i32) - local.get $9 - local.get $0 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - i32.eq - else - i32.const 0 - end - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $3 - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $10 - local.get $10 - local.get $0 - local.get $8 - i32.add - local.get $3 - call $~lib/memory/memory.copy - local.get $10 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/string/joinBooleanArray (; 230 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - i32.const 4408 - i32.const 4432 - local.get $0 - i32.load8_u - select - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $5 - i32.const 5 - local.set $6 - local.get $6 - local.get $5 - i32.add - local.get $3 - i32.mul - local.get $6 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.add - i32.load8_u - local.set $10 - i32.const 4 - local.get $10 - i32.const 0 - i32.ne - i32.eqz - i32.add - local.set $6 - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - i32.const 4408 - i32.const 4432 - local.get $10 - select - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - local.get $5 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $5 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $5 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.add - i32.load8_u - local.set $10 - i32.const 4 - local.get $10 - i32.const 0 - i32.ne - i32.eqz - i32.add - local.set $6 - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - i32.const 4408 - i32.const 4432 - local.get $10 - select - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#join (; 231 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinBooleanArray - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/util/number/decimalCount32 (; 232 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - i32.const 100000 - i32.lt_u - if - local.get $0 - i32.const 100 - i32.lt_u - if - i32.const 1 - i32.const 2 - local.get $0 - i32.const 10 - i32.lt_u - select - return - else - i32.const 4 - i32.const 5 - local.get $0 - i32.const 10000 - i32.lt_u - select - local.set $1 - i32.const 3 - local.get $1 - local.get $0 - i32.const 1000 - i32.lt_u - select - return - end - unreachable - else - local.get $0 - i32.const 10000000 - i32.lt_u - if - i32.const 6 - i32.const 7 - local.get $0 - i32.const 1000000 - i32.lt_u - select - return - else - i32.const 9 - i32.const 10 - local.get $0 - i32.const 1000000000 - i32.lt_u - select - local.set $1 - i32.const 8 - local.get $1 - local.get $0 - i32.const 100000000 - i32.lt_u - select - return - end - unreachable - end - unreachable - ) - (func $~lib/util/number/utoa32_lut (; 233 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - i32.const 5000 - i32.load offset=4 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i32.const 10000 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $1 - i32.const 10000 - i32.div_u - local.set $4 - local.get $1 - i32.const 10000 - i32.rem_u - local.set $5 - local.get $4 - local.set $1 - local.get $5 - i32.const 100 - i32.div_u - local.set $6 - local.get $5 - i32.const 100 - i32.rem_u - local.set $7 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $8 - local.get $3 - local.get $7 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $9 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $8 - local.get $9 - i64.const 32 - i64.shl - i64.or - i64.store - br $continue|0 - end - unreachable - end - local.get $1 - i32.const 100 - i32.ge_u - if - local.get $1 - i32.const 100 - i32.div_u - local.set $7 - local.get $1 - i32.const 100 - i32.rem_u - local.set $6 - local.get $7 - local.set $1 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - end - local.get $1 - i32.const 10 - i32.ge_u - if - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - else - local.get $2 - i32.const 1 - i32.sub - local.set $2 - i32.const 48 - local.get $1 - i32.add - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store16 - end - ) - (func $~lib/util/number/itoa32 (; 234 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.eqz - if - i32.const 4560 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i32.const 0 - i32.lt_s - local.set $1 - local.get $1 - if - i32.const 0 - local.get $0 - i32.sub - local.set $0 - end - local.get $0 - call $~lib/util/number/decimalCount32 - local.get $1 - i32.add - local.set $2 - local.get $2 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $3 - local.get $3 - local.set $6 - local.get $0 - local.set $5 - local.get $2 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - local.get $1 - if - local.get $3 - i32.const 45 - i32.store16 - end - local.get $3 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/itoa (; 235 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa32 - return - ) - (func $~lib/util/number/itoa_stream (; 236 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i32.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i32.const 0 - i32.lt_s - local.set $4 - local.get $4 - if - i32.const 0 - local.get $2 - i32.sub - local.set $2 - end - local.get $2 - call $~lib/util/number/decimalCount32 - local.get $4 - i32.add - local.set $3 - local.get $0 - local.set $7 - local.get $2 - local.set $6 - local.get $3 - local.set $5 - local.get $7 - local.get $6 - local.get $5 - call $~lib/util/number/utoa32_lut - local.get $4 - if - local.get $0 - i32.const 45 - i32.store16 - end - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 237 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i32.load - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 11 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 11 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#join (; 238 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/util/number/utoa32 (; 239 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.eqz - if - i32.const 4560 - call $~lib/rt/pure/__retain - return - end - local.get $0 - call $~lib/util/number/decimalCount32 - local.set $1 - local.get $1 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $2 - local.get $2 - local.set $5 - local.get $0 - local.set $4 - local.get $1 - local.set $3 - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/number/utoa32_lut - local.get $2 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/itoa (; 240 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/utoa32 - return - ) - (func $~lib/util/number/itoa_stream (; 241 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i32.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - call $~lib/util/number/decimalCount32 - local.set $3 - local.get $0 - local.set $6 - local.get $2 - local.set $5 - local.get $3 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 242 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i32.load - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 10 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 10 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#join (; 243 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/number/isFinite (; 244 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.eq - ) - (func $~lib/array/Array#__unchecked_get (; 245 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - i64.load - ) - (func $~lib/array/Array#__unchecked_get (; 246 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.load16_s - ) - (func $~lib/util/number/genDigits (; 247 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i64) - (local $11 i32) - (local $12 i32) - (local $13 i64) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i32) - (local $25 i32) - (local $26 i32) - i32.const 0 - local.get $4 - i32.sub - local.set $7 - i64.const 1 - local.get $7 - i64.extend_i32_s - i64.shl - local.set $8 - local.get $8 - i64.const 1 - i64.sub - local.set $9 - local.get $3 - local.get $1 - i64.sub - local.set $10 - local.get $4 - local.set $11 - local.get $3 - local.get $7 - i64.extend_i32_s - i64.shr_u - i32.wrap_i64 - local.set $12 - local.get $3 - local.get $9 - i64.and - local.set $13 - local.get $12 - call $~lib/util/number/decimalCount32 - local.set $14 - local.get $6 - local.set $15 - i32.const 6464 - i32.load offset=4 - local.set $16 - block $break|0 - loop $continue|0 - local.get $14 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|0 - block $break|1 - block $case10|1 - block $case9|1 - block $case8|1 - block $case7|1 - block $case6|1 - block $case5|1 - block $case4|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $14 - local.set $18 - local.get $18 - i32.const 10 - i32.eq - br_if $case0|1 - local.get $18 - i32.const 9 - i32.eq - br_if $case1|1 - local.get $18 - i32.const 8 - i32.eq - br_if $case2|1 - local.get $18 - i32.const 7 - i32.eq - br_if $case3|1 - local.get $18 - i32.const 6 - i32.eq - br_if $case4|1 - local.get $18 - i32.const 5 - i32.eq - br_if $case5|1 - local.get $18 - i32.const 4 - i32.eq - br_if $case6|1 - local.get $18 - i32.const 3 - i32.eq - br_if $case7|1 - local.get $18 - i32.const 2 - i32.eq - br_if $case8|1 - local.get $18 - i32.const 1 - i32.eq - br_if $case9|1 - br $case10|1 - end - local.get $12 - i32.const 1000000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100 - i32.div_u - local.set $17 - local.get $12 - i32.const 100 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10 - i32.div_u - local.set $17 - local.get $12 - i32.const 10 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - local.set $17 - i32.const 0 - local.set $12 - br $break|1 - end - i32.const 0 - local.set $17 - br $break|1 - end - local.get $17 - local.get $15 - i32.or - if - local.get $0 - local.get $15 - local.tee $18 - i32.const 1 - i32.add - local.set $15 - local.get $18 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $17 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $12 - i64.extend_i32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.get $13 - i64.add - local.set $19 - local.get $19 - local.get $5 - i64.le_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $19 - local.set $22 - local.get $16 - local.get $14 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $25 - local.get $25 - i32.load16_u - local.set $26 - block $break|2 - loop $continue|2 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|2 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|2 - end - unreachable - end - local.get $25 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|0 - end - unreachable - end - loop $continue|3 - local.get $13 - i64.const 10 - i64.mul - local.set $13 - local.get $5 - i64.const 10 - i64.mul - local.set $5 - local.get $13 - local.get $7 - i64.extend_i32_s - i64.shr_u - local.set $19 - local.get $19 - local.get $15 - i64.extend_i32_s - i64.or - i64.const 0 - i64.ne - if - local.get $0 - local.get $15 - local.tee $17 - i32.const 1 - i32.add - local.set $15 - local.get $17 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $19 - i32.wrap_i64 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $13 - local.get $9 - i64.and - local.set $13 - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $13 - local.get $5 - i64.lt_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $10 - local.get $16 - i32.const 0 - local.get $14 - i32.sub - i32.const 2 - i32.shl - i32.add - i64.load32_u - i64.mul - local.set $10 - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $13 - local.set $22 - local.get $8 - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $17 - local.get $17 - i32.load16_u - local.set $26 - block $break|4 - loop $continue|4 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|4 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|4 - end - unreachable - end - local.get $17 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|3 - end - unreachable - ) - (func $~lib/util/number/prettify (; 248 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $2 - i32.eqz - if - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 2 - i32.add - return - end - local.get $1 - local.get $2 - i32.add - local.set $3 - local.get $1 - local.get $3 - i32.le_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - block $break|0 - local.get $1 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $3 - i32.const 2 - i32.add - return - else - local.get $3 - i32.const 0 - i32.gt_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $4 - local.get $4 - i32.const 2 - i32.add - local.get $4 - i32.const 0 - local.get $2 - i32.sub - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.store16 - local.get $1 - i32.const 1 - i32.add - return - else - i32.const -6 - local.get $3 - i32.lt_s - if (result i32) - local.get $3 - i32.const 0 - i32.le_s - else - i32.const 0 - end - if - i32.const 2 - local.get $3 - i32.sub - local.set $4 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $1 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - i32.const 48 - i32.const 46 - i32.const 16 - i32.shl - i32.or - i32.store - block $break|1 - i32.const 2 - local.set $5 - loop $loop|1 - local.get $5 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|1 - end - unreachable - end - local.get $1 - local.get $4 - i32.add - return - else - local.get $1 - i32.const 1 - i32.eq - if - local.get $0 - i32.const 101 - i32.store16 offset=2 - local.get $0 - i32.const 4 - i32.add - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - local.get $5 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $5 - i32.sub - local.set $5 - end - local.get $5 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $7 - local.get $4 - local.set $10 - local.get $5 - local.set $9 - local.get $7 - local.set $8 - local.get $10 - local.get $9 - local.get $8 - call $~lib/util/number/utoa32_lut - local.get $4 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $7 - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - else - local.get $1 - i32.const 1 - i32.shl - local.set $7 - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.const 2 - i32.add - local.get $7 - i32.const 2 - i32.sub - call $~lib/memory/memory.copy - local.get $0 - i32.const 46 - i32.store16 offset=2 - local.get $0 - local.get $7 - i32.add - i32.const 101 - i32.store16 offset=2 - local.get $1 - local.get $0 - local.get $7 - i32.add - i32.const 4 - i32.add - local.set $9 - local.get $3 - i32.const 1 - i32.sub - local.set $8 - local.get $8 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $8 - i32.sub - local.set $8 - end - local.get $8 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $4 - local.get $9 - local.set $11 - local.get $8 - local.set $5 - local.get $4 - local.set $10 - local.get $11 - local.get $5 - local.get $10 - call $~lib/util/number/utoa32_lut - local.get $9 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $4 - i32.add - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - end - unreachable - end - unreachable - end - unreachable - end - unreachable - ) - (func $~lib/util/number/dtoa_core (; 249 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 i64) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i32) - (local $11 i64) - (local $12 i64) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 f64) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i64) - (local $25 i64) - (local $26 i32) - (local $27 i64) - (local $28 i32) - local.get $1 - f64.const 0 - f64.lt - local.set $2 - local.get $2 - if - local.get $1 - f64.neg - local.set $1 - local.get $0 - i32.const 45 - i32.store16 - end - local.get $1 - local.set $5 - local.get $0 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i64.reinterpret_f64 - local.set $6 - local.get $6 - i64.const 9218868437227405312 - i64.and - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.set $7 - local.get $6 - i64.const 4503599627370495 - i64.and - local.set $8 - local.get $7 - i32.const 0 - i32.ne - i64.extend_i32_u - i64.const 52 - i64.shl - local.get $8 - i64.add - local.set $9 - local.get $7 - i32.const 1 - local.get $7 - i32.const 0 - i32.ne - select - i32.const 1023 - i32.const 52 - i32.add - i32.sub - local.set $7 - local.get $9 - local.set $11 - local.get $7 - local.set $10 - local.get $11 - i64.const 1 - i64.shl - i64.const 1 - i64.add - local.set $12 - local.get $10 - i32.const 1 - i32.sub - local.set $13 - local.get $12 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $12 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $12 - local.get $13 - local.get $14 - i32.sub - local.set $13 - i32.const 1 - local.get $11 - i64.const 4503599627370496 - i64.eq - i32.add - local.set $15 - local.get $12 - global.set $~lib/util/number/_frc_plus - local.get $11 - local.get $15 - i64.extend_i32_s - i64.shl - i64.const 1 - i64.sub - local.get $10 - local.get $15 - i32.sub - local.get $13 - i32.sub - i64.extend_i32_s - i64.shl - global.set $~lib/util/number/_frc_minus - local.get $13 - global.set $~lib/util/number/_exp - global.get $~lib/util/number/_exp - local.set $10 - i32.const -61 - local.get $10 - i32.sub - f64.convert_i32_s - f64.const 0.30102999566398114 - f64.mul - f64.const 347 - f64.add - local.set $16 - local.get $16 - i32.trunc_f64_s - local.set $15 - local.get $15 - local.get $15 - f64.convert_i32_s - local.get $16 - f64.ne - i32.add - local.set $15 - local.get $15 - i32.const 3 - i32.shr_s - i32.const 1 - i32.add - local.set $14 - i32.const 348 - local.get $14 - i32.const 3 - i32.shl - i32.sub - global.set $~lib/util/number/_K - i32.const 6152 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_frc_pow - i32.const 6376 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_exp_pow - local.get $9 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $9 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $9 - local.get $7 - local.get $14 - i32.sub - local.set $7 - global.get $~lib/util/number/_frc_pow - local.set $12 - global.get $~lib/util/number/_exp_pow - local.set $15 - local.get $9 - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $24 - local.get $24 - i64.const 2147483647 - i64.add - local.set $24 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $24 - i64.const 32 - i64.shr_u - local.set $24 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $24 - i64.add - local.set $24 - local.get $7 - local.set $10 - local.get $15 - local.set $13 - local.get $10 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $10 - global.get $~lib/util/number/_frc_plus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $23 - local.get $11 - i64.const 4294967295 - i64.and - local.set $22 - local.get $17 - i64.const 32 - i64.shr_u - local.set $21 - local.get $11 - i64.const 32 - i64.shr_u - local.set $20 - local.get $23 - local.get $22 - i64.mul - local.set $19 - local.get $21 - local.get $22 - i64.mul - local.get $19 - i64.const 32 - i64.shr_u - i64.add - local.set $18 - local.get $23 - local.get $20 - i64.mul - local.get $18 - i64.const 4294967295 - i64.and - i64.add - local.set $25 - local.get $25 - i64.const 2147483647 - i64.add - local.set $25 - local.get $18 - i64.const 32 - i64.shr_u - local.set $18 - local.get $25 - i64.const 32 - i64.shr_u - local.set $25 - local.get $21 - local.get $20 - i64.mul - local.get $18 - i64.add - local.get $25 - i64.add - i64.const 1 - i64.sub - local.set $25 - global.get $~lib/util/number/_exp - local.set $26 - local.get $15 - local.set $13 - local.get $26 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $26 - global.get $~lib/util/number/_frc_minus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $27 - local.get $27 - i64.const 2147483647 - i64.add - local.set $27 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $27 - i64.const 32 - i64.shr_u - local.set $27 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $27 - i64.add - i64.const 1 - i64.add - local.set $27 - local.get $25 - local.get $27 - i64.sub - local.set $23 - local.get $4 - local.get $24 - local.get $10 - local.get $25 - local.get $26 - local.get $23 - local.get $3 - call $~lib/util/number/genDigits - local.set $28 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $28 - local.get $2 - i32.sub - global.get $~lib/util/number/_K - call $~lib/util/number/prettify - local.set $28 - local.get $28 - local.get $2 - i32.add - ) - (func $~lib/util/number/dtoa (; 250 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - f64.const 0 - f64.eq - if - i32.const 5320 - call $~lib/rt/pure/__retain - return - end - local.get $0 - call $~lib/number/isFinite - i32.eqz - if - local.get $0 - call $~lib/number/isNaN - if - i32.const 5344 - call $~lib/rt/pure/__retain - return - end - i32.const 5368 - i32.const 5408 - local.get $0 - f64.const 0 - f64.lt - select - call $~lib/rt/pure/__retain - return - end - i32.const 28 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $1 - local.get $1 - local.get $0 - call $~lib/util/number/dtoa_core - local.set $2 - local.get $2 - i32.const 28 - i32.eq - if - local.get $1 - call $~lib/rt/pure/__retain - return - end - local.get $1 - i32.const 0 - local.get $2 - call $~lib/string/String#substring - local.set $3 - local.get $1 - call $~lib/rt/tlsf/__free - local.get $3 - ) - (func $~lib/util/number/dtoa_stream (; 251 ;) (type $FUNCSIG$iiid) (param $0 i32) (param $1 i32) (param $2 f64) (result i32) - (local $3 i32) - (local $4 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - f64.const 0 - f64.eq - if - local.get $0 - i32.const 48 - i32.store16 - local.get $0 - i32.const 46 - i32.store16 offset=2 - local.get $0 - i32.const 48 - i32.store16 offset=4 - i32.const 3 - return - end - local.get $2 - call $~lib/number/isFinite - i32.eqz - if - local.get $2 - call $~lib/number/isNaN - if - local.get $0 - i32.const 78 - i32.store16 - local.get $0 - i32.const 97 - i32.store16 offset=2 - local.get $0 - i32.const 78 - i32.store16 offset=4 - i32.const 3 - return - else - local.get $2 - f64.const 0 - f64.lt - local.set $3 - i32.const 8 - local.get $3 - i32.add - local.set $4 - local.get $0 - i32.const 5368 - i32.const 5408 - local.get $3 - select - local.get $4 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $4 - return - end - unreachable - end - local.get $0 - local.get $2 - call $~lib/util/number/dtoa_core - ) - (func $~lib/util/string/joinFloatArray (; 252 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 f64) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - f64.load - call $~lib/util/number/dtoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 28 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 28 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/dtoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/dtoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#join (; 253 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinFloatArray - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/util/string/joinStringArray (; 254 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i32.load - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $5 - i32.const 0 - local.set $6 - i32.const 0 - local.set $7 - block $break|0 - i32.const 0 - local.set $4 - local.get $3 - i32.const 1 - i32.add - local.set $8 - loop $loop|0 - local.get $4 - local.get $8 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $9 - local.get $7 - local.tee $10 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $10 - call $~lib/rt/pure/__release - end - local.get $9 - local.set $7 - local.get $7 - i32.const 0 - i32.ne - if - local.get $6 - local.get $7 - call $~lib/string/String#get:length - i32.add - local.set $6 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - i32.const 0 - local.set $11 - local.get $6 - local.get $5 - local.get $3 - i32.mul - i32.add - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $12 - block $break|1 - i32.const 0 - local.set $8 - loop $loop|1 - local.get $8 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $8 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $10 - local.get $7 - local.tee $4 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $4 - call $~lib/rt/pure/__release - end - local.get $10 - local.set $7 - local.get $7 - i32.const 0 - i32.ne - if - local.get $7 - call $~lib/string/String#get:length - local.set $10 - local.get $12 - local.get $11 - i32.const 1 - i32.shl - i32.add - local.get $7 - local.get $10 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $11 - local.get $10 - i32.add - local.set $11 - end - local.get $5 - if - local.get $12 - local.get $11 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $5 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $11 - local.get $5 - i32.add - local.set $11 - end - local.get $8 - i32.const 1 - i32.add - local.set $8 - br $loop|1 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $9 - local.get $7 - local.tee $8 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $9 - local.set $7 - local.get $7 - i32.const 0 - i32.ne - if - local.get $12 - local.get $11 - i32.const 1 - i32.shl - i32.add - local.get $7 - local.get $7 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - end - local.get $12 - local.set $9 - local.get $2 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $~lib/array/Array<~lib/string/String | null>#join (; 255 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinStringArray - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $std/array/Ref#constructor (; 256 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.eqz - if - i32.const 0 - i32.const 18 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $0 - end - local.get $0 - ) - (func $~lib/util/string/joinObjectArray (; 257 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - i32.const 6648 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $5 - i32.const 15 - local.get $5 - i32.add - local.get $3 - i32.mul - i32.const 15 - i32.add - local.set $6 - local.get $6 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - i32.const 0 - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $10 - local.get $9 - local.tee $11 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $11 - call $~lib/rt/pure/__release - end - local.get $10 - local.set $9 - local.get $9 - if - local.get $7 - local.get $8 - i32.const 1 - i32.shl - i32.add - i32.const 6648 - i32.const 15 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $8 - i32.const 15 - i32.add - local.set $8 - end - local.get $5 - if - local.get $7 - local.get $8 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $5 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $8 - local.get $5 - i32.add - local.set $8 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - if - local.get $7 - local.get $8 - i32.const 1 - i32.shl - i32.add - i32.const 6648 - i32.const 15 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $8 - i32.const 15 - i32.add - local.set $8 - end - local.get $6 - local.get $8 - i32.gt_s - if - local.get $7 - i32.const 0 - local.get $8 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $7 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#join (; 258 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinObjectArray - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/array/Array#toString (; 259 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 4464 - call $~lib/array/Array#join - ) - (func $~lib/util/number/itoa (; 260 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - call $~lib/util/number/itoa32 - return - ) - (func $~lib/util/number/itoa_stream (; 261 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.lt_s - local.set $4 - local.get $4 - if - i32.const 0 - local.get $2 - i32.sub - local.set $2 - end - local.get $2 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - call $~lib/util/number/decimalCount32 - local.get $4 - i32.add - local.set $3 - local.get $0 - local.set $7 - local.get $2 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - local.set $6 - local.get $3 - local.set $5 - local.get $7 - local.get $6 - local.get $5 - call $~lib/util/number/utoa32_lut - local.get $4 - if - local.get $0 - i32.const 45 - i32.store16 - end - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 262 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i32.load8_s - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 11 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 11 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#join (; 263 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/array/Array#toString (; 264 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 4464 - call $~lib/array/Array#join - ) - (func $~lib/util/number/itoa (; 265 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 65535 - i32.and - call $~lib/util/number/utoa32 - return - ) - (func $~lib/util/number/itoa_stream (; 266 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i32.const 65535 - i32.and - i32.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i32.const 65535 - i32.and - call $~lib/util/number/decimalCount32 - local.set $3 - local.get $0 - local.set $6 - local.get $2 - i32.const 65535 - i32.and - local.set $5 - local.get $3 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 267 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i32.load16_u - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 10 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 10 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#join (; 268 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/array/Array#toString (; 269 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 4464 - call $~lib/array/Array#join - ) - (func $~lib/util/number/decimalCount64 (; 270 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - (local $1 i32) - local.get $0 - i64.const 1000000000000000 - i64.lt_u - if - local.get $0 - i64.const 1000000000000 - i64.lt_u - if - i32.const 11 - i32.const 12 - local.get $0 - i64.const 100000000000 - i64.lt_u - select - local.set $1 - i32.const 10 - local.get $1 - local.get $0 - i64.const 10000000000 - i64.lt_u - select - return - else - i32.const 14 - i32.const 15 - local.get $0 - i64.const 100000000000000 - i64.lt_u - select - local.set $1 - i32.const 13 - local.get $1 - local.get $0 - i64.const 10000000000000 - i64.lt_u - select - return - end - unreachable - else - local.get $0 - i64.const 100000000000000000 - i64.lt_u - if - i32.const 16 - i32.const 17 - local.get $0 - i64.const 10000000000000000 - i64.lt_u - select - return - else - i32.const 19 - i32.const 20 - local.get $0 - i64.const -8446744073709551616 - i64.lt_u - select - local.set $1 - i32.const 18 - local.get $1 - local.get $0 - i64.const 1000000000000000000 - i64.lt_u - select - return - end - unreachable - end - unreachable - ) - (func $~lib/util/number/utoa64_lut (; 271 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) - (local $3 i32) - (local $4 i64) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i64) - (local $13 i64) - i32.const 5000 - i32.load offset=4 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i64.const 100000000 - i64.ge_u - i32.eqz - br_if $break|0 - local.get $1 - i64.const 100000000 - i64.div_u - local.set $4 - local.get $1 - local.get $4 - i64.const 100000000 - i64.mul - i64.sub - i32.wrap_i64 - local.set $5 - local.get $4 - local.set $1 - local.get $5 - i32.const 10000 - i32.div_u - local.set $6 - local.get $5 - i32.const 10000 - i32.rem_u - local.set $7 - local.get $6 - i32.const 100 - i32.div_u - local.set $8 - local.get $6 - i32.const 100 - i32.rem_u - local.set $9 - local.get $7 - i32.const 100 - i32.div_u - local.set $10 - local.get $7 - i32.const 100 - i32.rem_u - local.set $11 - local.get $3 - local.get $10 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $12 - local.get $3 - local.get $11 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $13 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $12 - local.get $13 - i64.const 32 - i64.shl - i64.or - i64.store - local.get $3 - local.get $8 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $12 - local.get $3 - local.get $9 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $13 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $12 - local.get $13 - i64.const 32 - i64.shl - i64.or - i64.store - br $continue|0 - end - unreachable - end - local.get $0 - local.get $1 - i32.wrap_i64 - local.get $2 - call $~lib/util/number/utoa32_lut - ) - (func $~lib/util/number/utoa64 (; 272 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i64) - local.get $0 - i64.eqz - if - i32.const 4560 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i64.const 4294967295 - i64.le_u - if - local.get $0 - i32.wrap_i64 - local.set $2 - local.get $2 - call $~lib/util/number/decimalCount32 - local.set $3 - local.get $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $1 - local.get $1 - local.set $6 - local.get $2 - local.set $5 - local.get $3 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - else - local.get $0 - call $~lib/util/number/decimalCount64 - local.set $3 - local.get $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $1 - local.get $1 - local.set $5 - local.get $0 - local.set $7 - local.get $3 - local.set $4 - local.get $5 - local.get $7 - local.get $4 - call $~lib/util/number/utoa64_lut - end - local.get $1 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/itoa (; 273 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - local.get $0 - call $~lib/util/number/utoa64 - return - ) - (func $~lib/util/number/itoa_stream (; 274 ;) (type $FUNCSIG$iiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i64.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i64.const 4294967295 - i64.le_u - if - local.get $2 - i32.wrap_i64 - local.set $4 - local.get $4 - call $~lib/util/number/decimalCount32 - local.set $3 - local.get $0 - local.set $7 - local.get $4 - local.set $6 - local.get $3 - local.set $5 - local.get $7 - local.get $6 - local.get $5 - call $~lib/util/number/utoa32_lut - else - local.get $2 - call $~lib/util/number/decimalCount64 - local.set $3 - local.get $0 - local.set $6 - local.get $2 - local.set $8 - local.get $3 - local.set $5 - local.get $6 - local.get $8 - local.get $5 - call $~lib/util/number/utoa64_lut - end - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 275 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i64.load - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 20 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 20 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 3 - i32.shl - i32.add - i64.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 3 - i32.shl - i32.add - i64.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#join (; 276 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/array/Array#toString (; 277 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 4464 - call $~lib/array/Array#join - ) - (func $~lib/util/number/itoa64 (; 278 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - local.get $0 - i64.eqz - if - i32.const 4560 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i64.const 0 - i64.lt_s - local.set $1 - local.get $1 - if - i64.const 0 - local.get $0 - i64.sub - local.set $0 - end - local.get $0 - i64.const 4294967295 - i64.le_u - if - local.get $0 - i32.wrap_i64 - local.set $3 - local.get $3 - call $~lib/util/number/decimalCount32 - local.get $1 - i32.add - local.set $4 - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $2 - local.get $2 - local.set $7 - local.get $3 - local.set $6 - local.get $4 - local.set $5 - local.get $7 - local.get $6 - local.get $5 - call $~lib/util/number/utoa32_lut - else - local.get $0 - call $~lib/util/number/decimalCount64 - local.get $1 - i32.add - local.set $4 - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $2 - local.get $2 - local.set $6 - local.get $0 - local.set $8 - local.get $4 - local.set $5 - local.get $6 - local.get $8 - local.get $5 - call $~lib/util/number/utoa64_lut - end - local.get $1 - if - local.get $2 - i32.const 45 - i32.store16 - end - local.get $2 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/itoa (; 279 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - local.get $0 - call $~lib/util/number/itoa64 - return - ) - (func $~lib/util/number/itoa_stream (; 280 ;) (type $FUNCSIG$iiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i64) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i64.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i64.const 0 - i64.lt_s - local.set $4 - local.get $4 - if - i64.const 0 - local.get $2 - i64.sub - local.set $2 - end - local.get $2 - i64.const 4294967295 - i64.le_u - if - local.get $2 - i32.wrap_i64 - local.set $5 - local.get $5 - call $~lib/util/number/decimalCount32 - local.get $4 - i32.add - local.set $3 - local.get $0 - local.set $8 - local.get $5 - local.set $7 - local.get $3 - local.set $6 - local.get $8 - local.get $7 - local.get $6 - call $~lib/util/number/utoa32_lut - else - local.get $2 - call $~lib/util/number/decimalCount64 - local.get $4 - i32.add - local.set $3 - local.get $0 - local.set $7 - local.get $2 - local.set $9 - local.get $3 - local.set $6 - local.get $7 - local.get $9 - local.get $6 - call $~lib/util/number/utoa64_lut - end - local.get $4 - if - local.get $0 - i32.const 45 - i32.store16 - end - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 281 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i64.load - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 21 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 21 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 3 - i32.shl - i32.add - i64.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 3 - i32.shl - i32.add - i64.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#join (; 282 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/array/Array#toString (; 283 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 4464 - call $~lib/array/Array#join - ) - (func $~lib/array/Array<~lib/string/String | null>#toString (; 284 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 4464 - call $~lib/array/Array<~lib/string/String | null>#join - ) - (func $~lib/util/string/joinArrays<~lib/array/Array> (; 285 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $5 - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 0 - local.set $7 - local.get $3 - i32.eqz - if - local.get $0 - i32.load - local.tee $4 - local.get $7 - local.tee $8 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $4 - local.set $7 - local.get $7 - if (result i32) - local.get $7 - local.get $2 - call $~lib/array/Array#join - else - i32.const 4248 - call $~lib/rt/pure/__retain - end - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $4 - return - end - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $8 - local.get $7 - local.tee $9 - i32.ne - if - local.get $8 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $8 - local.set $7 - local.get $7 - if - local.get $5 - local.get $7 - local.get $2 - call $~lib/array/Array#join - local.tee $8 - call $~lib/string/String.__concat - local.tee $9 - local.tee $10 - local.get $5 - local.tee $11 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $11 - call $~lib/rt/pure/__release - end - local.get $10 - local.set $5 - local.get $8 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - end - local.get $6 - if - local.get $5 - local.get $2 - call $~lib/string/String.__concat - local.tee $9 - local.tee $11 - local.get $5 - local.tee $8 - i32.ne - if - local.get $11 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $11 - local.set $5 - local.get $9 - call $~lib/rt/pure/__release - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $10 - local.get $7 - local.tee $4 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $4 - call $~lib/rt/pure/__release - end - local.get $10 - local.set $7 - local.get $7 - if - local.get $5 - local.get $7 - local.get $2 - call $~lib/array/Array#join - local.tee $10 - call $~lib/string/String.__concat - local.tee $4 - local.tee $8 - local.get $5 - local.tee $9 - i32.ne - if - local.get $8 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $8 - local.set $5 - local.get $10 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - end - local.get $5 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array<~lib/array/Array>#join (; 286 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinArrays<~lib/array/Array> - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/array/Array<~lib/array/Array>#toString (; 287 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 4464 - call $~lib/array/Array<~lib/array/Array>#join - ) - (func $~lib/util/number/itoa (; 288 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 255 - i32.and - call $~lib/util/number/utoa32 - return - ) - (func $~lib/util/number/itoa_stream (; 289 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i32.const 255 - i32.and - i32.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i32.const 255 - i32.and - call $~lib/util/number/decimalCount32 - local.set $3 - local.get $0 - local.set $6 - local.get $2 - i32.const 255 - i32.and - local.set $5 - local.get $3 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 290 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i32.load8_u - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 10 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 10 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array#join (; 291 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/util/string/joinArrays<~lib/array/Array> (; 292 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $5 - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 0 - local.set $7 - local.get $3 - i32.eqz - if - local.get $0 - i32.load - local.tee $4 - local.get $7 - local.tee $8 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $4 - local.set $7 - local.get $7 - if (result i32) - local.get $7 - local.get $2 - call $~lib/array/Array#join - else - i32.const 4248 - call $~lib/rt/pure/__retain - end - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $4 - return - end - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $8 - local.get $7 - local.tee $9 - i32.ne - if - local.get $8 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $8 - local.set $7 - local.get $7 - if - local.get $5 - local.get $7 - local.get $2 - call $~lib/array/Array#join - local.tee $8 - call $~lib/string/String.__concat - local.tee $9 - local.tee $10 - local.get $5 - local.tee $11 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $11 - call $~lib/rt/pure/__release - end - local.get $10 - local.set $5 - local.get $8 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - end - local.get $6 - if - local.get $5 - local.get $2 - call $~lib/string/String.__concat - local.tee $9 - local.tee $11 - local.get $5 - local.tee $8 - i32.ne - if - local.get $11 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $11 - local.set $5 - local.get $9 - call $~lib/rt/pure/__release - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $10 - local.get $7 - local.tee $4 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $4 - call $~lib/rt/pure/__release - end - local.get $10 - local.set $7 - local.get $7 - if - local.get $5 - local.get $7 - local.get $2 - call $~lib/array/Array#join - local.tee $10 - call $~lib/string/String.__concat - local.tee $4 - local.tee $8 - local.get $5 - local.tee $9 - i32.ne - if - local.get $8 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $8 - local.set $5 - local.get $10 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - end - local.get $5 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array<~lib/array/Array>#join (; 293 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinArrays<~lib/array/Array> - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/array/Array<~lib/array/Array>#toString (; 294 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 4464 - call $~lib/array/Array<~lib/array/Array>#join - ) - (func $~lib/util/string/joinArrays<~lib/array/Array> (; 295 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $5 - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 0 - local.set $7 - local.get $3 - i32.eqz - if - local.get $0 - i32.load - local.tee $4 - local.get $7 - local.tee $8 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $4 - local.set $7 - local.get $7 - if (result i32) - local.get $7 - local.get $2 - call $~lib/array/Array#join - else - i32.const 4248 - call $~lib/rt/pure/__retain - end - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $4 - return - end - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $8 - local.get $7 - local.tee $9 - i32.ne - if - local.get $8 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $8 - local.set $7 - local.get $7 - if - local.get $5 - local.get $7 - local.get $2 - call $~lib/array/Array#join - local.tee $8 - call $~lib/string/String.__concat - local.tee $9 - local.tee $10 - local.get $5 - local.tee $11 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $11 - call $~lib/rt/pure/__release - end - local.get $10 - local.set $5 - local.get $8 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - end - local.get $6 - if - local.get $5 - local.get $2 - call $~lib/string/String.__concat - local.tee $9 - local.tee $11 - local.get $5 - local.tee $8 - i32.ne - if - local.get $11 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $11 - local.set $5 - local.get $9 - call $~lib/rt/pure/__release - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $10 - local.get $7 - local.tee $4 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $4 - call $~lib/rt/pure/__release - end - local.get $10 - local.set $7 - local.get $7 - if - local.get $5 - local.get $7 - local.get $2 - call $~lib/array/Array#join - local.tee $10 - call $~lib/string/String.__concat - local.tee $4 - local.tee $8 - local.get $5 - local.tee $9 - i32.ne - if - local.get $8 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $8 - local.set $5 - local.get $10 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - end - local.get $5 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array<~lib/array/Array>#join (; 296 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinArrays<~lib/array/Array> - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/util/string/joinArrays<~lib/array/Array<~lib/array/Array>> (; 297 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - i32.const 4248 - call $~lib/rt/pure/__retain - local.set $5 - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 0 - local.set $7 - local.get $3 - i32.eqz - if - local.get $0 - i32.load - local.tee $4 - local.get $7 - local.tee $8 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $4 - local.set $7 - local.get $7 - if (result i32) - local.get $7 - local.get $2 - call $~lib/array/Array<~lib/array/Array>#join - else - i32.const 4248 - call $~lib/rt/pure/__retain - end - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $4 - return - end - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $8 - local.get $7 - local.tee $9 - i32.ne - if - local.get $8 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $8 - local.set $7 - local.get $7 - if - local.get $5 - local.get $7 - local.get $2 - call $~lib/array/Array<~lib/array/Array>#join - local.tee $8 - call $~lib/string/String.__concat - local.tee $9 - local.tee $10 - local.get $5 - local.tee $11 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $11 - call $~lib/rt/pure/__release - end - local.get $10 - local.set $5 - local.get $8 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - end - local.get $6 - if - local.get $5 - local.get $2 - call $~lib/string/String.__concat - local.tee $9 - local.tee $11 - local.get $5 - local.tee $8 - i32.ne - if - local.get $11 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $11 - local.set $5 - local.get $9 - call $~lib/rt/pure/__release - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.tee $10 - local.get $7 - local.tee $4 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $4 - call $~lib/rt/pure/__release - end - local.get $10 - local.set $7 - local.get $7 - if - local.get $5 - local.get $7 - local.get $2 - call $~lib/array/Array<~lib/array/Array>#join - local.tee $10 - call $~lib/string/String.__concat - local.tee $4 - local.tee $8 - local.get $5 - local.tee $9 - i32.ne - if - local.get $8 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $8 - local.set $5 - local.get $10 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - end - local.get $5 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#join (; 298 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.set $2 - local.get $0 - i32.load offset=12 - local.set $3 - local.get $2 - local.get $3 - local.get $1 - call $~lib/util/string/joinArrays<~lib/array/Array<~lib/array/Array>> - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - ) - (func $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#toString (; 299 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 4464 - call $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#join - ) - (func $start:std/array (; 300 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i32) - (local $20 i32) - (local $21 i32) - (local $22 i32) - (local $23 i32) - (local $24 i32) - (local $25 i32) - (local $26 i32) - (local $27 i32) - (local $28 i32) - (local $29 i32) - (local $30 i32) - (local $31 i32) - (local $32 i32) - (local $33 i32) - (local $34 i32) - (local $35 i32) - (local $36 i32) - (local $37 i32) - (local $38 i32) - (local $39 i32) - (local $40 i32) - (local $41 i32) - (local $42 i32) - (local $43 i32) - (local $44 i32) - (local $45 i32) - (local $46 i32) - (local $47 i32) - (local $48 i32) - (local $49 i32) - (local $50 i32) - (local $51 i32) - (local $52 i32) - (local $53 i32) - (local $54 i32) - (local $55 i32) - (local $56 i32) - i32.const 0 - i32.const 0 - call $~lib/array/Array#constructor - global.set $std/array/arr - i32.const 0 - call $~lib/array/Array.isArray<~lib/array/Array | null> - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 35 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array.isArray<~lib/array/Array> - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 36 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $std/array/P#constructor - local.tee $0 - call $~lib/array/Array.isArray - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 37 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8Array#constructor - local.tee $1 - call $~lib/array/Array.isArray<~lib/typedarray/Uint8Array> - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 38 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - call $~lib/array/Array.isArray - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 39 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 416 - call $~lib/array/Array.isArray<~lib/string/String> - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 40 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - i32.const 5 - i32.const 0 - i32.const 6 - i32.const 440 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 1 - i32.const 1 - i32.const 3 - call $~lib/array/Array#fill - call $~lib/rt/pure/__release - local.get $1 - i32.const 5 - i32.const 0 - i32.const 6 - i32.const 464 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $3 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 48 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 0 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/array/Array#fill - call $~lib/rt/pure/__release - local.get $1 - i32.const 5 - i32.const 0 - i32.const 6 - i32.const 536 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $4 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 51 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 1 - i32.const 0 - i32.const -3 - call $~lib/array/Array#fill - call $~lib/rt/pure/__release - local.get $1 - i32.const 5 - i32.const 0 - i32.const 6 - i32.const 560 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $5 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 54 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 2 - i32.const -2 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/array/Array#fill - call $~lib/rt/pure/__release - local.get $1 - i32.const 5 - i32.const 0 - i32.const 6 - i32.const 584 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $6 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 57 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 0 - i32.const 1 - i32.const 0 - call $~lib/array/Array#fill - call $~lib/rt/pure/__release - local.get $1 - i32.const 5 - i32.const 0 - i32.const 6 - i32.const 608 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $7 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 60 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - i32.const 5 - i32.const 2 - i32.const 7 - i32.const 632 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $6 - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - i32.const 1 - i32.const 1 - i32.const 3 - call $~lib/array/Array#fill - call $~lib/rt/pure/__release - local.get $7 - i32.const 5 - i32.const 2 - i32.const 7 - i32.const 672 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $4 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 67 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 0 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/array/Array#fill - call $~lib/rt/pure/__release - local.get $7 - i32.const 5 - i32.const 2 - i32.const 7 - i32.const 712 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $3 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 70 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.const 0 - i32.const -3 - call $~lib/array/Array#fill - call $~lib/rt/pure/__release - local.get $7 - i32.const 5 - i32.const 2 - i32.const 7 - i32.const 752 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $1 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 73 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - i32.const -2 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/array/Array#fill - call $~lib/rt/pure/__release - local.get $7 - i32.const 5 - i32.const 2 - i32.const 7 - i32.const 792 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $0 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 76 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 0 - i32.const 1 - i32.const 0 - call $~lib/array/Array#fill - call $~lib/rt/pure/__release - local.get $7 - i32.const 5 - i32.const 2 - i32.const 7 - i32.const 832 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $2 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 79 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 85 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 86 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 42 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#__get - i32.const 42 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 90 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 91 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 92 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#pop - local.set $2 - local.get $2 - i32.const 42 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 96 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 97 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 98 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - call $~lib/array/Array#push - drop - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 102 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 103 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#__get - i32.const 43 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 104 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 44 - call $~lib/array/Array#push - drop - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 108 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 109 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#__get - i32.const 43 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 110 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 1 - call $~lib/array/Array#__get - i32.const 44 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 111 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 45 - call $~lib/array/Array#push - drop - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 115 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 116 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#__get - i32.const 43 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 117 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 1 - call $~lib/array/Array#__get - i32.const 44 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 118 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#__get - i32.const 45 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 119 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - i32.const 0 - call $~lib/array/Array#constructor - local.set $2 - global.get $std/array/arr - local.get $2 - call $~lib/array/Array#concat - local.set $0 - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 128 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 129 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/array/Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 130 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.const 2 - i32.const 3 - i32.const 920 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $3 - call $~lib/array/Array#concat - call $~lib/rt/pure/__release - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 133 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - call $~lib/array/Array#__get - i32.const 43 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 135 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - call $~lib/array/Array#__get - i32.const 44 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 136 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 2 - call $~lib/array/Array#__get - i32.const 45 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 137 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 46 - call $~lib/array/Array#push - drop - local.get $2 - i32.const 47 - call $~lib/array/Array#push - drop - global.get $std/array/arr - local.get $2 - call $~lib/array/Array#concat - local.set $5 - local.get $0 - call $~lib/rt/pure/__release - local.get $5 - local.set $0 - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 144 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 145 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/array/Array#get:length - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 146 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - call $~lib/array/Array#__get - i32.const 43 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 147 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - call $~lib/array/Array#__get - i32.const 44 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 148 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 2 - call $~lib/array/Array#__get - i32.const 45 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 149 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 3 - call $~lib/array/Array#__get - i32.const 46 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 150 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 4 - call $~lib/array/Array#__get - i32.const 47 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 151 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/array/Array#pop - drop - local.get $0 - call $~lib/array/Array#get:length - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 154 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - i32.const 2 - i32.const 3 - i32.const 936 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $1 - call $~lib/rt/pure/__retain - local.set $5 - local.get $5 - call $~lib/array/Array#get:length - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 162 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - global.get $std/array/arr - call $~lib/array/Array#concat - local.set $6 - local.get $0 - call $~lib/rt/pure/__release - local.get $6 - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 164 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - call $~lib/array/Array#get:length - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 165 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - i32.const 0 - local.set $5 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 952 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $3 - local.tee $7 - local.get $5 - local.tee $1 - i32.ne - if - local.get $7 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__release - end - local.get $7 - local.set $5 - local.get $5 - i32.const 0 - i32.const 3 - i32.const 2147483647 - call $~lib/array/Array#copyWithin - local.tee $7 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 992 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $0 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 173 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1032 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $2 - local.tee $4 - local.get $5 - local.tee $1 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__release - end - local.get $4 - local.set $5 - local.get $5 - i32.const 1 - i32.const 3 - i32.const 2147483647 - call $~lib/array/Array#copyWithin - local.tee $4 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1072 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $6 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 175 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1112 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $8 - local.tee $1 - local.get $5 - local.tee $9 - i32.ne - if - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $1 - local.set $5 - local.get $5 - i32.const 1 - i32.const 2 - i32.const 2147483647 - call $~lib/array/Array#copyWithin - local.tee $1 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1152 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $10 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 177 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1192 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $11 - local.tee $9 - local.get $5 - local.tee $12 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $12 - call $~lib/rt/pure/__release - end - local.get $9 - local.set $5 - local.get $5 - i32.const 2 - i32.const 2 - i32.const 2147483647 - call $~lib/array/Array#copyWithin - local.tee $9 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1232 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $13 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 179 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1272 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $14 - local.tee $12 - local.get $5 - local.tee $15 - i32.ne - if - local.get $12 - call $~lib/rt/pure/__retain - drop - local.get $15 - call $~lib/rt/pure/__release - end - local.get $12 - local.set $5 - local.get $5 - i32.const 0 - i32.const 3 - i32.const 4 - call $~lib/array/Array#copyWithin - local.tee $12 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1312 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $16 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 181 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1352 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $17 - local.tee $15 - local.get $5 - local.tee $18 - i32.ne - if - local.get $15 - call $~lib/rt/pure/__retain - drop - local.get $18 - call $~lib/rt/pure/__release - end - local.get $15 - local.set $5 - local.get $5 - i32.const 1 - i32.const 3 - i32.const 4 - call $~lib/array/Array#copyWithin - local.tee $15 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1392 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $19 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 183 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1432 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $20 - local.tee $18 - local.get $5 - local.tee $21 - i32.ne - if - local.get $18 - call $~lib/rt/pure/__retain - drop - local.get $21 - call $~lib/rt/pure/__release - end - local.get $18 - local.set $5 - local.get $5 - i32.const 1 - i32.const 2 - i32.const 4 - call $~lib/array/Array#copyWithin - local.tee $18 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1472 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $22 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 185 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1512 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $23 - local.tee $21 - local.get $5 - local.tee $24 - i32.ne - if - local.get $21 - call $~lib/rt/pure/__retain - drop - local.get $24 - call $~lib/rt/pure/__release - end - local.get $21 - local.set $5 - local.get $5 - i32.const 0 - i32.const -2 - i32.const 2147483647 - call $~lib/array/Array#copyWithin - local.tee $21 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1552 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $25 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 187 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1592 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $26 - local.tee $24 - local.get $5 - local.tee $27 - i32.ne - if - local.get $24 - call $~lib/rt/pure/__retain - drop - local.get $27 - call $~lib/rt/pure/__release - end - local.get $24 - local.set $5 - local.get $5 - i32.const 0 - i32.const -2 - i32.const -1 - call $~lib/array/Array#copyWithin - local.tee $24 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1632 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $28 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 189 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1672 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $29 - local.tee $27 - local.get $5 - local.tee $30 - i32.ne - if - local.get $27 - call $~lib/rt/pure/__retain - drop - local.get $30 - call $~lib/rt/pure/__release - end - local.get $27 - local.set $5 - local.get $5 - i32.const -4 - i32.const -3 - i32.const -2 - call $~lib/array/Array#copyWithin - local.tee $27 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1712 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $31 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 191 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1752 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $32 - local.tee $30 - local.get $5 - local.tee $33 - i32.ne - if - local.get $30 - call $~lib/rt/pure/__retain - drop - local.get $33 - call $~lib/rt/pure/__release - end - local.get $30 - local.set $5 - local.get $5 - i32.const -4 - i32.const -3 - i32.const -1 - call $~lib/array/Array#copyWithin - local.tee $30 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1792 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $34 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 193 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1832 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $35 - local.tee $33 - local.get $5 - local.tee $36 - i32.ne - if - local.get $33 - call $~lib/rt/pure/__retain - drop - local.get $36 - call $~lib/rt/pure/__release - end - local.get $33 - local.set $5 - local.get $5 - i32.const -4 - i32.const -3 - i32.const 2147483647 - call $~lib/array/Array#copyWithin - local.tee $33 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1872 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $37 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 195 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $10 - call $~lib/rt/pure/__release - local.get $11 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - local.get $13 - call $~lib/rt/pure/__release - local.get $14 - call $~lib/rt/pure/__release - local.get $12 - call $~lib/rt/pure/__release - local.get $16 - call $~lib/rt/pure/__release - local.get $17 - call $~lib/rt/pure/__release - local.get $15 - call $~lib/rt/pure/__release - local.get $19 - call $~lib/rt/pure/__release - local.get $20 - call $~lib/rt/pure/__release - local.get $18 - call $~lib/rt/pure/__release - local.get $22 - call $~lib/rt/pure/__release - local.get $23 - call $~lib/rt/pure/__release - local.get $21 - call $~lib/rt/pure/__release - local.get $25 - call $~lib/rt/pure/__release - local.get $26 - call $~lib/rt/pure/__release - local.get $24 - call $~lib/rt/pure/__release - local.get $28 - call $~lib/rt/pure/__release - local.get $29 - call $~lib/rt/pure/__release - local.get $27 - call $~lib/rt/pure/__release - local.get $31 - call $~lib/rt/pure/__release - local.get $32 - call $~lib/rt/pure/__release - local.get $30 - call $~lib/rt/pure/__release - local.get $34 - call $~lib/rt/pure/__release - local.get $35 - call $~lib/rt/pure/__release - local.get $33 - call $~lib/rt/pure/__release - local.get $37 - call $~lib/rt/pure/__release - global.get $std/array/arr - i32.const 42 - call $~lib/array/Array#unshift - drop - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 203 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 204 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#__get - i32.const 42 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 205 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 1 - call $~lib/array/Array#__get - i32.const 43 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 206 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#__get - i32.const 44 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 207 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#__get - i32.const 45 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 208 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 41 - call $~lib/array/Array#unshift - drop - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 212 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 213 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#__get - i32.const 41 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 214 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 1 - call $~lib/array/Array#__get - i32.const 42 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 215 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#__get - i32.const 43 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 216 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#__get - i32.const 44 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 217 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 4 - call $~lib/array/Array#__get - i32.const 45 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 218 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#shift - global.set $std/array/i - global.get $std/array/i - i32.const 41 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 227 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 228 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 229 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#__get - i32.const 42 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 230 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 1 - call $~lib/array/Array#__get - i32.const 43 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 231 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#__get - i32.const 44 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 232 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#__get - i32.const 45 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 233 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#pop - global.set $std/array/i - global.get $std/array/i - i32.const 45 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 237 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 238 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 239 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#__get - i32.const 42 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 240 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 1 - call $~lib/array/Array#__get - i32.const 43 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 241 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#__get - i32.const 44 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 242 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#reverse - call $~lib/rt/pure/__release - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 250 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 251 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#__get - i32.const 44 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 252 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 1 - call $~lib/array/Array#__get - i32.const 43 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 253 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#__get - i32.const 42 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 254 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 44 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 44 - i32.const 0 - call $~lib/array/Array#indexOf - global.set $std/array/i - global.get $std/array/i - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 264 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 42 - i32.const 0 - call $~lib/array/Array#indexOf - global.set $std/array/i - global.get $std/array/i - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 267 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 45 - i32.const 0 - call $~lib/array/Array#indexOf - global.set $std/array/i - global.get $std/array/i - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 270 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const 100 - call $~lib/array/Array#indexOf - global.set $std/array/i - global.get $std/array/i - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 273 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const -100 - call $~lib/array/Array#indexOf - global.set $std/array/i - global.get $std/array/i - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 276 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const -2 - call $~lib/array/Array#indexOf - global.set $std/array/i - global.get $std/array/i - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 279 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const -4 - call $~lib/array/Array#indexOf - global.set $std/array/i - global.get $std/array/i - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 282 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const 0 - call $~lib/array/Array#indexOf - global.set $std/array/i - global.get $std/array/i - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 285 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const 1 - call $~lib/array/Array#indexOf - global.set $std/array/i - global.get $std/array/i - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 288 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const 2 - call $~lib/array/Array#indexOf - global.set $std/array/i - global.get $std/array/i - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 291 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 44 - i32.const 0 - call $~lib/array/Array#includes - local.set $37 - local.get $37 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 298 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 42 - i32.const 0 - call $~lib/array/Array#includes - local.set $37 - local.get $37 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 301 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 45 - i32.const 0 - call $~lib/array/Array#includes - local.set $37 - local.get $37 - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 304 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const 100 - call $~lib/array/Array#includes - local.set $37 - local.get $37 - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 307 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const -100 - call $~lib/array/Array#includes - local.set $37 - local.get $37 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 310 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const -2 - call $~lib/array/Array#includes - local.set $37 - local.get $37 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 313 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const -4 - call $~lib/array/Array#includes - local.set $37 - local.get $37 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 316 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const 0 - call $~lib/array/Array#includes - local.set $37 - local.get $37 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 319 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const 1 - call $~lib/array/Array#includes - local.set $37 - local.get $37 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 322 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 43 - i32.const 2 - call $~lib/array/Array#includes - local.set $37 - local.get $37 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 325 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 1 - i32.const 1 - call $~lib/array/Array#splice - call $~lib/rt/pure/__release - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 329 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $std/array/internalCapacity - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 330 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#__get - i32.const 44 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 331 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 1 - call $~lib/array/Array#__get - i32.const 42 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 332 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1912 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $33 - call $~lib/rt/pure/__retain - local.set $37 - local.get $37 - i32.const 0 - i32.const 2147483647 - call $~lib/array/Array#splice - local.tee $35 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 1952 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $30 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 339 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 0 - i32.const 2 - i32.const 3 - i32.const 1992 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $32 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 340 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2008 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $31 - local.tee $36 - local.get $37 - local.tee $34 - i32.ne - if - local.get $36 - call $~lib/rt/pure/__retain - drop - local.get $34 - call $~lib/rt/pure/__release - end - local.get $36 - local.set $37 - local.get $37 - i32.const 2 - i32.const 2147483647 - call $~lib/array/Array#splice - local.tee $36 - i32.const 3 - i32.const 2 - i32.const 3 - i32.const 2048 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $27 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 343 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 2 - i32.const 2 - i32.const 3 - i32.const 2080 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $29 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 344 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2104 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $28 - local.tee $5 - local.get $37 - local.tee $34 - i32.ne - if - local.get $5 - call $~lib/rt/pure/__retain - drop - local.get $34 - call $~lib/rt/pure/__release - end - local.get $5 - local.set $37 - local.get $37 - i32.const 2 - i32.const 2 - call $~lib/array/Array#splice - local.tee $5 - i32.const 2 - i32.const 2 - i32.const 3 - i32.const 2144 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $24 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 347 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 3 - i32.const 2 - i32.const 3 - i32.const 2168 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $26 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 348 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2200 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $25 - local.tee $3 - local.get $37 - local.tee $34 - i32.ne - if - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $34 - call $~lib/rt/pure/__release - end - local.get $3 - local.set $37 - local.get $37 - i32.const 0 - i32.const 1 - call $~lib/array/Array#splice - local.tee $3 - i32.const 1 - i32.const 2 - i32.const 3 - i32.const 2240 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $21 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 351 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 4 - i32.const 2 - i32.const 3 - i32.const 2264 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $23 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 352 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2296 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $22 - local.tee $7 - local.get $37 - local.tee $34 - i32.ne - if - local.get $7 - call $~lib/rt/pure/__retain - drop - local.get $34 - call $~lib/rt/pure/__release - end - local.get $7 - local.set $37 - local.get $37 - i32.const -1 - i32.const 2147483647 - call $~lib/array/Array#splice - local.tee $7 - i32.const 1 - i32.const 2 - i32.const 3 - i32.const 2336 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $18 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 355 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 4 - i32.const 2 - i32.const 3 - i32.const 2360 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $20 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 356 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2392 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $19 - local.tee $0 - local.get $37 - local.tee $34 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $34 - call $~lib/rt/pure/__release - end - local.get $0 - local.set $37 - local.get $37 - i32.const -2 - i32.const 2147483647 - call $~lib/array/Array#splice - local.tee $0 - i32.const 2 - i32.const 2 - i32.const 3 - i32.const 2432 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $15 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 359 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 3 - i32.const 2 - i32.const 3 - i32.const 2456 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $17 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 360 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2488 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $16 - local.tee $2 - local.get $37 - local.tee $34 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $34 - call $~lib/rt/pure/__release - end - local.get $2 - local.set $37 - local.get $37 - i32.const -2 - i32.const 1 - call $~lib/array/Array#splice - local.tee $2 - i32.const 1 - i32.const 2 - i32.const 3 - i32.const 2528 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $12 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 363 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 4 - i32.const 2 - i32.const 3 - i32.const 2552 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $14 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 364 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2584 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $13 - local.tee $4 - local.get $37 - local.tee $34 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $34 - call $~lib/rt/pure/__release - end - local.get $4 - local.set $37 - local.get $37 - i32.const -7 - i32.const 1 - call $~lib/array/Array#splice - local.tee $4 - i32.const 1 - i32.const 2 - i32.const 3 - i32.const 2624 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $9 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 367 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 4 - i32.const 2 - i32.const 3 - i32.const 2648 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $11 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 368 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2680 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $10 - local.tee $6 - local.get $37 - local.tee $34 - i32.ne - if - local.get $6 - call $~lib/rt/pure/__retain - drop - local.get $34 - call $~lib/rt/pure/__release - end - local.get $6 - local.set $37 - local.get $37 - i32.const -2 - i32.const -1 - call $~lib/array/Array#splice - local.tee $6 - i32.const 0 - i32.const 2 - i32.const 3 - i32.const 2720 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $1 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 371 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2736 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $8 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 372 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2776 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $38 - local.tee $34 - local.get $37 - local.tee $39 - i32.ne - if - local.get $34 - call $~lib/rt/pure/__retain - drop - local.get $39 - call $~lib/rt/pure/__release - end - local.get $34 - local.set $37 - local.get $37 - i32.const 1 - i32.const -2 - call $~lib/array/Array#splice - local.tee $34 - i32.const 0 - i32.const 2 - i32.const 3 - i32.const 2816 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $40 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 375 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2832 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $41 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 376 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2872 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $42 - local.tee $39 - local.get $37 - local.tee $43 - i32.ne - if - local.get $39 - call $~lib/rt/pure/__retain - drop - local.get $43 - call $~lib/rt/pure/__release - end - local.get $39 - local.set $37 - local.get $37 - i32.const 4 - i32.const 0 - call $~lib/array/Array#splice - local.tee $39 - i32.const 0 - i32.const 2 - i32.const 3 - i32.const 2912 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $44 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 379 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2928 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $45 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 380 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 2968 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $46 - local.tee $43 - local.get $37 - local.tee $47 - i32.ne - if - local.get $43 - call $~lib/rt/pure/__retain - drop - local.get $47 - call $~lib/rt/pure/__release - end - local.get $43 - local.set $37 - local.get $37 - i32.const 7 - i32.const 0 - call $~lib/array/Array#splice - local.tee $43 - i32.const 0 - i32.const 2 - i32.const 3 - i32.const 3008 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $48 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 383 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 3024 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $49 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 384 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 3064 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $50 - local.tee $47 - local.get $37 - local.tee $51 - i32.ne - if - local.get $47 - call $~lib/rt/pure/__retain - drop - local.get $51 - call $~lib/rt/pure/__release - end - local.get $47 - local.set $37 - local.get $37 - i32.const 7 - i32.const 5 - call $~lib/array/Array#splice - local.tee $47 - i32.const 0 - i32.const 2 - i32.const 3 - i32.const 3104 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $52 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 387 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 3120 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $53 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 388 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $33 - call $~lib/rt/pure/__release - local.get $37 - call $~lib/rt/pure/__release - local.get $35 - call $~lib/rt/pure/__release - local.get $30 - call $~lib/rt/pure/__release - local.get $32 - call $~lib/rt/pure/__release - local.get $31 - call $~lib/rt/pure/__release - local.get $36 - call $~lib/rt/pure/__release - local.get $27 - call $~lib/rt/pure/__release - local.get $29 - call $~lib/rt/pure/__release - local.get $28 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $24 - call $~lib/rt/pure/__release - local.get $26 - call $~lib/rt/pure/__release - local.get $25 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $21 - call $~lib/rt/pure/__release - local.get $23 - call $~lib/rt/pure/__release - local.get $22 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $18 - call $~lib/rt/pure/__release - local.get $20 - call $~lib/rt/pure/__release - local.get $19 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $15 - call $~lib/rt/pure/__release - local.get $17 - call $~lib/rt/pure/__release - local.get $16 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $12 - call $~lib/rt/pure/__release - local.get $14 - call $~lib/rt/pure/__release - local.get $13 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - local.get $11 - call $~lib/rt/pure/__release - local.get $10 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $38 - call $~lib/rt/pure/__release - local.get $34 - call $~lib/rt/pure/__release - local.get $40 - call $~lib/rt/pure/__release - local.get $41 - call $~lib/rt/pure/__release - local.get $42 - call $~lib/rt/pure/__release - local.get $39 - call $~lib/rt/pure/__release - local.get $44 - call $~lib/rt/pure/__release - local.get $45 - call $~lib/rt/pure/__release - local.get $46 - call $~lib/rt/pure/__release - local.get $43 - call $~lib/rt/pure/__release - local.get $48 - call $~lib/rt/pure/__release - local.get $49 - call $~lib/rt/pure/__release - local.get $50 - call $~lib/rt/pure/__release - local.get $47 - call $~lib/rt/pure/__release - local.get $52 - call $~lib/rt/pure/__release - local.get $53 - call $~lib/rt/pure/__release - global.get $std/array/arr - i32.const 0 - i32.const 0 - call $~lib/array/Array#__set - global.get $std/array/arr - i32.const 1 - i32.const 1 - call $~lib/array/Array#__set - global.get $std/array/arr - i32.const 2 - i32.const 2 - call $~lib/array/Array#__set - global.get $std/array/arr - i32.const 3 - i32.const 3 - call $~lib/array/Array#__set - global.get $std/array/arr - i32.const 1 - call $~lib/array/Array#findIndex - global.set $std/array/i - global.get $std/array/i - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 401 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#findIndex - global.set $std/array/i - global.get $std/array/i - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 404 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#findIndex - global.set $std/array/i - global.get $std/array/i - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 407 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 4 - call $~lib/array/Array#findIndex - global.set $std/array/i - global.get $std/array/i - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 416 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 5 - call $~lib/array/Array#findIndex - global.set $std/array/i - global.get $std/array/i - i32.const -1 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 418 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - i32.const 6 - call $~lib/array/Array#findIndex - global.set $std/array/i - global.get $std/array/i - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 431 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 432 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 7 - call $~lib/array/Array#every - local.set $53 - local.get $53 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 442 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 8 - call $~lib/array/Array#every - local.set $53 - local.get $53 - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 445 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 9 - call $~lib/array/Array#every - local.set $53 - local.get $53 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 453 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 454 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 10 - call $~lib/array/Array#every - local.set $53 - local.get $53 - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 456 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - i32.const 11 - call $~lib/array/Array#every - local.set $53 - local.get $53 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 469 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 470 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 12 - call $~lib/array/Array#some - local.set $53 - local.get $53 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 480 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 13 - call $~lib/array/Array#some - local.set $53 - local.get $53 - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 483 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 14 - call $~lib/array/Array#some - local.set $53 - local.get $53 - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 491 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 492 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 15 - call $~lib/array/Array#some - local.set $53 - local.get $53 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 494 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - i32.const 16 - call $~lib/array/Array#some - local.set $53 - local.get $53 - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 507 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 508 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#push - drop - i32.const 0 - global.set $std/array/i - global.get $std/array/arr - i32.const 17 - call $~lib/array/Array#forEach - global.get $std/array/i - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 519 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - global.set $std/array/i - global.get $std/array/arr - i32.const 18 - call $~lib/array/Array#forEach - global.get $std/array/i - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 528 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 529 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - global.set $std/array/i - global.get $std/array/arr - i32.const 19 - call $~lib/array/Array#forEach - global.get $std/array/i - i32.const 406 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 532 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - i32.const 0 - global.set $std/array/i - global.get $std/array/arr - i32.const 20 - call $~lib/array/Array#forEach - global.get $std/array/i - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 546 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 547 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 21 - call $~lib/array/Array#forEach - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 100 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 572 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - block $break|0 - i32.const 0 - local.set $53 - loop $loop|0 - local.get $53 - i32.const 100 - i32.lt_s - i32.eqz - br_if $break|0 - global.get $std/array/arr - call $~lib/array/Array#pop - drop - local.get $53 - i32.const 1 - i32.add - local.set $53 - br $loop|0 - end - unreachable - end - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 1 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 22 - call $~lib/array/Array#map - local.set $53 - local.get $53 - call $~lib/array/Array#get:length - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $53 - i32.const 0 - call $~lib/array/Array#__get - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#__get - f32.convert_i32_s - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 587 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - global.set $std/array/i - global.get $std/array/arr - i32.const 23 - call $~lib/array/Array#map - call $~lib/rt/pure/__release - global.get $std/array/i - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 596 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 597 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - global.set $std/array/i - global.get $std/array/arr - i32.const 24 - call $~lib/array/Array#map - call $~lib/rt/pure/__release - global.get $std/array/i - i32.const 406 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 604 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - i32.const 0 - global.set $std/array/i - global.get $std/array/arr - i32.const 25 - call $~lib/array/Array#map - call $~lib/rt/pure/__release - global.get $std/array/i - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 619 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 620 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#push - drop - local.get $53 - call $~lib/rt/pure/__release - global.get $std/array/arr - i32.const 26 - call $~lib/array/Array#filter - local.set $53 - local.get $53 - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 630 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - global.set $std/array/i - global.get $std/array/arr - i32.const 27 - call $~lib/array/Array#filter - call $~lib/rt/pure/__release - global.get $std/array/i - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 639 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 640 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - global.set $std/array/i - global.get $std/array/arr - i32.const 28 - call $~lib/array/Array#filter - call $~lib/rt/pure/__release - global.get $std/array/i - i32.const 406 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 647 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - i32.const 0 - global.set $std/array/i - global.get $std/array/arr - i32.const 29 - call $~lib/array/Array#filter - call $~lib/rt/pure/__release - global.get $std/array/i - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 662 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 663 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#push - drop - local.get $53 - call $~lib/rt/pure/__release - global.get $std/array/arr - i32.const 30 - i32.const 0 - call $~lib/array/Array#reduce - global.set $std/array/i - global.get $std/array/i - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 673 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 31 - i32.const 4 - call $~lib/array/Array#reduce - global.set $std/array/i - global.get $std/array/i - i32.const 10 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 677 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 32 - i32.const 0 - call $~lib/array/Array#reduce - local.set $53 - local.get $53 - i32.const 0 - i32.ne - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 680 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 33 - i32.const 0 - call $~lib/array/Array#reduce - local.set $53 - local.get $53 - i32.const 0 - i32.ne - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 683 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 34 - i32.const 0 - call $~lib/array/Array#reduce - global.set $std/array/i - global.get $std/array/i - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 691 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 692 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 35 - i32.const 0 - call $~lib/array/Array#reduce - global.set $std/array/i - global.get $std/array/i - i32.const 10 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 694 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - i32.const 36 - i32.const 0 - call $~lib/array/Array#reduce - global.set $std/array/i - global.get $std/array/i - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 707 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 708 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 37 - i32.const 0 - call $~lib/array/Array#reduceRight - global.set $std/array/i - global.get $std/array/i - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 718 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 38 - i32.const 4 - call $~lib/array/Array#reduceRight - global.set $std/array/i - global.get $std/array/i - i32.const 10 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 722 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 39 - i32.const 0 - call $~lib/array/Array#reduceRight - local.set $53 - local.get $53 - i32.const 0 - i32.ne - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 725 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 40 - i32.const 0 - call $~lib/array/Array#reduceRight - local.set $53 - local.get $53 - i32.const 0 - i32.ne - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 728 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 41 - i32.const 0 - call $~lib/array/Array#reduceRight - global.set $std/array/i - global.get $std/array/i - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 736 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 737 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 42 - i32.const 0 - call $~lib/array/Array#reduceRight - global.set $std/array/i - global.get $std/array/i - i32.const 10 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 739 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - call $~lib/array/Array#pop - drop - global.get $std/array/arr - i32.const 43 - i32.const 0 - call $~lib/array/Array#reduceRight - global.set $std/array/i - global.get $std/array/i - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 752 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - call $~lib/array/Array#get:length - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 753 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $std/array/arr - i32.const 0 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 1 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 2 - call $~lib/array/Array#push - drop - global.get $std/array/arr - i32.const 3 - call $~lib/array/Array#push - drop - call $~lib/bindings/Math/random - i64.reinterpret_f64 - call $~lib/math/NativeMath.seedRandom - i32.const 8 - i32.const 2 - i32.const 8 - i32.const 3392 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $52 - call $~lib/rt/pure/__retain - local.set $53 - i32.const 0 - global.set $~lib/argc - local.get $53 - i32.const 0 - call $~lib/array/Array#sort|trampoline - call $~lib/rt/pure/__release - local.get $53 - i32.const 8 - i32.const 2 - i32.const 8 - i32.const 3440 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $50 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 842 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 8 - i32.const 3 - i32.const 9 - i32.const 3488 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $49 - call $~lib/rt/pure/__retain - local.set $47 - i32.const 0 - global.set $~lib/argc - local.get $47 - i32.const 0 - call $~lib/array/Array#sort|trampoline - call $~lib/rt/pure/__release - local.get $47 - i32.const 8 - i32.const 3 - i32.const 9 - i32.const 3568 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $43 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 846 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 3648 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $46 - call $~lib/rt/pure/__retain - local.set $48 - i32.const 0 - global.set $~lib/argc - local.get $48 - i32.const 0 - call $~lib/array/Array#sort|trampoline - call $~lib/rt/pure/__release - local.get $48 - i32.const 5 - i32.const 2 - i32.const 3 - i32.const 3688 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $44 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 850 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 5 - i32.const 2 - i32.const 7 - i32.const 3728 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $39 - call $~lib/rt/pure/__retain - local.set $45 - i32.const 0 - global.set $~lib/argc - local.get $45 - i32.const 0 - call $~lib/array/Array#sort|trampoline - call $~lib/rt/pure/__release - local.get $45 - i32.const 5 - i32.const 2 - i32.const 7 - i32.const 3768 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $41 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 854 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - i32.const 2 - i32.const 3 - i32.const 3808 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $40 - call $~lib/rt/pure/__retain - local.set $42 - i32.const 1 - i32.const 2 - i32.const 3 - i32.const 3824 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $38 - call $~lib/rt/pure/__retain - local.set $34 - i32.const 2 - i32.const 2 - i32.const 3 - i32.const 3848 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $1 - call $~lib/rt/pure/__retain - local.set $8 - i32.const 4 - i32.const 2 - i32.const 3 - i32.const 3872 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $10 - call $~lib/rt/pure/__retain - local.set $6 - i32.const 4 - i32.const 2 - i32.const 3 - i32.const 3904 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $9 - call $~lib/rt/pure/__retain - local.set $11 - i32.const 64 - call $std/array/createReverseOrderedArray - local.set $4 - i32.const 128 - call $std/array/createReverseOrderedArray - local.set $13 - i32.const 1024 - call $std/array/createReverseOrderedArray - local.set $14 - i32.const 10000 - call $std/array/createReverseOrderedArray - local.set $12 - i32.const 512 - call $std/array/createRandomOrderedArray - local.set $2 - local.get $42 - call $std/array/assertSortedDefault - local.get $34 - call $std/array/assertSortedDefault - local.get $34 - i32.const 1 - i32.const 2 - i32.const 3 - i32.const 3992 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $17 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 874 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - call $std/array/assertSortedDefault - local.get $8 - i32.const 2 - i32.const 2 - i32.const 3 - i32.const 4016 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $15 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 877 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $6 - call $std/array/assertSortedDefault - local.get $6 - local.get $11 - i32.const 0 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 880 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $4 - call $std/array/assertSortedDefault - local.get $4 - local.get $11 - i32.const 4 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 883 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $13 - call $std/array/assertSortedDefault - local.get $13 - local.get $11 - i32.const 4 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 886 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $14 - call $std/array/assertSortedDefault - local.get $14 - local.get $11 - i32.const 4 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 889 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $12 - call $std/array/assertSortedDefault - local.get $12 - local.get $11 - i32.const 4 - call $std/array/isArraysEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 892 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $std/array/assertSortedDefault - local.get $52 - call $~lib/rt/pure/__release - local.get $53 - call $~lib/rt/pure/__release - local.get $50 - call $~lib/rt/pure/__release - local.get $49 - call $~lib/rt/pure/__release - local.get $47 - call $~lib/rt/pure/__release - local.get $43 - call $~lib/rt/pure/__release - local.get $46 - call $~lib/rt/pure/__release - local.get $48 - call $~lib/rt/pure/__release - local.get $44 - call $~lib/rt/pure/__release - local.get $39 - call $~lib/rt/pure/__release - local.get $45 - call $~lib/rt/pure/__release - local.get $41 - call $~lib/rt/pure/__release - local.get $40 - call $~lib/rt/pure/__release - local.get $42 - call $~lib/rt/pure/__release - local.get $38 - call $~lib/rt/pure/__release - local.get $34 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $10 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - local.get $11 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $13 - call $~lib/rt/pure/__release - local.get $14 - call $~lib/rt/pure/__release - local.get $12 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $17 - call $~lib/rt/pure/__release - local.get $15 - call $~lib/rt/pure/__release - i32.const 64 - call $std/array/createRandomOrderedArray - local.set $15 - i32.const 257 - call $std/array/createRandomOrderedArray - local.set $17 - local.get $15 - i32.const 49 - call $std/array/assertSorted - local.get $15 - i32.const 50 - call $std/array/assertSorted - local.get $17 - i32.const 51 - call $std/array/assertSorted - local.get $17 - i32.const 52 - call $std/array/assertSorted - local.get $15 - call $~lib/rt/pure/__release - local.get $17 - call $~lib/rt/pure/__release - i32.const 2 - call $std/array/createReverseOrderedNestedArray - local.set $17 - local.get $17 - i32.const 53 - call $std/array/assertSorted<~lib/array/Array> - local.get $17 - call $~lib/rt/pure/__release - i32.const 512 - call $std/array/createReverseOrderedElementsArray - local.set $17 - local.get $17 - i32.const 54 - call $std/array/assertSorted> - local.get $17 - call $~lib/rt/pure/__release - i32.const 7 - i32.const 2 - i32.const 13 - i32.const 4264 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $15 - call $~lib/rt/pure/__retain - local.set $17 - i32.const 7 - i32.const 2 - i32.const 13 - i32.const 4312 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $12 - call $~lib/rt/pure/__retain - local.set $2 - i32.const 1 - global.set $~lib/argc - local.get $17 - i32.const 0 - call $std/array/assertSorted<~lib/string/String | null>|trampoline - local.get $17 - local.get $2 - i32.const 0 - call $std/array/isArraysEqual<~lib/string/String | null> - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 929 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 400 - call $std/array/createRandomStringArray - local.set $14 - i32.const 1 - global.set $~lib/argc - local.get $14 - i32.const 0 - call $std/array/assertSorted<~lib/string/String>|trampoline - local.get $15 - call $~lib/rt/pure/__release - local.get $17 - call $~lib/rt/pure/__release - local.get $12 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $14 - call $~lib/rt/pure/__release - i32.const 2 - i32.const 0 - i32.const 15 - i32.const 4384 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $2 - i32.const 4464 - call $~lib/array/Array#join - local.tee $14 - i32.const 4488 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 940 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 2 - i32.const 3 - i32.const 4528 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $17 - i32.const 4248 - call $~lib/array/Array#join - local.tee $12 - i32.const 5032 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 941 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 2 - i32.const 7 - i32.const 5064 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $13 - i32.const 5096 - call $~lib/array/Array#join - local.tee $15 - i32.const 5032 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 942 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 2 - i32.const 2 - i32.const 3 - i32.const 5120 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $11 - i32.const 5144 - call $~lib/array/Array#join - local.tee $4 - i32.const 5168 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 943 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 6 - i32.const 3 - i32.const 9 - i32.const 5232 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $6 - i32.const 5296 - call $~lib/array/Array#join - local.tee $9 - i32.const 6496 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 944 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 2 - i32.const 13 - i32.const 6616 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $8 - i32.const 4248 - call $~lib/array/Array<~lib/string/String | null>#join - local.tee $10 - i32.const 6592 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 945 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 2 - i32.const 19 - i32.const 0 - call $~lib/rt/__allocArray - local.set $1 - local.get $1 - i32.load offset=4 - local.set $34 - local.get $34 - i32.const 0 - call $std/array/Ref#constructor - local.tee $38 - call $~lib/rt/pure/__retain - i32.store - local.get $34 - i32.const 0 - call $~lib/rt/pure/__retain - i32.store offset=4 - local.get $34 - i32.const 0 - call $std/array/Ref#constructor - local.tee $42 - call $~lib/rt/pure/__retain - i32.store offset=8 - local.get $1 - call $~lib/rt/pure/__retain - local.set $34 - local.get $34 - i32.const 4464 - call $~lib/array/Array#join - local.tee $1 - i32.const 6696 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 947 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $14 - call $~lib/rt/pure/__release - local.get $17 - call $~lib/rt/pure/__release - local.get $12 - call $~lib/rt/pure/__release - local.get $13 - call $~lib/rt/pure/__release - local.get $15 - call $~lib/rt/pure/__release - local.get $11 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $10 - call $~lib/rt/pure/__release - local.get $38 - call $~lib/rt/pure/__release - local.get $42 - call $~lib/rt/pure/__release - local.get $34 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - i32.const 0 - i32.const 2 - i32.const 3 - i32.const 6776 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $34 - call $~lib/rt/pure/__retain - local.set $1 - i32.const 1 - i32.const 2 - i32.const 3 - i32.const 6792 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $38 - call $~lib/rt/pure/__retain - local.set $42 - i32.const 2 - i32.const 2 - i32.const 3 - i32.const 6816 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $8 - call $~lib/rt/pure/__retain - local.set $10 - i32.const 4 - i32.const 2 - i32.const 3 - i32.const 6840 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $6 - call $~lib/rt/pure/__retain - local.set $9 - local.get $1 - call $~lib/array/Array#toString - local.tee $4 - i32.const 4248 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 957 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $42 - call $~lib/array/Array#toString - local.tee $11 - i32.const 6592 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 958 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $10 - call $~lib/array/Array#toString - local.tee $15 - i32.const 6872 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 959 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $9 - call $~lib/array/Array#toString - local.tee $13 - i32.const 6896 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 960 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 0 - i32.const 20 - i32.const 6928 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $17 - call $~lib/array/Array#toString - local.tee $12 - i32.const 6952 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 962 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 1 - i32.const 21 - i32.const 6984 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $2 - call $~lib/array/Array#toString - local.tee $14 - i32.const 7008 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 963 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 3 - i32.const 3 - i32.const 16 - i32.const 7048 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $41 - call $~lib/array/Array#toString - local.tee $40 - i32.const 7088 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 964 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 4 - i32.const 3 - i32.const 22 - i32.const 7152 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $39 - call $~lib/array/Array#toString - local.tee $45 - i32.const 7200 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 965 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 7 - i32.const 2 - i32.const 13 - i32.const 7304 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $48 - call $~lib/rt/pure/__retain - local.set $44 - local.get $44 - call $~lib/array/Array<~lib/string/String | null>#toString - local.tee $46 - i32.const 7352 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 969 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 4 - i32.const 2 - i32.const 13 - i32.const 7448 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $47 - call $~lib/array/Array<~lib/string/String | null>#toString - local.tee $43 - i32.const 7480 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 970 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 2 - i32.const 2 - i32.const 10 - i32.const 0 - call $~lib/rt/__allocArray - local.set $49 - local.get $49 - i32.load offset=4 - local.set $50 - local.get $50 - i32.const 2 - i32.const 2 - i32.const 3 - i32.const 7512 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $52 - call $~lib/rt/pure/__retain - i32.store - local.get $50 - i32.const 2 - i32.const 2 - i32.const 3 - i32.const 7536 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $16 - call $~lib/rt/pure/__retain - i32.store offset=4 - local.get $49 - call $~lib/rt/pure/__retain - local.set $54 - local.get $54 - call $~lib/array/Array<~lib/array/Array>#toString - local.tee $50 - i32.const 7560 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 973 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 2 - i32.const 2 - i32.const 23 - i32.const 0 - call $~lib/rt/__allocArray - local.set $49 - local.get $49 - i32.load offset=4 - local.set $53 - local.get $53 - i32.const 2 - i32.const 0 - i32.const 6 - i32.const 7592 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $19 - call $~lib/rt/pure/__retain - i32.store - local.get $53 - i32.const 2 - i32.const 0 - i32.const 6 - i32.const 7616 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $20 - call $~lib/rt/pure/__retain - i32.store offset=4 - local.get $49 - call $~lib/rt/pure/__retain - local.set $55 - local.get $55 - call $~lib/array/Array<~lib/array/Array>#toString - local.tee $53 - i32.const 7560 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 976 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - i32.const 2 - i32.const 25 - i32.const 0 - call $~lib/rt/__allocArray - local.set $49 - local.get $49 - i32.load offset=4 - local.set $0 - local.get $0 - i32.const 1 - i32.const 2 - i32.const 24 - i32.const 0 - call $~lib/rt/__allocArray - local.set $18 - local.get $18 - i32.load offset=4 - local.set $7 - local.get $7 - i32.const 1 - i32.const 2 - i32.const 7 - i32.const 7640 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $23 - call $~lib/rt/pure/__retain - i32.store - local.get $18 - call $~lib/rt/pure/__retain - i32.store - local.get $49 - call $~lib/rt/pure/__retain - local.set $56 - local.get $56 - call $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#toString - local.tee $0 - i32.const 6592 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 979 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $34 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $38 - call $~lib/rt/pure/__release - local.get $42 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $10 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $11 - call $~lib/rt/pure/__release - local.get $15 - call $~lib/rt/pure/__release - local.get $13 - call $~lib/rt/pure/__release - local.get $17 - call $~lib/rt/pure/__release - local.get $12 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $14 - call $~lib/rt/pure/__release - local.get $41 - call $~lib/rt/pure/__release - local.get $40 - call $~lib/rt/pure/__release - local.get $39 - call $~lib/rt/pure/__release - local.get $45 - call $~lib/rt/pure/__release - local.get $48 - call $~lib/rt/pure/__release - local.get $44 - call $~lib/rt/pure/__release - local.get $46 - call $~lib/rt/pure/__release - local.get $47 - call $~lib/rt/pure/__release - local.get $43 - call $~lib/rt/pure/__release - local.get $52 - call $~lib/rt/pure/__release - local.get $16 - call $~lib/rt/pure/__release - local.get $50 - call $~lib/rt/pure/__release - local.get $19 - call $~lib/rt/pure/__release - local.get $20 - call $~lib/rt/pure/__release - local.get $53 - call $~lib/rt/pure/__release - local.get $23 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - global.get $std/array/arr - call $~lib/rt/pure/__release - local.get $54 - call $~lib/rt/pure/__release - local.get $55 - call $~lib/rt/pure/__release - local.get $56 - call $~lib/rt/pure/__release - ) - (func $start (; 301 ;) (type $FUNCSIG$v) - global.get $~lib/started - if - return - else - i32.const 1 - global.set $~lib/started - end - call $start:std/array - ) - (func $~lib/array/Array#__visit_impl (; 302 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 303 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 304 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 305 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 306 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/rt/pure/__visit (; 307 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.lt_u - if - return - end - local.get $0 - i32.const 16 - i32.sub - local.set $2 - block $break|0 - block $case5|0 - block $case4|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $1 - local.set $3 - local.get $3 - i32.const 1 - i32.eq - br_if $case0|0 - local.get $3 - i32.const 2 - i32.eq - br_if $case1|0 - local.get $3 - i32.const 3 - i32.eq - br_if $case2|0 - local.get $3 - i32.const 4 - i32.eq - br_if $case3|0 - local.get $3 - i32.const 5 - i32.eq - br_if $case4|0 - br $case5|0 - end - local.get $2 - call $~lib/rt/pure/decrement - br $break|0 - end - local.get $2 - i32.load offset=4 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 75 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $2 - i32.load offset=4 - i32.const 1 - i32.sub - i32.store offset=4 - local.get $2 - call $~lib/rt/pure/markGray - br $break|0 - end - local.get $2 - call $~lib/rt/pure/scan - br $break|0 - end - local.get $2 - i32.load offset=4 - local.set $3 - local.get $3 - i32.const -268435456 - i32.and - local.get $3 - i32.const 1 - i32.add - i32.const -268435456 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 86 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $3 - i32.const 1 - i32.add - i32.store offset=4 - local.get $3 - i32.const 1879048192 - i32.and - i32.const 0 - i32.ne - if - local.get $2 - call $~lib/rt/pure/scanBlack - end - br $break|0 - end - local.get $2 - call $~lib/rt/pure/collectWhite - br $break|0 - end - i32.const 0 - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 97 - i32.const 24 - call $~lib/builtins/abort - unreachable - end - end - ) - (func $~lib/array/Array<~lib/array/Array>#__visit_impl (; 308 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/array/Array>#__visit_impl (; 309 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/array/Array<~lib/string/String | null>#__visit_impl (; 310 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/array/Array<~lib/string/String>#__visit_impl (; 311 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/array/Array#__visit_impl (; 312 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 313 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 314 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 315 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/array/Array#__visit_impl (; 316 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 317 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 318 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array<~lib/array/Array>#__visit_impl (; 319 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/array/Array<~lib/array/Array>#__visit_impl (; 320 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#__visit_impl (; 321 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/rt/__visit_members (; 322 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - block $block$4$break - block $switch$1$default - block $switch$1$case$27 - block $switch$1$case$26 - block $switch$1$case$25 - block $switch$1$case$24 - block $switch$1$case$23 - block $switch$1$case$22 - block $switch$1$case$21 - block $switch$1$case$19 - block $switch$1$case$18 - block $switch$1$case$17 - block $switch$1$case$16 - block $switch$1$case$15 - block $switch$1$case$14 - block $switch$1$case$12 - block $switch$1$case$11 - block $switch$1$case$10 - block $switch$1$case$9 - block $switch$1$case$8 - block $switch$1$case$5 - block $switch$1$case$4 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$2 $switch$1$case$4 $switch$1$case$8 $switch$1$case$9 $switch$1$case$10 $switch$1$case$11 $switch$1$case$12 $switch$1$case$2 $switch$1$case$14 $switch$1$case$15 $switch$1$case$16 $switch$1$case$17 $switch$1$case$18 $switch$1$case$19 $switch$1$case$2 $switch$1$case$21 $switch$1$case$22 $switch$1$case$23 $switch$1$case$24 $switch$1$case$25 $switch$1$case$26 $switch$1$case$27 $switch$1$default - end - return - end - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/array/Array>#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array>#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/string/String | null>#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/string/String>#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/array/Array>#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/array/Array>#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#__visit_impl - br $block$4$break - end - unreachable - end - local.get $0 - i32.load - local.tee $2 - if - local.get $2 - local.get $1 - call $~lib/rt/pure/__visit - end - return - ) - (func $null (; 323 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/std/arraybuffer.untouched.wat b/tests/compiler/std/arraybuffer.untouched.wat index 431e95190e..e69de29bb2 100644 --- a/tests/compiler/std/arraybuffer.untouched.wat +++ b/tests/compiler/std/arraybuffer.untouched.wat @@ -1,4514 +0,0 @@ -(module - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$v (func)) - (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) - (type $FUNCSIG$vii (func (param i32 i32))) - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32))) - (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32))) - (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32))) - (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32))) - (memory $0 1) - (data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") - (data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") - (data (i32.const 112) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") - (data (i32.const 160) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") - (data (i32.const 216) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") - (data (i32.const 264) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00s\00t\00d\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") - (data (i32.const 320) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") - (data (i32.const 376) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") - (data (i32.const 416) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") - (data (i32.const 440) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00~\00l\00i\00b\00/\00d\00a\00t\00a\00v\00i\00e\00w\00.\00t\00s\00") - (data (i32.const 488) "\10\00\00\00\10\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\93\04\00\00\02\00\00\001\04\00\00\02\00\00\001\00\00\00\02\00\00\001\00\00\00\02\00\00\00Q\04\00\00\02\00\00\00Q\00\00\00\02\00\00\00\91\04\00\00\02\00\00\00\91\00\00\00\02\00\00\00\11\05\00\00\02\00\00\00\11\01\00\00\02\00\00\00\91\0c\00\00\02\00\00\00\11\0d\00\00\02\00\00\00\10\00\00\00\00\00\00\00") - (table $0 1 funcref) - (elem (i32.const 0) $null) - (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) - (global $~lib/rt/tlsf/collectLock (mut i32) (i32.const 0)) - (global $~lib/gc/gc.auto (mut i32) (i32.const 1)) - (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) - (global $~lib/rt/pure/CUR (mut i32) (i32.const 0)) - (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) - (global $~lib/rt/pure/END (mut i32) (i32.const 0)) - (global $~lib/argc (mut i32) (i32.const 0)) - (global $~lib/rt/__rtti_base i32 (i32.const 488)) - (global $~lib/heap/__heap_base i32 (i32.const 620)) - (export "memory" (memory $0)) - (start $start) - (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 277 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.set $3 - local.get $3 - i32.const 16 - i32.ge_u - if (result i32) - local.get $3 - i32.const 1073741808 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 279 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $4 - local.get $3 - i32.const 4 - i32.shr_u - local.set $5 - else - i32.const 31 - local.get $3 - i32.clz - i32.sub - local.set $4 - local.get $3 - local.get $4 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $5 - local.get $4 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $4 - end - local.get $4 - i32.const 23 - i32.lt_u - if (result i32) - local.get $5 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 292 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load offset=16 - local.set $6 - local.get $1 - i32.load offset=20 - local.set $7 - local.get $6 - if - local.get $6 - local.get $7 - i32.store offset=20 - end - local.get $7 - if - local.get $7 - local.get $6 - i32.store offset=16 - end - local.get $1 - local.get $0 - local.set $10 - local.get $4 - local.set $9 - local.get $5 - local.set $8 - local.get $10 - local.get $9 - i32.const 4 - i32.shl - local.get $8 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - i32.eq - if - local.get $0 - local.set $11 - local.get $4 - local.set $10 - local.get $5 - local.set $9 - local.get $7 - local.set $8 - local.get $11 - local.get $10 - i32.const 4 - i32.shl - local.get $9 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $8 - i32.store offset=96 - local.get $7 - i32.eqz - if - local.get $0 - local.set $9 - local.get $4 - local.set $8 - local.get $9 - local.get $8 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - local.set $9 - local.get $0 - local.set $8 - local.get $4 - local.set $11 - local.get $9 - i32.const 1 - local.get $5 - i32.shl - i32.const -1 - i32.xor - i32.and - local.tee $9 - local.set $10 - local.get $8 - local.get $11 - i32.const 2 - i32.shl - i32.add - local.get $10 - i32.store offset=4 - local.get $9 - i32.eqz - if - local.get $0 - local.get $0 - i32.load - i32.const 1 - local.get $4 - i32.shl - i32.const -1 - i32.xor - i32.and - i32.store - end - end - end - ) - (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $1 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 205 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 207 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.set $3 - local.get $3 - i32.const 16 - i32.add - local.get $3 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $4 - local.get $4 - i32.load - local.set $5 - local.get $5 - i32.const 1 - i32.and - if - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $5 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $3 - local.get $3 - i32.const 1073741808 - i32.lt_u - if - local.get $0 - local.get $4 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $2 - i32.const 3 - i32.and - local.get $3 - i32.or - local.tee $2 - i32.store - local.get $1 - local.set $6 - local.get $6 - i32.const 16 - i32.add - local.get $6 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $4 - local.get $4 - i32.load - local.set $5 - end - end - local.get $2 - i32.const 2 - i32.and - if - local.get $1 - local.set $6 - local.get $6 - i32.const 4 - i32.sub - i32.load - local.set $6 - local.get $6 - i32.load - local.set $3 - local.get $3 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 228 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $7 - local.get $7 - i32.const 1073741808 - i32.lt_u - if - local.get $0 - local.get $6 - call $~lib/rt/tlsf/removeBlock - local.get $6 - local.get $3 - i32.const 3 - i32.and - local.get $7 - i32.or - local.tee $2 - i32.store - local.get $6 - local.set $1 - end - end - local.get $4 - local.get $5 - i32.const 2 - i32.or - i32.store - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.set $8 - local.get $8 - i32.const 16 - i32.ge_u - if (result i32) - local.get $8 - i32.const 1073741808 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 243 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 16 - i32.add - local.get $8 - i32.add - local.get $4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 244 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $4 - i32.const 4 - i32.sub - local.get $1 - i32.store - local.get $8 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $9 - local.get $8 - i32.const 4 - i32.shr_u - local.set $10 - else - i32.const 31 - local.get $8 - i32.clz - i32.sub - local.set $9 - local.get $8 - local.get $9 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $10 - local.get $9 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $9 - end - local.get $9 - i32.const 23 - i32.lt_u - if (result i32) - local.get $10 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 260 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $7 - local.get $9 - local.set $3 - local.get $10 - local.set $6 - local.get $7 - local.get $3 - i32.const 4 - i32.shl - local.get $6 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $11 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - local.get $11 - i32.store offset=20 - local.get $11 - if - local.get $11 - local.get $1 - i32.store offset=16 - end - local.get $0 - local.set $12 - local.get $9 - local.set $7 - local.get $10 - local.set $3 - local.get $1 - local.set $6 - local.get $12 - local.get $7 - i32.const 4 - i32.shl - local.get $3 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store offset=96 - local.get $0 - local.get $0 - i32.load - i32.const 1 - local.get $9 - i32.shl - i32.or - i32.store - local.get $0 - local.set $13 - local.get $9 - local.set $12 - local.get $0 - local.set $3 - local.get $9 - local.set $6 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - i32.const 1 - local.get $10 - i32.shl - i32.or - local.set $7 - local.get $13 - local.get $12 - i32.const 2 - i32.shl - i32.add - local.get $7 - i32.store offset=4 - ) - (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - local.get $2 - i32.le_u - if (result i32) - local.get $1 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - if (result i32) - local.get $2 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 386 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $3 - local.get $3 - i32.load offset=1568 - local.set $4 - i32.const 0 - local.set $5 - local.get $4 - if - local.get $1 - local.get $4 - i32.const 16 - i32.add - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 396 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 16 - i32.sub - local.get $4 - i32.eq - if - local.get $1 - i32.const 16 - i32.sub - local.set $1 - local.get $4 - i32.load - local.set $5 - else - nop - end - else - local.get $1 - local.get $0 - i32.const 1572 - i32.add - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 408 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - end - local.get $2 - local.get $1 - i32.sub - local.set $6 - local.get $6 - i32.const 48 - i32.lt_u - if - i32.const 0 - return - end - local.get $6 - i32.const 16 - i32.const 1 - i32.shl - i32.sub - local.set $7 - local.get $1 - local.set $8 - local.get $8 - local.get $7 - i32.const 1 - i32.or - local.get $5 - i32.const 2 - i32.and - i32.or - i32.store - local.get $8 - i32.const 0 - i32.store offset=16 - local.get $8 - i32.const 0 - i32.store offset=20 - local.get $1 - local.get $6 - i32.add - i32.const 16 - i32.sub - local.set $4 - local.get $4 - i32.const 0 - i32.const 2 - i32.or - i32.store - local.get $0 - local.set $9 - local.get $4 - local.set $3 - local.get $9 - local.get $3 - i32.store offset=1568 - local.get $0 - local.get $8 - call $~lib/rt/tlsf/insertBlock - i32.const 1 - ) - (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $~lib/heap/__heap_base - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.set $0 - memory.size - local.set $1 - local.get $0 - i32.const 1572 - i32.add - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $2 - local.get $2 - local.get $1 - i32.gt_s - if (result i32) - local.get $2 - local.get $1 - i32.sub - memory.grow - i32.const 0 - i32.lt_s - else - i32.const 0 - end - if - unreachable - end - local.get $0 - local.set $3 - local.get $3 - i32.const 0 - i32.store - local.get $3 - local.set $5 - i32.const 0 - local.set $4 - local.get $5 - local.get $4 - i32.store offset=1568 - block $break|0 - i32.const 0 - local.set $5 - loop $loop|0 - local.get $5 - i32.const 23 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $3 - local.set $7 - local.get $5 - local.set $6 - i32.const 0 - local.set $4 - local.get $7 - local.get $6 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store offset=4 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - i32.const 16 - i32.lt_u - i32.eqz - br_if $break|1 - local.get $3 - local.set $9 - local.get $5 - local.set $8 - local.get $7 - local.set $6 - i32.const 0 - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $6 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store offset=96 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - local.get $0 - i32.const 1572 - i32.add - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - memory.size - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - drop - local.get $3 - global.set $~lib/rt/tlsf/ROOT - ) - (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.const 1073741808 - i32.ge_u - if - i32.const 176 - i32.const 128 - i32.const 457 - i32.const 29 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.tee $1 - i32.const 16 - local.tee $2 - local.get $1 - local.get $2 - i32.gt_u - select - ) - (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $2 - local.get $1 - i32.const 4 - i32.shr_u - local.set $3 - else - local.get $1 - i32.const 536870904 - i32.lt_u - if (result i32) - local.get $1 - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - i32.add - i32.const 1 - i32.sub - else - local.get $1 - end - local.set $4 - i32.const 31 - local.get $4 - i32.clz - i32.sub - local.set $2 - local.get $4 - local.get $2 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $3 - local.get $2 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $2 - end - local.get $2 - i32.const 23 - i32.lt_u - if (result i32) - local.get $3 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 338 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $5 - local.get $2 - local.set $4 - local.get $5 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - i32.const 0 - i32.const -1 - i32.xor - local.get $3 - i32.shl - i32.and - local.set $6 - i32.const 0 - local.set $7 - local.get $6 - i32.eqz - if - local.get $0 - i32.load - i32.const 0 - i32.const -1 - i32.xor - local.get $2 - i32.const 1 - i32.add - i32.shl - i32.and - local.set $5 - local.get $5 - i32.eqz - if - i32.const 0 - local.set $7 - else - local.get $5 - i32.ctz - local.set $2 - local.get $0 - local.set $8 - local.get $2 - local.set $4 - local.get $8 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - local.set $6 - local.get $6 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 351 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $9 - local.get $2 - local.set $8 - local.get $6 - i32.ctz - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $4 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $7 - end - else - local.get $0 - local.set $9 - local.get $2 - local.set $8 - local.get $6 - i32.ctz - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $4 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $7 - end - local.get $7 - ) - (func $~lib/rt/pure/markGray (; 11 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 268435456 - i32.ne - if - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 268435456 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 2 - call $~lib/rt/__visit_members - end - ) - (func $~lib/rt/tlsf/freeBlock (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $2 - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $1 - call $~lib/rt/tlsf/insertBlock - local.get $1 - call $~lib/rt/rtrace/onfree - ) - (func $~lib/rt/pure/scanBlack (; 13 ;) (type $FUNCSIG$vi) (param $0 i32) - local.get $0 - local.get $0 - i32.load offset=4 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 0 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 4 - call $~lib/rt/__visit_members - ) - (func $~lib/rt/pure/scan (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 268435456 - i32.eq - if - local.get $1 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - if - local.get $0 - call $~lib/rt/pure/scanBlack - else - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 536870912 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 3 - call $~lib/rt/__visit_members - end - end - ) - (func $~lib/rt/pure/collectWhite (; 15 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 536870912 - i32.eq - if (result i32) - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - else - i32.const 0 - end - if - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 0 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 5 - call $~lib/rt/__visit_members - global.get $~lib/rt/tlsf/ROOT - local.get $0 - call $~lib/rt/tlsf/freeBlock - end - ) - (func $~lib/rt/pure/__collect (; 16 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/rt/pure/ROOTS - local.set $0 - local.get $0 - local.set $1 - block $break|0 - local.get $1 - local.set $2 - global.get $~lib/rt/pure/CUR - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - i32.load offset=4 - local.set $5 - local.get $5 - i32.const 1879048192 - i32.and - i32.const 805306368 - i32.eq - if (result i32) - local.get $5 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - else - i32.const 0 - end - if - local.get $4 - call $~lib/rt/pure/markGray - local.get $1 - local.get $4 - i32.store - local.get $1 - i32.const 4 - i32.add - local.set $1 - else - local.get $5 - i32.const 1879048192 - i32.and - i32.const 0 - i32.eq - if (result i32) - local.get $5 - i32.const 268435455 - i32.and - i32.eqz - else - i32.const 0 - end - if - global.get $~lib/rt/tlsf/ROOT - local.get $4 - call $~lib/rt/tlsf/freeBlock - else - local.get $4 - local.get $5 - i32.const -2147483648 - i32.const -1 - i32.xor - i32.and - i32.store offset=4 - end - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - local.get $1 - global.set $~lib/rt/pure/CUR - block $break|1 - local.get $0 - local.set $5 - loop $loop|1 - local.get $5 - local.get $1 - i32.lt_u - i32.eqz - br_if $break|1 - local.get $5 - i32.load - call $~lib/rt/pure/scan - local.get $5 - i32.const 4 - i32.add - local.set $5 - br $loop|1 - end - unreachable - end - block $break|2 - local.get $0 - local.set $5 - loop $loop|2 - local.get $5 - local.get $1 - i32.lt_u - i32.eqz - br_if $break|2 - local.get $5 - i32.load - local.set $4 - local.get $4 - local.get $4 - i32.load offset=4 - i32.const -2147483648 - i32.const -1 - i32.xor - i32.and - i32.store offset=4 - local.get $4 - call $~lib/rt/pure/collectWhite - local.get $5 - i32.const 4 - i32.add - local.set $5 - br $loop|2 - end - unreachable - end - local.get $0 - global.set $~lib/rt/pure/CUR - ) - (func $~lib/rt/tlsf/growMemory (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - i32.const 536870904 - i32.lt_u - if - local.get $1 - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - i32.add - local.set $1 - end - memory.size - local.set $2 - local.get $1 - i32.const 16 - local.get $2 - i32.const 16 - i32.shl - i32.const 16 - i32.sub - local.get $0 - local.set $3 - local.get $3 - i32.load offset=1568 - i32.ne - i32.shl - i32.add - local.set $1 - local.get $1 - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $4 - local.get $2 - local.tee $3 - local.get $4 - local.tee $5 - local.get $3 - local.get $5 - i32.gt_s - select - local.set $6 - local.get $6 - memory.grow - i32.const 0 - i32.lt_s - if - local.get $4 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - memory.size - local.set $7 - local.get $0 - local.get $2 - i32.const 16 - i32.shl - local.get $7 - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - drop - ) - (func $~lib/rt/tlsf/prepareBlock (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $1 - i32.load - local.set $3 - local.get $2 - i32.const 15 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 365 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.get $2 - i32.sub - local.set $4 - local.get $4 - i32.const 32 - i32.ge_u - if - local.get $1 - local.get $2 - local.get $3 - i32.const 2 - i32.and - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.get $2 - i32.add - local.set $5 - local.get $5 - local.get $4 - i32.const 16 - i32.sub - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $5 - call $~lib/rt/tlsf/insertBlock - else - local.get $1 - local.get $3 - i32.const 1 - i32.const -1 - i32.xor - i32.and - i32.store - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - i32.load - i32.const 2 - i32.const -1 - i32.xor - i32.and - i32.store - end - ) - (func $~lib/rt/tlsf/allocateBlock (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/rt/tlsf/collectLock - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 486 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/rt/tlsf/prepareSize - local.set $2 - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - global.get $~lib/gc/gc.auto - if - i32.const 1 - global.set $~lib/rt/tlsf/collectLock - call $~lib/rt/pure/__collect - i32.const 0 - global.set $~lib/rt/tlsf/collectLock - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - local.get $0 - local.get $2 - call $~lib/rt/tlsf/growMemory - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 498 - i32.const 19 - call $~lib/builtins/abort - unreachable - end - end - else - local.get $0 - local.get $2 - call $~lib/rt/tlsf/growMemory - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 503 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - end - end - local.get $3 - i32.load - i32.const -4 - i32.and - local.get $2 - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 506 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=12 - local.get $0 - local.get $3 - call $~lib/rt/tlsf/removeBlock - local.get $0 - local.get $3 - local.get $2 - call $~lib/rt/tlsf/prepareBlock - local.get $3 - call $~lib/rt/rtrace/onalloc - local.get $3 - ) - (func $~lib/rt/tlsf/__alloc (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/rt/tlsf/ROOT - local.set $2 - local.get $2 - i32.eqz - if - call $~lib/rt/tlsf/initializeRoot - global.get $~lib/rt/tlsf/ROOT - local.set $2 - end - local.get $2 - local.get $0 - call $~lib/rt/tlsf/allocateBlock - local.set $3 - local.get $3 - local.get $1 - i32.store offset=8 - local.get $3 - i32.const 16 - i32.add - ) - (func $~lib/memory/memory.fill (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - block $~lib/util/memory/memset|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 1 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 2 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.get $4 - i32.store8 - local.get $5 - i32.const 2 - i32.add - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 2 - i32.sub - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 3 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 6 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 3 - i32.add - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 8 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - i32.const 0 - local.get $5 - i32.sub - i32.const 3 - i32.and - local.set $6 - local.get $5 - local.get $6 - i32.add - local.set $5 - local.get $3 - local.get $6 - i32.sub - local.set $3 - local.get $3 - i32.const -4 - i32.and - local.set $3 - i32.const -1 - i32.const 255 - i32.div_u - local.get $4 - i32.const 255 - i32.and - i32.mul - local.set $7 - local.get $5 - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.get $7 - i32.store - local.get $3 - i32.const 8 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 4 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 8 - i32.add - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 12 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 8 - i32.sub - local.get $7 - i32.store - local.get $3 - i32.const 24 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 12 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 16 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 20 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 24 - i32.add - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 28 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 24 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 20 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 16 - i32.sub - local.get $7 - i32.store - i32.const 24 - local.get $5 - i32.const 4 - i32.and - i32.add - local.set $6 - local.get $5 - local.get $6 - i32.add - local.set $5 - local.get $3 - local.get $6 - i32.sub - local.set $3 - local.get $7 - i64.extend_i32_u - local.get $7 - i64.extend_i32_u - i64.const 32 - i64.shl - i64.or - local.set $8 - block $break|0 - loop $continue|0 - local.get $3 - i32.const 32 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $5 - local.get $8 - i64.store - local.get $5 - i32.const 8 - i32.add - local.get $8 - i64.store - local.get $5 - i32.const 16 - i32.add - local.get $8 - i64.store - local.get $5 - i32.const 24 - i32.add - local.get $8 - i64.store - local.get $3 - i32.const 32 - i32.sub - local.set $3 - local.get $5 - i32.const 32 - i32.add - local.set $5 - br $continue|0 - end - unreachable - end - end - ) - (func $~lib/rt/pure/increment (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const -268435456 - i32.and - local.get $1 - i32.const 1 - i32.add - i32.const -268435456 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 104 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=4 - local.get $0 - call $~lib/rt/rtrace/onincrement - local.get $0 - i32.load - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 107 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - ) - (func $~lib/rt/pure/__retain (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.gt_u - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/pure/increment - end - local.get $0 - ) - (func $~lib/arraybuffer/ArrayBuffer#constructor (; 24 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - i32.const 1073741808 - i32.gt_u - if - i32.const 24 - i32.const 72 - i32.const 57 - i32.const 42 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $2 - local.get $2 - i32.const 0 - local.get $1 - call $~lib/memory/memory.fill - local.get $2 - call $~lib/rt/pure/__retain - ) - (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 16 - i32.sub - i32.load offset=12 - ) - (func $~lib/util/memory/memcpy (; 26 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - loop $continue|0 - local.get $2 - if (result i32) - local.get $1 - i32.const 3 - i32.and - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $0 - i32.const 3 - i32.and - i32.const 0 - i32.eq - if - block $break|1 - loop $continue|1 - local.get $2 - i32.const 16 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $1 - i32.const 8 - i32.add - i32.load - i32.store - local.get $0 - i32.const 12 - i32.add - local.get $1 - i32.const 12 - i32.add - i32.load - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|1 - end - unreachable - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.set $0 - local.get $1 - i32.const 4 - i32.add - local.set $1 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.get $1 - i32.load16_u - i32.store16 - local.get $0 - i32.const 2 - i32.add - local.set $0 - local.get $1 - i32.const 2 - i32.add - local.set $1 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - return - end - local.get $2 - i32.const 32 - i32.ge_u - if - block $break|2 - block $case2|2 - block $case1|2 - block $case0|2 - local.get $0 - i32.const 3 - i32.and - local.set $5 - local.get $5 - i32.const 1 - i32.eq - br_if $case0|2 - local.get $5 - i32.const 2 - i32.eq - br_if $case1|2 - local.get $5 - i32.const 3 - i32.eq - br_if $case2|2 - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 3 - i32.sub - local.set $2 - block $break|3 - loop $continue|3 - local.get $2 - i32.const 17 - i32.ge_u - i32.eqz - br_if $break|3 - local.get $1 - i32.const 1 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 5 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 9 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 13 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|3 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - block $break|4 - loop $continue|4 - local.get $2 - i32.const 18 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $1 - i32.const 2 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 6 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 10 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 14 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|4 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - block $break|5 - loop $continue|5 - local.get $2 - i32.const 19 - i32.ge_u - i32.eqz - br_if $break|5 - local.get $1 - i32.const 3 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 7 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 11 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 15 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|5 - end - unreachable - end - br $break|2 - end - end - local.get $2 - i32.const 16 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - ) - (func $~lib/memory/memory.copy (; 27 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - block $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - local.get $4 - i32.eq - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $4 - local.get $3 - i32.add - local.get $5 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $5 - local.get $3 - i32.add - local.get $4 - i32.le_u - end - if - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $4 - i32.lt_u - if - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|0 - loop $continue|0 - local.get $5 - i32.const 7 - i32.and - i32.eqz - br_if $break|0 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $3 - i32.const 1 - i32.sub - local.set $3 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - br $continue|0 - end - unreachable - end - block $break|1 - loop $continue|1 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $5 - local.get $4 - i64.load - i64.store - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - i32.const 8 - i32.add - local.set $5 - local.get $4 - i32.const 8 - i32.add - local.set $4 - br $continue|1 - end - unreachable - end - end - block $break|2 - loop $continue|2 - local.get $3 - i32.eqz - br_if $break|2 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - local.get $3 - i32.const 1 - i32.sub - local.set $3 - br $continue|2 - end - unreachable - end - else - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|3 - loop $continue|3 - local.get $5 - local.get $3 - i32.add - i32.const 7 - i32.and - i32.eqz - br_if $break|3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - local.get $3 - i32.add - local.get $4 - local.get $3 - i32.add - i64.load - i64.store - br $continue|4 - end - unreachable - end - end - block $break|5 - loop $continue|5 - local.get $3 - i32.eqz - br_if $break|5 - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|5 - end - unreachable - end - end - end - ) - (func $~lib/arraybuffer/ArrayBuffer#slice (; 28 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $3 - local.get $1 - i32.const 0 - i32.lt_s - if (result i32) - local.get $3 - local.get $1 - i32.add - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - else - local.get $1 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - end - local.set $1 - local.get $2 - i32.const 0 - i32.lt_s - if (result i32) - local.get $3 - local.get $2 - i32.add - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - else - local.get $2 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - end - local.set $2 - local.get $2 - local.get $1 - i32.sub - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.set $6 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $7 - local.get $7 - local.get $0 - local.get $1 - i32.add - local.get $6 - call $~lib/memory/memory.copy - local.get $7 - call $~lib/rt/pure/__retain - ) - (func $~lib/rt/__typeinfo (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - global.get $~lib/rt/__rtti_base - local.set $1 - local.get $0 - local.get $1 - i32.load - i32.gt_u - if - i32.const 336 - i32.const 392 - i32.const 22 - i32.const 27 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 4 - i32.add - local.get $0 - i32.const 8 - i32.mul - i32.add - i32.load - ) - (func $~lib/rt/tlsf/__free (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 593 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 594 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/tlsf/ROOT - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/tlsf/freeBlock - ) - (func $~lib/rt/pure/growRoots (; 31 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/rt/pure/ROOTS - local.set $0 - global.get $~lib/rt/pure/CUR - local.get $0 - i32.sub - local.set $1 - local.get $1 - i32.const 2 - i32.mul - local.tee $2 - i32.const 64 - i32.const 2 - i32.shl - local.tee $3 - local.get $2 - local.get $3 - i32.gt_u - select - local.set $4 - local.get $4 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $5 - local.get $5 - i32.const 16 - i32.sub - call $~lib/rt/rtrace/onfree - local.get $5 - local.get $0 - local.get $1 - call $~lib/memory/memory.copy - local.get $0 - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/rtrace/onalloc - local.get $0 - call $~lib/rt/tlsf/__free - end - local.get $5 - global.set $~lib/rt/pure/ROOTS - local.get $5 - local.get $1 - i32.add - global.set $~lib/rt/pure/CUR - local.get $5 - local.get $4 - i32.add - global.set $~lib/rt/pure/END - ) - (func $~lib/rt/pure/appendRoot (; 32 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - global.get $~lib/rt/pure/CUR - local.set $1 - local.get $1 - global.get $~lib/rt/pure/END - i32.ge_u - if - call $~lib/rt/pure/growRoots - global.get $~lib/rt/pure/CUR - local.set $1 - end - local.get $1 - local.get $0 - i32.store - local.get $1 - i32.const 4 - i32.add - global.set $~lib/rt/pure/CUR - ) - (func $~lib/rt/pure/decrement (; 33 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 268435455 - i32.and - local.set $2 - local.get $0 - call $~lib/rt/rtrace/ondecrement - local.get $0 - i32.load - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 115 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - i32.eq - if - local.get $0 - i32.const 16 - i32.add - i32.const 1 - call $~lib/rt/__visit_members - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - if - global.get $~lib/rt/tlsf/ROOT - local.get $0 - call $~lib/rt/tlsf/freeBlock - else - local.get $0 - i32.const -2147483648 - i32.const 0 - i32.or - i32.const 0 - i32.or - i32.store offset=4 - end - else - local.get $2 - i32.const 0 - i32.gt_u - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 124 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=8 - call $~lib/rt/__typeinfo - i32.const 16 - i32.and - i32.eqz - if - local.get $0 - i32.const -2147483648 - i32.const 805306368 - i32.or - local.get $2 - i32.const 1 - i32.sub - i32.or - i32.store offset=4 - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - if - local.get $0 - call $~lib/rt/pure/appendRoot - end - else - local.get $0 - local.get $1 - i32.const 268435455 - i32.const -1 - i32.xor - i32.and - local.get $2 - i32.const 1 - i32.sub - i32.or - i32.store offset=4 - end - end - ) - (func $~lib/rt/pure/__release (; 34 ;) (type $FUNCSIG$vi) (param $0 i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.gt_u - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/pure/decrement - end - ) - (func $~lib/arraybuffer/ArrayBuffer.isView<~lib/array/Array> (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - if - nop - end - i32.const 0 - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - ) - (func $~lib/arraybuffer/ArrayBuffer.isView (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - if - nop - end - i32.const 0 - ) - (func $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Uint8Array> (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - if - i32.const 1 - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - return - end - i32.const 0 - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - ) - (func $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Int32Array> (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - if - i32.const 1 - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - return - end - i32.const 0 - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - ) - (func $~lib/arraybuffer/ArrayBuffer.isView<~lib/dataview/DataView> (; 39 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - if - i32.const 1 - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - return - end - i32.const 0 - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - ) - (func $~lib/arraybuffer/ArrayBufferView#constructor (; 40 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $1 - i32.const 1073741808 - local.get $2 - i32.shr_u - i32.gt_u - if - i32.const 24 - i32.const 72 - i32.const 14 - i32.const 56 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $2 - i32.shl - local.tee $1 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $3 - local.get $3 - i32.const 0 - local.get $1 - call $~lib/memory/memory.fill - local.get $0 - i32.eqz - if - i32.const 12 - i32.const 2 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $0 - end - local.get $0 - i32.const 0 - i32.store - local.get $0 - i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - i32.load - local.tee $4 - i32.ne - if - local.get $5 - call $~lib/rt/pure/__retain - drop - local.get $4 - call $~lib/rt/pure/__release - end - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $0 - ) - (func $~lib/typedarray/Uint8Array#constructor (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 5 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/rt/__allocArray (; 42 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - i32.const 16 - local.get $2 - call $~lib/rt/tlsf/__alloc - local.set $4 - local.get $0 - local.get $1 - i32.shl - local.set $5 - local.get $5 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $4 - local.get $6 - call $~lib/rt/pure/__retain - i32.store - local.get $4 - local.get $6 - i32.store offset=4 - local.get $4 - local.get $5 - i32.store offset=8 - local.get $4 - local.get $0 - i32.store offset=12 - local.get $3 - if - local.get $6 - local.get $3 - local.get $5 - call $~lib/memory/memory.copy - end - local.get $4 - ) - (func $~lib/typedarray/Int32Array#constructor (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 9 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 2 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/dataview/DataView#constructor (; 44 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $3 - i32.const 1073741808 - i32.gt_u - local.get $2 - local.get $3 - i32.add - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.gt_u - i32.or - if - local.get $1 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 456 - i32.const 21 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.eqz - if - i32.const 12 - i32.const 15 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $0 - end - local.get $0 - i32.const 0 - i32.store - local.get $0 - i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - local.tee $4 - local.get $1 - local.tee $5 - local.get $4 - i32.load - local.tee $4 - i32.ne - if - local.get $5 - call $~lib/rt/pure/__retain - drop - local.get $4 - call $~lib/rt/pure/__release - end - local.get $5 - i32.store - local.get $1 - local.get $2 - i32.add - local.set $6 - local.get $0 - local.get $6 - i32.store offset=4 - local.get $0 - local.get $3 - i32.store offset=8 - local.get $1 - call $~lib/rt/pure/__release - local.get $0 - ) - (func $~lib/typedarray/Uint8Array#get:buffer (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/dataview/DataView#constructor|trampoline (; 46 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - block $2of2 - block $1of2 - block $0of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of2 $1of2 $2of2 $outOfRange - end - unreachable - end - i32.const 0 - local.set $2 - end - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $3 - end - local.get $0 - local.get $1 - local.get $2 - local.get $3 - call $~lib/dataview/DataView#constructor - ) - (func $start:std/arraybuffer (; 47 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - i32.const 0 - i32.const 8 - call $~lib/arraybuffer/ArrayBuffer#constructor - local.set $0 - local.get $0 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 4 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.const 1073741808 - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 8 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 9 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.const 1073741808 - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - local.set $1 - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 7 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 13 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const -1 - i32.const 1073741808 - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - local.set $1 - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 17 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.const 3 - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - local.set $1 - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 21 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.const -1 - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - local.set $1 - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 25 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const -3 - i32.const -1 - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - local.set $1 - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 29 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const -4 - i32.const 42 - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - local.set $1 - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 33 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 42 - i32.const 1073741808 - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - local.set $1 - local.get $1 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 37 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 38 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/arraybuffer/ArrayBuffer.isView<~lib/array/Array> - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 40 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/arraybuffer/ArrayBuffer.isView - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 41 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Uint8Array> - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 42 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Int32Array> - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 43 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/arraybuffer/ArrayBuffer.isView<~lib/dataview/DataView> - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 44 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8Array#constructor - local.set $2 - i32.const 2 - i32.const 2 - i32.const 3 - i32.const 432 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $4 - call $~lib/arraybuffer/ArrayBuffer.isView<~lib/array/Array> - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 47 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Uint8Array> - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 48 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#constructor - local.tee $3 - call $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Int32Array> - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 49 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - i32.const 0 - local.get $2 - call $~lib/typedarray/Uint8Array#get:buffer - local.tee $5 - i32.const 0 - i32.const 0 - call $~lib/dataview/DataView#constructor|trampoline - local.tee $6 - call $~lib/arraybuffer/ArrayBuffer.isView<~lib/dataview/DataView> - i32.eqz - if - i32.const 0 - i32.const 280 - i32.const 50 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - ) - (func $start (; 48 ;) (type $FUNCSIG$v) - call $start:std/arraybuffer - ) - (func $~lib/array/Array#__visit_impl (; 49 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/rt/pure/__visit (; 50 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.lt_u - if - return - end - local.get $0 - i32.const 16 - i32.sub - local.set $2 - block $break|0 - block $case5|0 - block $case4|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $1 - local.set $3 - local.get $3 - i32.const 1 - i32.eq - br_if $case0|0 - local.get $3 - i32.const 2 - i32.eq - br_if $case1|0 - local.get $3 - i32.const 3 - i32.eq - br_if $case2|0 - local.get $3 - i32.const 4 - i32.eq - br_if $case3|0 - local.get $3 - i32.const 5 - i32.eq - br_if $case4|0 - br $case5|0 - end - local.get $2 - call $~lib/rt/pure/decrement - br $break|0 - end - local.get $2 - i32.load offset=4 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 75 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $2 - i32.load offset=4 - i32.const 1 - i32.sub - i32.store offset=4 - local.get $2 - call $~lib/rt/pure/markGray - br $break|0 - end - local.get $2 - call $~lib/rt/pure/scan - br $break|0 - end - local.get $2 - i32.load offset=4 - local.set $3 - local.get $3 - i32.const -268435456 - i32.and - local.get $3 - i32.const 1 - i32.add - i32.const -268435456 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 86 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $3 - i32.const 1 - i32.add - i32.store offset=4 - local.get $3 - i32.const 1879048192 - i32.and - i32.const 0 - i32.ne - if - local.get $2 - call $~lib/rt/pure/scanBlack - end - br $break|0 - end - local.get $2 - call $~lib/rt/pure/collectWhite - br $break|0 - end - i32.const 0 - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 97 - i32.const 24 - call $~lib/builtins/abort - unreachable - end - end - ) - (func $~lib/rt/__visit_members (; 51 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - block $block$4$break - block $switch$1$default - block $switch$1$case$5 - block $switch$1$case$4 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$default - end - return - end - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - unreachable - end - local.get $0 - i32.load - local.tee $2 - if - local.get $2 - local.get $1 - call $~lib/rt/pure/__visit - end - return - ) - (func $null (; 52 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index 2398d4006c..2a29abe5c0 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -1854,7 +1854,7 @@ i32.const 0 i32.store offset=8 local.get $0 - i32.load + i32.load offset=4 local.tee $2 local.get $1 i32.ne @@ -1867,10 +1867,10 @@ end local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 i32.const 8 i32.store offset=8 @@ -1884,13 +1884,13 @@ if i32.const 280 i32.const 376 - i32.const 167 + i32.const 159 i32.const 44 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -1968,19 +1968,7 @@ call $~lib/rt/pure/__release local.get $3 ) - (func $~lib/typedarray/Uint8Array#get:buffer (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $0 - i32.load - i32.sub - ) - (func $~lib/polyfills/bswap (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const -16711936 i32.and @@ -1993,7 +1981,7 @@ i32.rotr i32.or ) - (func $~lib/dataview/DataView#getFloat32 (; 38 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) + (func $~lib/dataview/DataView#getFloat32 (; 36 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) local.get $1 i32.const 0 i32.lt_s @@ -2029,7 +2017,7 @@ f32.reinterpret_i32 end ) - (func $~lib/polyfills/bswap (; 39 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) + (func $~lib/polyfills/bswap (; 37 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) local.get $0 i64.const 8 i64.shr_u @@ -2055,7 +2043,7 @@ i64.const 32 i64.rotr ) - (func $~lib/dataview/DataView#getFloat64 (; 40 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) + (func $~lib/dataview/DataView#getFloat64 (; 38 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) i32.const 8 local.get $0 i32.load offset=8 @@ -2081,7 +2069,7 @@ f64.reinterpret_i64 end ) - (func $~lib/dataview/DataView#getInt8 (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/dataview/DataView#getInt8 (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -2100,7 +2088,7 @@ i32.add i32.load8_s ) - (func $~lib/polyfills/bswap (; 42 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 40 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 16 i32.shl @@ -2113,7 +2101,7 @@ i32.shl i32.or ) - (func $~lib/dataview/DataView#getInt16 (; 43 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getInt16 (; 41 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 i32.const 0 i32.lt_s @@ -2147,7 +2135,7 @@ end local.get $0 ) - (func $~lib/dataview/DataView#getInt32 (; 44 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getInt32 (; 42 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 i32.const 0 i32.lt_s @@ -2181,7 +2169,7 @@ end local.get $0 ) - (func $~lib/dataview/DataView#getInt64 (; 45 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + (func $~lib/dataview/DataView#getInt64 (; 43 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) (local $2 i64) i32.const 8 local.get $0 @@ -2207,7 +2195,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/dataview/DataView#getUint8 (; 46 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/dataview/DataView#getUint8 (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -2226,7 +2214,7 @@ i32.add i32.load8_u ) - (func $~lib/polyfills/bswap (; 47 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 8 i32.shl @@ -2237,7 +2225,7 @@ i32.shr_u i32.or ) - (func $~lib/dataview/DataView#getUint16 (; 48 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getUint16 (; 46 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 i32.const 0 i32.lt_s @@ -2271,7 +2259,7 @@ end local.get $0 ) - (func $~lib/dataview/DataView#getUint32 (; 49 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getUint32 (; 47 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 i32.const 0 i32.lt_s @@ -2305,7 +2293,7 @@ end local.get $0 ) - (func $~lib/dataview/DataView#getUint64 (; 50 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + (func $~lib/dataview/DataView#getUint64 (; 48 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) (local $2 i64) i32.const 8 local.get $0 @@ -2331,7 +2319,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/dataview/DataView#setFloat32 (; 51 ;) (type $FUNCSIG$vifi) (param $0 i32) (param $1 f32) (param $2 i32) + (func $~lib/dataview/DataView#setFloat32 (; 49 ;) (type $FUNCSIG$vifi) (param $0 i32) (param $1 f32) (param $2 i32) i32.const 4 local.get $0 i32.load offset=8 @@ -2359,7 +2347,7 @@ i32.store end ) - (func $~lib/dataview/DataView#setFloat64 (; 52 ;) (type $FUNCSIG$vidi) (param $0 i32) (param $1 f64) (param $2 i32) + (func $~lib/dataview/DataView#setFloat64 (; 50 ;) (type $FUNCSIG$vidi) (param $0 i32) (param $1 f64) (param $2 i32) i32.const 8 local.get $0 i32.load offset=8 @@ -2387,7 +2375,7 @@ i64.store end ) - (func $~lib/dataview/DataView#setInt8 (; 53 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/dataview/DataView#setInt8 (; 51 ;) (type $FUNCSIG$vi) (param $0 i32) i32.const 0 local.get $0 i32.load offset=8 @@ -2405,7 +2393,7 @@ i32.const 108 i32.store8 ) - (func $~lib/dataview/DataView#setInt16 (; 54 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/dataview/DataView#setInt16 (; 52 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) i32.const 2 local.get $0 i32.load offset=8 @@ -2429,7 +2417,7 @@ end i32.store16 ) - (func $~lib/dataview/DataView#setInt32 (; 55 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/dataview/DataView#setInt32 (; 53 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) i32.const 4 local.get $0 i32.load offset=8 @@ -2453,7 +2441,7 @@ end i32.store ) - (func $~lib/dataview/DataView#setInt64 (; 56 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) + (func $~lib/dataview/DataView#setInt64 (; 54 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) i32.const 8 local.get $0 i32.load offset=8 @@ -2477,7 +2465,7 @@ end i64.store ) - (func $~lib/dataview/DataView#setUint8 (; 57 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/dataview/DataView#setUint8 (; 55 ;) (type $FUNCSIG$vi) (param $0 i32) i32.const 0 local.get $0 i32.load offset=8 @@ -2495,7 +2483,7 @@ i32.const 238 i32.store8 ) - (func $~lib/dataview/DataView#setUint16 (; 58 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/dataview/DataView#setUint16 (; 56 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) i32.const 2 local.get $0 i32.load offset=8 @@ -2519,7 +2507,7 @@ end i32.store16 ) - (func $~lib/dataview/DataView#setUint32 (; 59 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/dataview/DataView#setUint32 (; 57 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) i32.const 4 local.get $0 i32.load offset=8 @@ -2543,7 +2531,7 @@ end i32.store ) - (func $~lib/dataview/DataView#setUint64 (; 60 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) + (func $~lib/dataview/DataView#setUint64 (; 58 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) i32.const 8 local.get $0 i32.load offset=8 @@ -2567,7 +2555,7 @@ end i64.store ) - (func $~lib/dataview/DataView#constructor|trampoline (; 61 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/dataview/DataView#constructor|trampoline (; 59 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block $2of2 block $1of2 @@ -2588,12 +2576,10 @@ local.get $1 call $~lib/dataview/DataView#constructor ) - (func $start:std/dataview (; 62 ;) (type $FUNCSIG$v) + (func $start:std/dataview (; 60 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i32) i32.const 12 i32.const 3 call $~lib/rt/tlsf/__alloc @@ -2632,10 +2618,12 @@ i32.const 95 call $~lib/typedarray/Uint8Array#__set local.get $1 - call $~lib/typedarray/Uint8Array#get:buffer - local.tee $3 + i32.load offset=4 + local.get $1 + i32.load local.get $1 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.load offset=4 + i32.sub local.get $1 i32.load offset=8 call $~lib/dataview/DataView#constructor @@ -4116,14 +4104,16 @@ i32.const 1 global.set $~lib/argc local.get $1 - call $~lib/typedarray/Uint8Array#get:buffer - local.tee $4 + i32.load offset=4 call $~lib/dataview/DataView#constructor|trampoline local.set $2 local.get $0 call $~lib/rt/pure/__release local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.load offset=4 + local.get $2 + i32.load + i32.sub if i32.const 0 i32.const 480 @@ -4146,17 +4136,13 @@ end local.get $1 call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release local.get $2 call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release ) - (func $start (; 63 ;) (type $FUNCSIG$v) + (func $start (; 61 ;) (type $FUNCSIG$v) call $start:std/dataview ) - (func $~lib/rt/pure/__visit (; 64 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/rt/pure/__visit (; 62 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) local.get $0 i32.const 556 i32.lt_u @@ -4266,15 +4252,26 @@ unreachable end ) - (func $~lib/rt/__visit_members (; 65 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/rt/__visit_members (; 63 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) block $switch$1$default - block $switch$1$case$4 - block $switch$1$case$2 + block $switch$1$case$6 + block $switch$1$case$4 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$4 $switch$1$case$6 $switch$1$default + end + return + end + local.get $0 + i32.load offset=4 + local.tee $0 + if local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$default + local.get $1 + call $~lib/rt/pure/__visit end return end @@ -4290,7 +4287,7 @@ end unreachable ) - (func $null (; 66 ;) (type $FUNCSIG$v) + (func $null (; 64 ;) (type $FUNCSIG$v) nop ) ) diff --git a/tests/compiler/std/dataview.untouched.wat b/tests/compiler/std/dataview.untouched.wat index 7ee1aa8ce3..a088bd3c81 100644 --- a/tests/compiler/std/dataview.untouched.wat +++ b/tests/compiler/std/dataview.untouched.wat @@ -3553,7 +3553,7 @@ if i32.const 24 i32.const 72 - i32.const 14 + i32.const 22 i32.const 56 call $~lib/builtins/abort unreachable @@ -3592,7 +3592,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load + i32.load offset=4 local.tee $4 i32.ne if @@ -3603,10 +3603,10 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store + i32.store offset=4 local.get $0 local.get $3 - i32.store offset=4 + i32.store local.get $0 local.get $1 i32.store offset=8 @@ -3636,13 +3636,13 @@ if i32.const 280 i32.const 376 - i32.const 167 + i32.const 159 i32.const 44 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -3730,23 +3730,14 @@ call $~lib/rt/pure/__release local.get $0 ) - (func $~lib/typedarray/Uint8Array#get:buffer (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=4 - local.get $0 - i32.load i32.sub ) - (func $~lib/arraybuffer/ArrayBufferView#get:byteLength (; 39 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=8 - ) - (func $~lib/polyfills/bswap (; 40 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const -16711936 i32.and @@ -3760,7 +3751,7 @@ i32.or return ) - (func $~lib/dataview/DataView#getFloat32 (; 41 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) + (func $~lib/dataview/DataView#getFloat32 (; 39 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) local.get $1 i32.const 0 i32.lt_s @@ -3796,7 +3787,7 @@ f32.reinterpret_i32 end ) - (func $~lib/polyfills/bswap (; 42 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) + (func $~lib/polyfills/bswap (; 40 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) (local $1 i64) (local $2 i64) (local $3 i64) @@ -3835,7 +3826,7 @@ i64.rotr return ) - (func $~lib/dataview/DataView#getFloat64 (; 43 ;) (type $FUNCSIG$diii) (param $0 i32) (param $1 i32) (param $2 i32) (result f64) + (func $~lib/dataview/DataView#getFloat64 (; 41 ;) (type $FUNCSIG$diii) (param $0 i32) (param $1 i32) (param $2 i32) (result f64) local.get $1 i32.const 0 i32.lt_s @@ -3871,7 +3862,7 @@ f64.reinterpret_i64 end ) - (func $~lib/dataview/DataView#getInt8 (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/dataview/DataView#getInt8 (; 42 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -3890,7 +3881,7 @@ i32.add i32.load8_s ) - (func $~lib/polyfills/bswap (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 43 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 8 i32.shl @@ -3906,7 +3897,7 @@ i32.or return ) - (func $~lib/dataview/DataView#getInt16 (; 46 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getInt16 (; 44 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $1 i32.const 0 @@ -3940,7 +3931,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/polyfills/bswap (; 47 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const -16711936 i32.and @@ -3954,7 +3945,7 @@ i32.or return ) - (func $~lib/dataview/DataView#getInt32 (; 48 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getInt32 (; 46 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $1 i32.const 0 @@ -3988,7 +3979,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/polyfills/bswap (; 49 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) + (func $~lib/polyfills/bswap (; 47 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) (local $1 i64) (local $2 i64) (local $3 i64) @@ -4027,7 +4018,7 @@ i64.rotr return ) - (func $~lib/dataview/DataView#getInt64 (; 50 ;) (type $FUNCSIG$jiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i64) + (func $~lib/dataview/DataView#getInt64 (; 48 ;) (type $FUNCSIG$jiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i64) (local $3 i64) local.get $1 i32.const 0 @@ -4061,7 +4052,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/dataview/DataView#getUint8 (; 51 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/dataview/DataView#getUint8 (; 49 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -4080,7 +4071,7 @@ i32.add i32.load8_u ) - (func $~lib/polyfills/bswap (; 52 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 50 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 8 i32.shl @@ -4094,7 +4085,7 @@ i32.or return ) - (func $~lib/dataview/DataView#getUint16 (; 53 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getUint16 (; 51 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $1 i32.const 0 @@ -4128,7 +4119,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/dataview/DataView#getUint32 (; 54 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getUint32 (; 52 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $1 i32.const 0 @@ -4162,7 +4153,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/dataview/DataView#getUint64 (; 55 ;) (type $FUNCSIG$jiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i64) + (func $~lib/dataview/DataView#getUint64 (; 53 ;) (type $FUNCSIG$jiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i64) (local $3 i64) local.get $1 i32.const 0 @@ -4196,7 +4187,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/dataview/DataView#setFloat32 (; 56 ;) (type $FUNCSIG$viifi) (param $0 i32) (param $1 i32) (param $2 f32) (param $3 i32) + (func $~lib/dataview/DataView#setFloat32 (; 54 ;) (type $FUNCSIG$viifi) (param $0 i32) (param $1 i32) (param $2 f32) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -4234,7 +4225,7 @@ i32.store end ) - (func $~lib/dataview/DataView#setFloat64 (; 57 ;) (type $FUNCSIG$viidi) (param $0 i32) (param $1 i32) (param $2 f64) (param $3 i32) + (func $~lib/dataview/DataView#setFloat64 (; 55 ;) (type $FUNCSIG$viidi) (param $0 i32) (param $1 i32) (param $2 f64) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -4272,7 +4263,7 @@ i64.store end ) - (func $~lib/dataview/DataView#setInt8 (; 58 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/dataview/DataView#setInt8 (; 56 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 local.get $0 i32.load offset=8 @@ -4292,7 +4283,7 @@ local.get $2 i32.store8 ) - (func $~lib/dataview/DataView#setInt16 (; 59 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (func $~lib/dataview/DataView#setInt16 (; 57 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -4324,7 +4315,7 @@ end i32.store16 ) - (func $~lib/dataview/DataView#setInt32 (; 60 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (func $~lib/dataview/DataView#setInt32 (; 58 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -4356,7 +4347,7 @@ end i32.store ) - (func $~lib/dataview/DataView#setInt64 (; 61 ;) (type $FUNCSIG$viiji) (param $0 i32) (param $1 i32) (param $2 i64) (param $3 i32) + (func $~lib/dataview/DataView#setInt64 (; 59 ;) (type $FUNCSIG$viiji) (param $0 i32) (param $1 i32) (param $2 i64) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -4388,7 +4379,7 @@ end i64.store ) - (func $~lib/dataview/DataView#setUint8 (; 62 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/dataview/DataView#setUint8 (; 60 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $1 local.get $0 i32.load offset=8 @@ -4408,7 +4399,7 @@ local.get $2 i32.store8 ) - (func $~lib/dataview/DataView#setUint16 (; 63 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (func $~lib/dataview/DataView#setUint16 (; 61 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -4440,7 +4431,7 @@ end i32.store16 ) - (func $~lib/dataview/DataView#setUint32 (; 64 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) + (func $~lib/dataview/DataView#setUint32 (; 62 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -4472,7 +4463,7 @@ end i32.store ) - (func $~lib/dataview/DataView#setUint64 (; 65 ;) (type $FUNCSIG$viiji) (param $0 i32) (param $1 i32) (param $2 i64) (param $3 i32) + (func $~lib/dataview/DataView#setUint64 (; 63 ;) (type $FUNCSIG$viiji) (param $0 i32) (param $1 i32) (param $2 i64) (param $3 i32) local.get $1 i32.const 0 i32.lt_s @@ -4504,7 +4495,7 @@ end i64.store ) - (func $~lib/dataview/DataView#constructor|trampoline (; 66 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (func $~lib/dataview/DataView#constructor|trampoline (; 64 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) block $2of2 block $1of2 block $0of2 @@ -4529,23 +4520,21 @@ local.get $3 call $~lib/dataview/DataView#constructor ) - (func $~lib/dataview/DataView#get:byteOffset (; 67 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/dataview/DataView#get:byteOffset (; 65 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=4 local.get $0 i32.load i32.sub ) - (func $~lib/dataview/DataView#get:byteLength (; 68 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/dataview/DataView#get:byteLength (; 66 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.load offset=8 ) - (func $start:std/dataview (; 69 ;) (type $FUNCSIG$v) + (func $start:std/dataview (; 67 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) - (local $3 i32) - (local $4 i32) i32.const 0 i32.const 8 call $~lib/typedarray/Uint8Array#constructor @@ -4584,15 +4573,14 @@ call $~lib/typedarray/Uint8Array#__set i32.const 0 local.get $0 - call $~lib/typedarray/Uint8Array#get:buffer - local.tee $1 + i32.load offset=4 local.get $0 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength + i32.load offset=8 call $~lib/dataview/DataView#constructor - local.set $2 - local.get $2 + local.set $1 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -4607,7 +4595,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -4622,7 +4610,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -4637,7 +4625,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -4652,7 +4640,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -4667,7 +4655,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -4682,7 +4670,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -4697,7 +4685,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -4712,7 +4700,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -4727,7 +4715,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -4742,7 +4730,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getFloat64 @@ -4757,7 +4745,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getFloat64 @@ -4772,7 +4760,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt8 i32.const -10 @@ -4786,7 +4774,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getInt8 i32.const -32 @@ -4800,7 +4788,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 2 call $~lib/dataview/DataView#getInt8 i32.const 88 @@ -4814,7 +4802,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 call $~lib/dataview/DataView#getInt8 i32.const -97 @@ -4828,7 +4816,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 4 call $~lib/dataview/DataView#getInt8 i32.const -126 @@ -4842,7 +4830,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 5 call $~lib/dataview/DataView#getInt8 i32.const 101 @@ -4856,7 +4844,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 6 call $~lib/dataview/DataView#getInt8 i32.const 67 @@ -4870,7 +4858,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 7 call $~lib/dataview/DataView#getInt8 i32.const 95 @@ -4884,7 +4872,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -4903,7 +4891,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -4922,7 +4910,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -4941,7 +4929,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -4960,7 +4948,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -4979,7 +4967,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 5 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -4998,7 +4986,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 6 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -5017,7 +5005,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -5036,7 +5024,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -5055,7 +5043,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -5074,7 +5062,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -5093,7 +5081,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -5112,7 +5100,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 5 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -5131,7 +5119,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 6 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -5150,7 +5138,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -5165,7 +5153,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -5180,7 +5168,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -5195,7 +5183,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -5210,7 +5198,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -5225,7 +5213,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -5240,7 +5228,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -5255,7 +5243,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -5270,7 +5258,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -5285,7 +5273,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -5300,7 +5288,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt64 @@ -5315,7 +5303,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt64 @@ -5330,7 +5318,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint8 i32.const 246 @@ -5344,7 +5332,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 call $~lib/dataview/DataView#getUint8 i32.const 224 @@ -5358,7 +5346,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 2 call $~lib/dataview/DataView#getUint8 i32.const 88 @@ -5372,7 +5360,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 call $~lib/dataview/DataView#getUint8 i32.const 159 @@ -5386,7 +5374,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 4 call $~lib/dataview/DataView#getUint8 i32.const 130 @@ -5400,7 +5388,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 5 call $~lib/dataview/DataView#getUint8 i32.const 101 @@ -5414,7 +5402,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 6 call $~lib/dataview/DataView#getUint8 i32.const 67 @@ -5428,7 +5416,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 7 call $~lib/dataview/DataView#getUint8 i32.const 95 @@ -5442,7 +5430,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -5459,7 +5447,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -5476,7 +5464,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -5493,7 +5481,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -5510,7 +5498,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -5527,7 +5515,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 5 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -5544,7 +5532,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 6 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -5561,7 +5549,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -5578,7 +5566,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -5595,7 +5583,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -5612,7 +5600,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -5629,7 +5617,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -5646,7 +5634,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 5 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -5663,7 +5651,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 6 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -5680,7 +5668,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -5695,7 +5683,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -5710,7 +5698,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 2 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -5725,7 +5713,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -5740,7 +5728,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 4 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -5755,7 +5743,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -5770,7 +5758,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 1 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -5785,7 +5773,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 2 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -5800,7 +5788,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 3 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -5815,7 +5803,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 4 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -5830,7 +5818,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint64 @@ -5845,7 +5833,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint64 @@ -5860,12 +5848,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 f32.const 1.5976661625240943e-18 i32.const 1 call $~lib/dataview/DataView#setFloat32 - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getFloat32 @@ -5880,12 +5868,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 f32.const 1976281973381696323584 i32.const 0 call $~lib/dataview/DataView#setFloat32 - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getFloat32 @@ -5900,12 +5888,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 f64.const -1094252199637739024055454e124 i32.const 1 call $~lib/dataview/DataView#setFloat64 - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getFloat64 @@ -5920,12 +5908,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 f64.const 6.022586634778589e-103 i32.const 0 call $~lib/dataview/DataView#setFloat64 - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getFloat64 @@ -5940,11 +5928,11 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 108 call $~lib/dataview/DataView#setInt8 - local.get $2 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getInt8 i32.const 108 @@ -5958,12 +5946,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const -13360 i32.const 1 call $~lib/dataview/DataView#setInt16 - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt16 @@ -5982,12 +5970,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 14689 i32.const 0 call $~lib/dataview/DataView#setInt16 - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt16 @@ -6006,12 +5994,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 1204680201 i32.const 1 call $~lib/dataview/DataView#setInt32 - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt32 @@ -6026,12 +6014,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 660673230 i32.const 0 call $~lib/dataview/DataView#setInt32 - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt32 @@ -6046,12 +6034,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i64.const -3290739641816099749 i32.const 1 call $~lib/dataview/DataView#setInt64 - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getInt64 @@ -6066,12 +6054,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i64.const 8178932412950708047 i32.const 0 call $~lib/dataview/DataView#setInt64 - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getInt64 @@ -6086,11 +6074,11 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 238 call $~lib/dataview/DataView#setUint8 - local.get $2 + local.get $1 i32.const 0 call $~lib/dataview/DataView#getUint8 i32.const 238 @@ -6104,12 +6092,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 58856 i32.const 1 call $~lib/dataview/DataView#setUint16 - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint16 @@ -6126,12 +6114,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const 60400 i32.const 0 call $~lib/dataview/DataView#setUint16 - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint16 @@ -6148,12 +6136,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const -846805744 i32.const 1 call $~lib/dataview/DataView#setUint32 - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint32 @@ -6168,12 +6156,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i32.const -1510791631 i32.const 0 call $~lib/dataview/DataView#setUint32 - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint32 @@ -6188,12 +6176,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i64.const 2334704782995986958 i32.const 1 call $~lib/dataview/DataView#setUint64 - local.get $2 + local.get $1 i32.const 0 i32.const 1 call $~lib/dataview/DataView#getUint64 @@ -6208,12 +6196,12 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 i32.const 0 i64.const -7123186897289856329 i32.const 0 call $~lib/dataview/DataView#setUint64 - local.get $2 + local.get $1 i32.const 0 i32.const 0 call $~lib/dataview/DataView#getUint64 @@ -6232,17 +6220,16 @@ global.set $~lib/argc i32.const 0 local.get $0 - call $~lib/typedarray/Uint8Array#get:buffer - local.tee $3 + i32.load offset=4 i32.const 0 i32.const 0 call $~lib/dataview/DataView#constructor|trampoline - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 local.set $2 + local.get $1 + call $~lib/rt/pure/__release local.get $2 + local.set $1 + local.get $1 call $~lib/dataview/DataView#get:byteOffset i32.const 0 i32.eq @@ -6255,7 +6242,7 @@ call $~lib/builtins/abort unreachable end - local.get $2 + local.get $1 call $~lib/dataview/DataView#get:byteLength i32.const 8 i32.eq @@ -6272,15 +6259,11 @@ call $~lib/rt/pure/__release local.get $1 call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release ) - (func $start (; 70 ;) (type $FUNCSIG$v) + (func $start (; 68 ;) (type $FUNCSIG$v) call $start:std/dataview ) - (func $~lib/rt/pure/__visit (; 71 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/rt/pure/__visit (; 69 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) local.get $0 @@ -6410,16 +6393,27 @@ end end ) - (func $~lib/rt/__visit_members (; 72 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/rt/__visit_members (; 70 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) block $switch$1$default - block $switch$1$case$4 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$default + block $switch$1$case$6 + block $switch$1$case$4 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$4 $switch$1$case$6 $switch$1$default + end + return + end + local.get $0 + i32.load offset=4 + local.tee $2 + if + local.get $2 + local.get $1 + call $~lib/rt/pure/__visit end return end @@ -6435,6 +6429,6 @@ end unreachable ) - (func $null (; 73 ;) (type $FUNCSIG$v) + (func $null (; 71 ;) (type $FUNCSIG$v) ) ) diff --git a/tests/compiler/std/libm.untouched.wat b/tests/compiler/std/libm.untouched.wat index 7468136d4d..e69de29bb2 100644 --- a/tests/compiler/std/libm.untouched.wat +++ b/tests/compiler/std/libm.untouched.wat @@ -1,12546 +0,0 @@ -(module - (type $FUNCSIG$dd (func (param f64) (result f64))) - (type $FUNCSIG$id (func (param f64) (result i32))) - (type $FUNCSIG$ddd (func (param f64 f64) (result f64))) - (type $FUNCSIG$idj (func (param f64 i64) (result i32))) - (type $FUNCSIG$ddi (func (param f64 i32) (result f64))) - (type $FUNCSIG$dddi (func (param f64 f64 i32) (result f64))) - (type $FUNCSIG$ff (func (param f32) (result f32))) - (type $FUNCSIG$if (func (param f32) (result i32))) - (type $FUNCSIG$fff (func (param f32 f32) (result f32))) - (type $FUNCSIG$ffi (func (param f32 i32) (result f32))) - (type $FUNCSIG$v (func)) - (memory $0 1) - (data (i32.const 8) "\c0\00\00\00\01\00\00\00\00\00\00\00\c0\00\00\00n\83\f9\a2\00\00\00\00\d1W\'\fc)\15DN\99\95b\db\c0\dd4\f5\abcQ\feA\90C<:n$\b7a\c5\bb\de\ea.I\06\e0\d2MB\1c\eb\1d\fe\1c\92\d1\t\f55\82\e8>\a7)\b1&p\9c\e9\84D\bb.9\d6\919A~_\b4\8b_\84\9c\f49S\83\ff\97\f8\1f;(\f9\bd\8b\11/\ef\0f\98\05\de\cf~6m\1fm\nZf?FO\b7\t\cb\'\c7\ba\'u-\ea_\9e\f79\07={\f1\e5\eb\b1_\fbk\ea\92R\8aF0\03V\08]\8d\1f \bc\cf\f0\abk{\fca\91\e3\a9\1d6\f4\9a_\85\99e\08\1b\e6^\80\d8\ff\8d@h\a0\14W\15\06\061\'sM") - (data (i32.const 216) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\18\00\00\00\18\00\00\00\c0\00\00\00\18\00\00\00") - (data (i32.const 248) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00)\15DNn\83\f9\a2\c0\dd4\f5\d1W\'\fcA\90C<\99\95b\dba\c5\bb\de\abcQ\fe") - (data (i32.const 296) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\08\01\00\00\08\01\00\00 \00\00\00\04\00\00\00") - (table $0 1 funcref) - (elem (i32.const 0) $null) - (global $~lib/math/NativeMath.E f64 (f64.const 2.718281828459045)) - (global $../../lib/libm/assembly/libm/E f64 (f64.const 2.718281828459045)) - (global $~lib/math/NativeMath.LN10 f64 (f64.const 2.302585092994046)) - (global $../../lib/libm/assembly/libm/LN10 f64 (f64.const 2.302585092994046)) - (global $~lib/math/NativeMath.LN2 f64 (f64.const 0.6931471805599453)) - (global $../../lib/libm/assembly/libm/LN2 f64 (f64.const 0.6931471805599453)) - (global $~lib/math/NativeMath.LOG10E f64 (f64.const 0.4342944819032518)) - (global $../../lib/libm/assembly/libm/LOG10E f64 (f64.const 0.4342944819032518)) - (global $~lib/math/NativeMath.LOG2E f64 (f64.const 1.4426950408889634)) - (global $../../lib/libm/assembly/libm/LOG2E f64 (f64.const 1.4426950408889634)) - (global $~lib/math/NativeMath.PI f64 (f64.const 3.141592653589793)) - (global $../../lib/libm/assembly/libm/PI f64 (f64.const 3.141592653589793)) - (global $~lib/math/NativeMath.SQRT1_2 f64 (f64.const 0.7071067811865476)) - (global $../../lib/libm/assembly/libm/SQRT1_2 f64 (f64.const 0.7071067811865476)) - (global $~lib/math/NativeMath.SQRT2 f64 (f64.const 1.4142135623730951)) - (global $../../lib/libm/assembly/libm/SQRT2 f64 (f64.const 1.4142135623730951)) - (global $~lib/math/NativeMathf.E f32 (f32.const 2.7182817459106445)) - (global $../../lib/libm/assembly/libmf/E f32 (f32.const 2.7182817459106445)) - (global $~lib/math/NativeMathf.LN10 f32 (f32.const 2.3025851249694824)) - (global $../../lib/libm/assembly/libmf/LN10 f32 (f32.const 2.3025851249694824)) - (global $~lib/math/NativeMathf.LN2 f32 (f32.const 0.6931471824645996)) - (global $../../lib/libm/assembly/libmf/LN2 f32 (f32.const 0.6931471824645996)) - (global $~lib/math/NativeMathf.LOG10E f32 (f32.const 0.4342944920063019)) - (global $../../lib/libm/assembly/libmf/LOG10E f32 (f32.const 0.4342944920063019)) - (global $~lib/math/NativeMathf.LOG2E f32 (f32.const 1.4426950216293335)) - (global $../../lib/libm/assembly/libmf/LOG2E f32 (f32.const 1.4426950216293335)) - (global $~lib/math/NativeMathf.PI f32 (f32.const 3.1415927410125732)) - (global $../../lib/libm/assembly/libmf/PI f32 (f32.const 3.1415927410125732)) - (global $~lib/math/NativeMathf.SQRT1_2 f32 (f32.const 0.7071067690849304)) - (global $../../lib/libm/assembly/libmf/SQRT1_2 f32 (f32.const 0.7071067690849304)) - (global $~lib/math/NativeMathf.SQRT2 f32 (f32.const 1.4142135381698608)) - (global $../../lib/libm/assembly/libmf/SQRT2 f32 (f32.const 1.4142135381698608)) - (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) - (global $~lib/math/rempio2_y0 (mut f64) (f64.const 0)) - (global $~lib/math/rempio2_y1 (mut f64) (f64.const 0)) - (global $~lib/math/PIO2_TABLE i32 (i32.const 232)) - (global $~lib/math/res128_hi (mut i64) (i64.const 0)) - (global $~lib/math/rempio2f_y (mut f64) (f64.const 0)) - (global $~lib/math/PIO2F_TABLE i32 (i32.const 312)) - (export "memory" (memory $0)) - (export "libm.E" (global $../../lib/libm/assembly/libm/E)) - (export "libm.LN10" (global $../../lib/libm/assembly/libm/LN10)) - (export "libm.LN2" (global $../../lib/libm/assembly/libm/LN2)) - (export "libm.LOG10E" (global $../../lib/libm/assembly/libm/LOG10E)) - (export "libm.LOG2E" (global $../../lib/libm/assembly/libm/LOG2E)) - (export "libm.PI" (global $../../lib/libm/assembly/libm/PI)) - (export "libm.SQRT1_2" (global $../../lib/libm/assembly/libm/SQRT1_2)) - (export "libm.SQRT2" (global $../../lib/libm/assembly/libm/SQRT2)) - (export "libm.abs" (func $../../lib/libm/assembly/libm/abs)) - (export "libm.acos" (func $../../lib/libm/assembly/libm/acos)) - (export "libm.acosh" (func $../../lib/libm/assembly/libm/acosh)) - (export "libm.asin" (func $../../lib/libm/assembly/libm/asin)) - (export "libm.asinh" (func $../../lib/libm/assembly/libm/asinh)) - (export "libm.atan" (func $../../lib/libm/assembly/libm/atan)) - (export "libm.atanh" (func $../../lib/libm/assembly/libm/atanh)) - (export "libm.atan2" (func $../../lib/libm/assembly/libm/atan2)) - (export "libm.cbrt" (func $../../lib/libm/assembly/libm/cbrt)) - (export "libm.ceil" (func $../../lib/libm/assembly/libm/ceil)) - (export "libm.clz32" (func $../../lib/libm/assembly/libm/clz32)) - (export "libm.cos" (func $../../lib/libm/assembly/libm/cos)) - (export "libm.cosh" (func $../../lib/libm/assembly/libm/cosh)) - (export "libm.exp" (func $../../lib/libm/assembly/libm/exp)) - (export "libm.expm1" (func $../../lib/libm/assembly/libm/expm1)) - (export "libm.floor" (func $../../lib/libm/assembly/libm/floor)) - (export "libm.fround" (func $../../lib/libm/assembly/libm/fround)) - (export "libm.hypot" (func $../../lib/libm/assembly/libm/hypot)) - (export "libm.imul" (func $../../lib/libm/assembly/libm/imul)) - (export "libm.log" (func $../../lib/libm/assembly/libm/log)) - (export "libm.log10" (func $../../lib/libm/assembly/libm/log10)) - (export "libm.log1p" (func $../../lib/libm/assembly/libm/log1p)) - (export "libm.log2" (func $../../lib/libm/assembly/libm/log2)) - (export "libm.max" (func $../../lib/libm/assembly/libm/max)) - (export "libm.min" (func $../../lib/libm/assembly/libm/min)) - (export "libm.pow" (func $../../lib/libm/assembly/libm/pow)) - (export "libm.round" (func $../../lib/libm/assembly/libm/round)) - (export "libm.sign" (func $../../lib/libm/assembly/libm/sign)) - (export "libm.sin" (func $../../lib/libm/assembly/libm/sin)) - (export "libm.sinh" (func $../../lib/libm/assembly/libm/sinh)) - (export "libm.sqrt" (func $../../lib/libm/assembly/libm/sqrt)) - (export "libm.tan" (func $../../lib/libm/assembly/libm/tan)) - (export "libm.tanh" (func $../../lib/libm/assembly/libm/tanh)) - (export "libm.trunc" (func $../../lib/libm/assembly/libm/trunc)) - (export "libmf.E" (global $../../lib/libm/assembly/libmf/E)) - (export "libmf.LN10" (global $../../lib/libm/assembly/libmf/LN10)) - (export "libmf.LN2" (global $../../lib/libm/assembly/libmf/LN2)) - (export "libmf.LOG10E" (global $../../lib/libm/assembly/libmf/LOG10E)) - (export "libmf.LOG2E" (global $../../lib/libm/assembly/libmf/LOG2E)) - (export "libmf.PI" (global $../../lib/libm/assembly/libmf/PI)) - (export "libmf.SQRT1_2" (global $../../lib/libm/assembly/libmf/SQRT1_2)) - (export "libmf.SQRT2" (global $../../lib/libm/assembly/libmf/SQRT2)) - (export "libmf.abs" (func $../../lib/libm/assembly/libmf/abs)) - (export "libmf.acos" (func $../../lib/libm/assembly/libmf/acos)) - (export "libmf.acosh" (func $../../lib/libm/assembly/libmf/acosh)) - (export "libmf.asin" (func $../../lib/libm/assembly/libmf/asin)) - (export "libmf.asinh" (func $../../lib/libm/assembly/libmf/asinh)) - (export "libmf.atan" (func $../../lib/libm/assembly/libmf/atan)) - (export "libmf.atanh" (func $../../lib/libm/assembly/libmf/atanh)) - (export "libmf.atan2" (func $../../lib/libm/assembly/libmf/atan2)) - (export "libmf.cbrt" (func $../../lib/libm/assembly/libmf/cbrt)) - (export "libmf.ceil" (func $../../lib/libm/assembly/libmf/ceil)) - (export "libmf.clz32" (func $../../lib/libm/assembly/libmf/clz32)) - (export "libmf.cos" (func $../../lib/libm/assembly/libmf/cos)) - (export "libmf.cosh" (func $../../lib/libm/assembly/libmf/cosh)) - (export "libmf.exp" (func $../../lib/libm/assembly/libmf/exp)) - (export "libmf.expm1" (func $../../lib/libm/assembly/libmf/expm1)) - (export "libmf.floor" (func $../../lib/libm/assembly/libmf/floor)) - (export "libmf.fround" (func $../../lib/libm/assembly/libmf/fround)) - (export "libmf.hypot" (func $../../lib/libm/assembly/libmf/hypot)) - (export "libmf.imul" (func $../../lib/libm/assembly/libmf/imul)) - (export "libmf.log" (func $../../lib/libm/assembly/libmf/log)) - (export "libmf.log10" (func $../../lib/libm/assembly/libmf/log10)) - (export "libmf.log1p" (func $../../lib/libm/assembly/libmf/log1p)) - (export "libmf.log2" (func $../../lib/libm/assembly/libmf/log2)) - (export "libmf.max" (func $../../lib/libm/assembly/libmf/max)) - (export "libmf.min" (func $../../lib/libm/assembly/libmf/min)) - (export "libmf.pow" (func $../../lib/libm/assembly/libmf/pow)) - (export "libmf.round" (func $../../lib/libm/assembly/libmf/round)) - (export "libmf.sign" (func $../../lib/libm/assembly/libmf/sign)) - (export "libmf.sin" (func $../../lib/libm/assembly/libmf/sin)) - (export "libmf.sinh" (func $../../lib/libm/assembly/libmf/sinh)) - (export "libmf.sqrt" (func $../../lib/libm/assembly/libmf/sqrt)) - (export "libmf.tan" (func $../../lib/libm/assembly/libmf/tan)) - (export "libmf.tanh" (func $../../lib/libm/assembly/libmf/tanh)) - (export "libmf.trunc" (func $../../lib/libm/assembly/libmf/trunc)) - (func $../../lib/libm/assembly/libm/abs (; 0 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 f64) - local.get $0 - local.set $1 - local.get $1 - f64.abs - ) - (func $~lib/math/R (; 1 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 f64) - (local $2 f64) - local.get $0 - f64.const 0.16666666666666666 - local.get $0 - f64.const -0.3255658186224009 - local.get $0 - f64.const 0.20121253213486293 - local.get $0 - f64.const -0.04005553450067941 - local.get $0 - f64.const 7.915349942898145e-04 - local.get $0 - f64.const 3.479331075960212e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $1 - f64.const 1 - local.get $0 - f64.const -2.403394911734414 - local.get $0 - f64.const 2.0209457602335057 - local.get $0 - f64.const -0.6882839716054533 - local.get $0 - f64.const 0.07703815055590194 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $2 - local.get $1 - local.get $2 - f64.div - ) - (func $~lib/math/NativeMath.acos (; 2 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - local.get $0 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1072693248 - i32.ge_u - if - local.get $0 - i64.reinterpret_f64 - i32.wrap_i64 - local.set $3 - local.get $2 - i32.const 1072693248 - i32.sub - local.get $3 - i32.or - i32.const 0 - i32.eq - if - local.get $1 - i32.const 31 - i32.shr_u - if - f64.const 2 - f64.const 1.5707963267948966 - f64.mul - f32.const 7.52316384526264e-37 - f64.promote_f32 - f64.add - return - end - f64.const 0 - return - end - f64.const 0 - local.get $0 - local.get $0 - f64.sub - f64.div - return - end - local.get $2 - i32.const 1071644672 - i32.lt_u - if - local.get $2 - i32.const 1012924416 - i32.le_u - if - f64.const 1.5707963267948966 - f32.const 7.52316384526264e-37 - f64.promote_f32 - f64.add - return - end - f64.const 1.5707963267948966 - local.get $0 - f64.const 6.123233995736766e-17 - local.get $0 - local.get $0 - local.get $0 - f64.mul - call $~lib/math/R - f64.mul - f64.sub - f64.sub - f64.sub - return - end - local.get $1 - i32.const 31 - i32.shr_u - if - f64.const 0.5 - local.get $0 - f64.const 0.5 - f64.mul - f64.add - local.set $6 - local.get $6 - f64.sqrt - local.set $4 - local.get $6 - call $~lib/math/R - local.get $4 - f64.mul - f64.const 6.123233995736766e-17 - f64.sub - local.set $5 - f64.const 2 - f64.const 1.5707963267948966 - local.get $4 - local.get $5 - f64.add - f64.sub - f64.mul - return - end - f64.const 0.5 - local.get $0 - f64.const 0.5 - f64.mul - f64.sub - local.set $6 - local.get $6 - f64.sqrt - local.set $4 - local.get $4 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $7 - local.get $6 - local.get $7 - local.get $7 - f64.mul - f64.sub - local.get $4 - local.get $7 - f64.add - f64.div - local.set $8 - local.get $6 - call $~lib/math/R - local.get $4 - f64.mul - local.get $8 - f64.add - local.set $5 - f64.const 2 - local.get $7 - local.get $5 - f64.add - f64.mul - ) - (func $../../lib/libm/assembly/libm/acos (; 3 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.acos - ) - (func $~lib/math/NativeMath.log1p (; 4 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 i32) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - (local $13 f64) - (local $14 f64) - (local $15 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - i32.const 1 - local.set $3 - f64.const 0 - local.set $4 - f64.const 0 - local.set $5 - local.get $2 - i32.const 1071284858 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $2 - i32.const 31 - i32.shr_u - end - if - local.get $2 - i32.const -1074790400 - i32.ge_u - if - local.get $0 - f64.const -1 - f64.eq - if - local.get $0 - f64.const 0 - f64.div - return - end - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.div - return - end - local.get $2 - i32.const 1 - i32.shl - i32.const 2034237440 - i32.lt_u - if - local.get $0 - return - end - local.get $2 - i32.const -1076707644 - i32.le_u - if - i32.const 0 - local.set $3 - f64.const 0 - local.set $4 - local.get $0 - local.set $5 - end - else - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - return - end - end - local.get $3 - if - f64.const 1 - local.get $0 - f64.add - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $6 - local.get $6 - i32.const 1072693248 - i32.const 1072079006 - i32.sub - i32.add - local.set $6 - local.get $6 - i32.const 20 - i32.shr_u - i32.const 1023 - i32.sub - local.set $3 - local.get $3 - i32.const 54 - i32.lt_s - if - local.get $1 - f64.reinterpret_i64 - local.set $7 - local.get $3 - i32.const 2 - i32.ge_s - if (result f64) - f64.const 1 - local.get $7 - local.get $0 - f64.sub - f64.sub - else - local.get $0 - local.get $7 - f64.const 1 - f64.sub - f64.sub - end - local.set $4 - local.get $4 - local.get $7 - f64.div - local.set $4 - else - f64.const 0 - local.set $4 - end - local.get $6 - i32.const 1048575 - i32.and - i32.const 1072079006 - i32.add - local.set $6 - local.get $6 - i64.extend_i32_u - i64.const 32 - i64.shl - local.get $1 - i64.const 4294967295 - i64.and - i64.or - local.set $1 - local.get $1 - f64.reinterpret_i64 - f64.const 1 - f64.sub - local.set $5 - end - f64.const 0.5 - local.get $5 - f64.mul - local.get $5 - f64.mul - local.set $8 - local.get $5 - f64.const 2 - local.get $5 - f64.add - f64.div - local.set $9 - local.get $9 - local.get $9 - f64.mul - local.set $10 - local.get $10 - local.get $10 - f64.mul - local.set $11 - local.get $11 - f64.const 0.3999999999940942 - local.get $11 - f64.const 0.22222198432149784 - local.get $11 - f64.const 0.15313837699209373 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $12 - local.get $10 - f64.const 0.6666666666666735 - local.get $11 - f64.const 0.2857142874366239 - local.get $11 - f64.const 0.1818357216161805 - local.get $11 - f64.const 0.14798198605116586 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $13 - local.get $13 - local.get $12 - f64.add - local.set $14 - local.get $3 - f64.convert_i32_s - local.set $15 - local.get $9 - local.get $8 - local.get $14 - f64.add - f64.mul - local.get $15 - f64.const 1.9082149292705877e-10 - f64.mul - local.get $4 - f64.add - f64.add - local.get $8 - f64.sub - local.get $5 - f64.add - local.get $15 - f64.const 0.6931471803691238 - f64.mul - f64.add - ) - (func $~lib/math/NativeMath.log (; 5 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - i32.const 0 - local.set $3 - local.get $2 - i32.const 1048576 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $2 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i64.const 1 - i64.shl - i64.const 0 - i64.eq - if - f64.const -1 - local.get $0 - local.get $0 - f64.mul - f64.div - return - end - local.get $2 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.div - return - end - local.get $3 - i32.const 54 - i32.sub - local.set $3 - local.get $0 - f64.const 18014398509481984 - f64.mul - local.set $0 - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - else - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - return - else - local.get $2 - i32.const 1072693248 - i32.eq - if (result i32) - local.get $1 - i64.const 32 - i64.shl - i64.const 0 - i64.eq - else - i32.const 0 - end - if - f64.const 0 - return - end - end - end - local.get $2 - i32.const 1072693248 - i32.const 1072079006 - i32.sub - i32.add - local.set $2 - local.get $3 - local.get $2 - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - i32.add - local.set $3 - local.get $2 - i32.const 1048575 - i32.and - i32.const 1072079006 - i32.add - local.set $2 - local.get $2 - i64.extend_i32_u - i64.const 32 - i64.shl - local.get $1 - i64.const 4294967295 - i64.and - i64.or - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $0 - local.get $0 - f64.const 1 - f64.sub - local.set $4 - f64.const 0.5 - local.get $4 - f64.mul - local.get $4 - f64.mul - local.set $5 - local.get $4 - f64.const 2 - local.get $4 - f64.add - f64.div - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $8 - local.get $8 - f64.const 0.3999999999940942 - local.get $8 - f64.const 0.22222198432149784 - local.get $8 - f64.const 0.15313837699209373 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $9 - local.get $7 - f64.const 0.6666666666666735 - local.get $8 - f64.const 0.2857142874366239 - local.get $8 - f64.const 0.1818357216161805 - local.get $8 - f64.const 0.14798198605116586 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $10 - local.get $10 - local.get $9 - f64.add - local.set $11 - local.get $3 - f64.convert_i32_s - local.set $12 - local.get $6 - local.get $5 - local.get $11 - f64.add - f64.mul - local.get $12 - f64.const 1.9082149292705877e-10 - f64.mul - f64.add - local.get $5 - f64.sub - local.get $4 - f64.add - local.get $12 - f64.const 0.6931471803691238 - f64.mul - f64.add - ) - (func $~lib/math/NativeMath.acosh (; 6 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - local.get $0 - i64.reinterpret_f64 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $1 - local.get $1 - i64.const 1024 - i64.lt_u - if - local.get $0 - f64.const 1 - f64.sub - local.get $0 - f64.const 1 - f64.sub - local.get $0 - f64.const 1 - f64.sub - f64.mul - f64.const 2 - local.get $0 - f64.const 1 - f64.sub - f64.mul - f64.add - f64.sqrt - f64.add - call $~lib/math/NativeMath.log1p - return - end - local.get $1 - i64.const 1049 - i64.lt_u - if - f64.const 2 - local.get $0 - f64.mul - f64.const 1 - local.get $0 - local.get $0 - local.get $0 - f64.mul - f64.const 1 - f64.sub - f64.sqrt - f64.add - f64.div - f64.sub - call $~lib/math/NativeMath.log - return - end - local.get $0 - call $~lib/math/NativeMath.log - f64.const 0.6931471805599453 - f64.add - ) - (func $../../lib/libm/assembly/libm/acosh (; 7 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.acosh - ) - (func $~lib/math/NativeMath.asin (; 8 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - local.get $0 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1072693248 - i32.ge_u - if - local.get $0 - i64.reinterpret_f64 - i32.wrap_i64 - local.set $3 - local.get $2 - i32.const 1072693248 - i32.sub - local.get $3 - i32.or - i32.const 0 - i32.eq - if - local.get $0 - f64.const 1.5707963267948966 - f64.mul - f32.const 7.52316384526264e-37 - f64.promote_f32 - f64.add - return - end - f64.const 0 - local.get $0 - local.get $0 - f64.sub - f64.div - return - end - local.get $2 - i32.const 1071644672 - i32.lt_u - if - local.get $2 - i32.const 1045430272 - i32.lt_u - if (result i32) - local.get $2 - i32.const 1048576 - i32.ge_u - else - i32.const 0 - end - if - local.get $0 - return - end - local.get $0 - local.get $0 - local.get $0 - local.get $0 - f64.mul - call $~lib/math/R - f64.mul - f64.add - return - end - f64.const 0.5 - local.get $0 - f64.abs - f64.const 0.5 - f64.mul - f64.sub - local.set $4 - local.get $4 - f64.sqrt - local.set $5 - local.get $4 - call $~lib/math/R - local.set $6 - local.get $2 - i32.const 1072640819 - i32.ge_u - if - f64.const 1.5707963267948966 - f64.const 2 - local.get $5 - local.get $5 - local.get $6 - f64.mul - f64.add - f64.mul - f64.const 6.123233995736766e-17 - f64.sub - f64.sub - local.set $0 - else - local.get $5 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $7 - local.get $4 - local.get $7 - local.get $7 - f64.mul - f64.sub - local.get $5 - local.get $7 - f64.add - f64.div - local.set $8 - f64.const 0.5 - f64.const 1.5707963267948966 - f64.mul - f64.const 2 - local.get $5 - f64.mul - local.get $6 - f64.mul - f64.const 6.123233995736766e-17 - f64.const 2 - local.get $8 - f64.mul - f64.sub - f64.sub - f64.const 0.5 - f64.const 1.5707963267948966 - f64.mul - f64.const 2 - local.get $7 - f64.mul - f64.sub - f64.sub - f64.sub - local.set $0 - end - local.get $1 - i32.const 31 - i32.shr_u - if - local.get $0 - f64.neg - return - end - local.get $0 - ) - (func $../../lib/libm/assembly/libm/asin (; 9 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.asin - ) - (func $~lib/math/NativeMath.asinh (; 10 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i64) - (local $3 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $2 - local.get $1 - i64.const 9223372036854775807 - i64.and - f64.reinterpret_i64 - local.set $3 - local.get $2 - i64.const 1049 - i64.ge_u - if - local.get $3 - call $~lib/math/NativeMath.log - f64.const 0.6931471805599453 - f64.add - local.set $3 - else - local.get $2 - i64.const 1024 - i64.ge_u - if - f64.const 2 - local.get $3 - f64.mul - f64.const 1 - local.get $3 - local.get $3 - f64.mul - f64.const 1 - f64.add - f64.sqrt - local.get $3 - f64.add - f64.div - f64.add - call $~lib/math/NativeMath.log - local.set $3 - else - local.get $2 - i64.const 997 - i64.ge_u - if - local.get $3 - local.get $3 - local.get $3 - f64.mul - local.get $3 - local.get $3 - f64.mul - f64.const 1 - f64.add - f64.sqrt - f64.const 1 - f64.add - f64.div - f64.add - call $~lib/math/NativeMath.log1p - local.set $3 - end - end - end - local.get $3 - local.get $0 - f64.copysign - ) - (func $../../lib/libm/assembly/libm/asinh (; 11 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.asinh - ) - (func $~lib/number/isNaN (; 12 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.ne - ) - (func $~lib/math/NativeMath.atan (; 13 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i32) - (local $2 f64) - (local $3 f64) - (local $4 i32) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 i32) - local.get $0 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $1 - local.get $0 - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1141899264 - i32.ge_u - if - local.get $0 - call $~lib/number/isNaN - if - local.get $0 - return - end - f64.const 1.5707963267948966 - f32.const 7.52316384526264e-37 - f64.promote_f32 - f64.add - local.set $3 - local.get $3 - local.get $2 - f64.copysign - return - end - local.get $1 - i32.const 1071382528 - i32.lt_u - if - local.get $1 - i32.const 1044381696 - i32.lt_u - if - local.get $0 - return - end - i32.const -1 - local.set $4 - else - local.get $0 - f64.abs - local.set $0 - local.get $1 - i32.const 1072889856 - i32.lt_u - if - local.get $1 - i32.const 1072037888 - i32.lt_u - if - i32.const 0 - local.set $4 - f64.const 2 - local.get $0 - f64.mul - f64.const 1 - f64.sub - f64.const 2 - local.get $0 - f64.add - f64.div - local.set $0 - else - i32.const 1 - local.set $4 - local.get $0 - f64.const 1 - f64.sub - local.get $0 - f64.const 1 - f64.add - f64.div - local.set $0 - end - else - local.get $1 - i32.const 1073971200 - i32.lt_u - if - i32.const 2 - local.set $4 - local.get $0 - f64.const 1.5 - f64.sub - f64.const 1 - f64.const 1.5 - local.get $0 - f64.mul - f64.add - f64.div - local.set $0 - else - i32.const 3 - local.set $4 - f64.const -1 - local.get $0 - f64.div - local.set $0 - end - end - end - local.get $0 - local.get $0 - f64.mul - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $5 - local.get $3 - f64.const 0.3333333333333293 - local.get $5 - f64.const 0.14285714272503466 - local.get $5 - f64.const 0.09090887133436507 - local.get $5 - f64.const 0.06661073137387531 - local.get $5 - f64.const 0.049768779946159324 - local.get $5 - f64.const 0.016285820115365782 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $6 - local.get $5 - f64.const -0.19999999999876483 - local.get $5 - f64.const -0.11111110405462356 - local.get $5 - f64.const -0.0769187620504483 - local.get $5 - f64.const -0.058335701337905735 - local.get $5 - f64.const -0.036531572744216916 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $7 - local.get $0 - local.get $6 - local.get $7 - f64.add - f64.mul - local.set $8 - local.get $4 - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $8 - f64.sub - return - end - block $break|0 - block $case4|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $4 - local.set $9 - local.get $9 - i32.const 0 - i32.eq - br_if $case0|0 - local.get $9 - i32.const 1 - i32.eq - br_if $case1|0 - local.get $9 - i32.const 2 - i32.eq - br_if $case2|0 - local.get $9 - i32.const 3 - i32.eq - br_if $case3|0 - br $case4|0 - end - f64.const 0.4636476090008061 - local.get $8 - f64.const 2.2698777452961687e-17 - f64.sub - local.get $0 - f64.sub - f64.sub - local.set $3 - br $break|0 - end - f64.const 0.7853981633974483 - local.get $8 - f64.const 3.061616997868383e-17 - f64.sub - local.get $0 - f64.sub - f64.sub - local.set $3 - br $break|0 - end - f64.const 0.982793723247329 - local.get $8 - f64.const 1.3903311031230998e-17 - f64.sub - local.get $0 - f64.sub - f64.sub - local.set $3 - br $break|0 - end - f64.const 1.5707963267948966 - local.get $8 - f64.const 6.123233995736766e-17 - f64.sub - local.get $0 - f64.sub - f64.sub - local.set $3 - br $break|0 - end - unreachable - end - local.get $3 - local.get $2 - f64.copysign - ) - (func $../../lib/libm/assembly/libm/atan (; 14 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.atan - ) - (func $~lib/math/NativeMath.atanh (; 15 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i64) - (local $3 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $2 - local.get $0 - f64.abs - local.set $3 - local.get $2 - i64.const 1022 - i64.lt_u - if - local.get $2 - i64.const 991 - i64.ge_u - if - f64.const 0.5 - f64.const 2 - local.get $3 - f64.mul - f64.const 2 - local.get $3 - f64.mul - local.get $3 - f64.mul - f64.const 1 - local.get $3 - f64.sub - f64.div - f64.add - call $~lib/math/NativeMath.log1p - f64.mul - local.set $3 - end - else - f64.const 0.5 - f64.const 2 - local.get $3 - f64.const 1 - local.get $3 - f64.sub - f64.div - f64.mul - call $~lib/math/NativeMath.log1p - f64.mul - local.set $3 - end - local.get $3 - local.get $0 - f64.copysign - ) - (func $../../lib/libm/assembly/libm/atanh (; 16 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.atanh - ) - (func $~lib/math/NativeMath.atan2 (; 17 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - (local $2 i64) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 f64) - (local $10 f64) - local.get $1 - call $~lib/number/isNaN - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/number/isNaN - end - if - local.get $1 - local.get $0 - f64.add - return - end - local.get $1 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $3 - local.get $2 - i32.wrap_i64 - local.set $4 - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $5 - local.get $2 - i32.wrap_i64 - local.set $6 - local.get $3 - i32.const 1072693248 - i32.sub - local.get $4 - i32.or - i32.const 0 - i32.eq - if - local.get $0 - call $~lib/math/NativeMath.atan - return - end - local.get $5 - i32.const 31 - i32.shr_u - i32.const 1 - i32.and - local.get $3 - i32.const 30 - i32.shr_u - i32.const 2 - i32.and - i32.or - local.set $7 - local.get $3 - i32.const 2147483647 - i32.and - local.set $3 - local.get $5 - i32.const 2147483647 - i32.and - local.set $5 - local.get $5 - local.get $6 - i32.or - i32.const 0 - i32.eq - if - block $break|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $7 - local.set $8 - local.get $8 - i32.const 0 - i32.eq - br_if $case0|0 - local.get $8 - i32.const 1 - i32.eq - br_if $case1|0 - local.get $8 - i32.const 2 - i32.eq - br_if $case2|0 - local.get $8 - i32.const 3 - i32.eq - br_if $case3|0 - br $break|0 - end - end - local.get $0 - return - end - global.get $~lib/math/NativeMath.PI - return - end - global.get $~lib/math/NativeMath.PI - f64.neg - return - end - end - local.get $3 - local.get $4 - i32.or - i32.const 0 - i32.eq - if - local.get $7 - i32.const 1 - i32.and - if (result f64) - global.get $~lib/math/NativeMath.PI - f64.neg - f64.const 2 - f64.div - else - global.get $~lib/math/NativeMath.PI - f64.const 2 - f64.div - end - return - end - local.get $3 - i32.const 2146435072 - i32.eq - if - local.get $5 - i32.const 2146435072 - i32.eq - if - local.get $7 - i32.const 2 - i32.and - if (result f64) - i32.const 3 - f64.convert_i32_s - global.get $~lib/math/NativeMath.PI - f64.mul - f64.const 4 - f64.div - else - global.get $~lib/math/NativeMath.PI - f64.const 4 - f64.div - end - local.set $9 - local.get $7 - i32.const 1 - i32.and - if (result f64) - local.get $9 - f64.neg - else - local.get $9 - end - return - else - local.get $7 - i32.const 2 - i32.and - if (result f64) - global.get $~lib/math/NativeMath.PI - else - i32.const 0 - f64.convert_i32_s - end - local.set $9 - local.get $7 - i32.const 1 - i32.and - if (result f64) - local.get $9 - f64.neg - else - local.get $9 - end - return - end - unreachable - end - local.get $3 - i32.const 67108864 - i32.add - local.get $5 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $5 - i32.const 2146435072 - i32.eq - end - if - local.get $7 - i32.const 1 - i32.and - if (result f64) - global.get $~lib/math/NativeMath.PI - f64.neg - f64.const 2 - f64.div - else - global.get $~lib/math/NativeMath.PI - f64.const 2 - f64.div - end - return - end - local.get $7 - i32.const 2 - i32.and - if (result i32) - local.get $5 - i32.const 67108864 - i32.add - local.get $3 - i32.lt_u - else - i32.const 0 - end - if - f64.const 0 - local.set $10 - else - local.get $0 - local.get $1 - f64.div - f64.abs - call $~lib/math/NativeMath.atan - local.set $10 - end - block $break|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $7 - local.set $8 - local.get $8 - i32.const 0 - i32.eq - br_if $case0|1 - local.get $8 - i32.const 1 - i32.eq - br_if $case1|1 - local.get $8 - i32.const 2 - i32.eq - br_if $case2|1 - local.get $8 - i32.const 3 - i32.eq - br_if $case3|1 - br $break|1 - end - local.get $10 - return - end - local.get $10 - f64.neg - return - end - global.get $~lib/math/NativeMath.PI - local.get $10 - f64.const 1.2246467991473532e-16 - f64.sub - f64.sub - return - end - local.get $10 - f64.const 1.2246467991473532e-16 - f64.sub - global.get $~lib/math/NativeMath.PI - f64.sub - return - end - unreachable - ) - (func $../../lib/libm/assembly/libm/atan2 (; 18 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - local.get $0 - local.get $1 - call $~lib/math/NativeMath.atan2 - ) - (func $~lib/math/NativeMath.cbrt (; 19 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 f64) - (local $4 f64) - (local $5 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - local.get $0 - f64.add - return - end - local.get $2 - i32.const 1048576 - i32.lt_u - if - local.get $0 - f64.const 18014398509481984 - f64.mul - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 0 - i32.eq - if - local.get $0 - return - end - local.get $2 - i32.const 3 - i32.div_u - i32.const 696219795 - i32.add - local.set $2 - else - local.get $2 - i32.const 3 - i32.div_u - i32.const 715094163 - i32.add - local.set $2 - end - local.get $1 - i64.const 1 - i64.const 63 - i64.shl - i64.and - local.set $1 - local.get $1 - local.get $2 - i64.extend_i32_u - i64.const 32 - i64.shl - i64.or - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.get $3 - local.get $0 - f64.div - f64.mul - local.set $4 - local.get $3 - f64.const 1.87595182427177 - local.get $4 - f64.const -1.8849797954337717 - local.get $4 - f64.const 1.6214297201053545 - f64.mul - f64.add - f64.mul - f64.add - local.get $4 - local.get $4 - f64.mul - local.get $4 - f64.mul - f64.const -0.758397934778766 - local.get $4 - f64.const 0.14599619288661245 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $3 - local.get $3 - i64.reinterpret_f64 - i64.const 2147483648 - i64.add - i64.const -1073741824 - i64.and - f64.reinterpret_i64 - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $5 - local.get $0 - local.get $5 - f64.div - local.set $4 - local.get $4 - local.get $3 - f64.sub - f64.const 2 - local.get $3 - f64.mul - local.get $4 - f64.add - f64.div - local.set $4 - local.get $3 - local.get $3 - local.get $4 - f64.mul - f64.add - local.set $3 - local.get $3 - ) - (func $../../lib/libm/assembly/libm/cbrt (; 20 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.cbrt - ) - (func $../../lib/libm/assembly/libm/ceil (; 21 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 f64) - local.get $0 - local.set $1 - local.get $1 - f64.ceil - ) - (func $~lib/number/isFinite (; 22 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.eq - ) - (func $~lib/math/dtoi32 (; 23 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - (local $1 i32) - (local $2 i64) - (local $3 i64) - (local $4 i64) - i32.const 0 - local.set $1 - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $3 - local.get $3 - i64.const 1053 - i64.le_u - if - local.get $0 - i32.trunc_f64_s - local.set $1 - else - local.get $3 - i64.const 1106 - i64.le_u - if - local.get $2 - i64.const 1 - i64.const 52 - i64.shl - i64.const 1 - i64.sub - i64.and - i64.const 1 - i64.const 52 - i64.shl - i64.or - local.set $4 - local.get $4 - local.get $3 - i64.const 1023 - i64.sub - i64.const 52 - i64.sub - i64.const 32 - i64.add - i64.shl - local.set $4 - local.get $4 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $1 - i32.const 0 - local.get $1 - i32.sub - local.get $1 - local.get $2 - i64.const 63 - i64.shr_u - i64.const 0 - i64.ne - select - local.set $1 - end - end - local.get $1 - return - ) - (func $~lib/math/NativeMath.clz32 (; 24 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/number/isFinite - i32.eqz - if - f64.const 32 - return - end - local.get $0 - call $~lib/math/dtoi32 - i32.clz - f64.convert_i32_s - ) - (func $../../lib/libm/assembly/libm/clz32 (; 25 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.clz32 - ) - (func $~lib/math/pio2_large_quot (; 26 ;) (type $FUNCSIG$idj) (param $0 f64) (param $1 i64) (result i32) - (local $2 i32) - (local $3 i64) - (local $4 i64) - (local $5 i64) - (local $6 i32) - (local $7 i64) - (local $8 i64) - (local $9 i64) - (local $10 i64) - (local $11 i64) - (local $12 i64) - (local $13 i64) - (local $14 i64) - (local $15 i64) - (local $16 i64) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i64) - (local $25 i64) - (local $26 i64) - (local $27 i64) - (local $28 i64) - (local $29 i64) - (local $30 i64) - (local $31 i64) - (local $32 i64) - (local $33 i64) - (local $34 i64) - (local $35 i64) - (local $36 i64) - (local $37 f64) - i32.const 232 - i32.load offset=4 - local.set $2 - local.get $1 - i64.const 9223372036854775807 - i64.and - local.set $3 - local.get $3 - i64.const 52 - i64.shr_s - i64.const 1045 - i64.sub - local.set $4 - local.get $4 - i64.const 63 - i64.and - local.set $5 - local.get $2 - local.get $4 - i64.const 6 - i64.shr_s - i32.wrap_i64 - i32.const 3 - i32.shl - i32.add - local.set $6 - local.get $6 - i64.load - local.set $10 - local.get $6 - i64.load offset=8 - local.set $11 - local.get $6 - i64.load offset=16 - local.set $12 - local.get $5 - i64.const 0 - i64.ne - if - i32.const 64 - i64.extend_i32_s - local.get $5 - i64.sub - local.set $13 - local.get $6 - i64.load offset=24 - local.set $14 - local.get $11 - local.get $13 - i64.shr_u - local.get $10 - local.get $5 - i64.shl - i64.or - local.set $7 - local.get $12 - local.get $13 - i64.shr_u - local.get $11 - local.get $5 - i64.shl - i64.or - local.set $8 - local.get $14 - local.get $13 - i64.shr_u - local.get $12 - local.get $5 - i64.shl - i64.or - local.set $9 - else - local.get $10 - local.set $7 - local.get $11 - local.set $8 - local.get $12 - local.set $9 - end - local.get $1 - i64.const 4503599627370495 - i64.and - i64.const 4503599627370496 - i64.or - local.set $15 - local.get $8 - local.set $14 - local.get $15 - local.set $13 - local.get $14 - i64.const 4294967295 - i64.and - local.set $16 - local.get $13 - i64.const 4294967295 - i64.and - local.set $17 - local.get $14 - i64.const 32 - i64.shr_u - local.set $14 - local.get $13 - i64.const 32 - i64.shr_u - local.set $13 - local.get $16 - local.get $17 - i64.mul - local.set $20 - local.get $20 - i64.const 4294967295 - i64.and - local.set $18 - local.get $14 - local.get $17 - i64.mul - local.get $20 - i64.const 32 - i64.shr_u - i64.add - local.set $20 - local.get $20 - i64.const 32 - i64.shr_u - local.set $19 - local.get $16 - local.get $13 - i64.mul - local.get $20 - i64.const 4294967295 - i64.and - i64.add - local.set $20 - local.get $14 - local.get $13 - i64.mul - local.get $19 - i64.add - local.get $20 - i64.const 32 - i64.shr_u - i64.add - global.set $~lib/math/res128_hi - local.get $20 - i64.const 32 - i64.shl - local.get $18 - i64.add - local.set $21 - global.get $~lib/math/res128_hi - local.set $22 - local.get $7 - local.get $15 - i64.mul - local.set $23 - local.get $9 - i64.const 32 - i64.shr_u - local.get $15 - i64.const 32 - i64.shr_s - i64.mul - local.set $24 - local.get $21 - local.get $24 - i64.add - local.set $25 - local.get $23 - local.get $22 - i64.add - local.get $25 - local.get $24 - i64.lt_u - i64.extend_i32_u - i64.add - local.set $26 - local.get $25 - i64.const 2 - i64.shl - local.set $27 - local.get $26 - i64.const 2 - i64.shl - local.get $25 - i64.const 62 - i64.shr_u - i64.or - local.set $28 - local.get $28 - i64.const 63 - i64.shr_s - local.set $29 - local.get $29 - i64.const 1 - i64.shr_s - local.set $30 - local.get $26 - i64.const 62 - i64.shr_s - local.get $29 - i64.sub - local.set $31 - i64.const 4372995238176751616 - local.get $27 - local.get $29 - i64.xor - local.set $14 - local.get $28 - local.get $30 - i64.xor - local.set $13 - local.get $13 - i64.clz - local.set $20 - local.get $13 - local.get $20 - i64.shl - local.get $14 - i64.const 64 - local.get $20 - i64.sub - i64.shr_u - i64.or - local.set $13 - local.get $14 - local.get $20 - i64.shl - local.set $14 - i64.const -3958705157555305932 - local.set $17 - local.get $13 - local.set $16 - local.get $17 - i64.const 4294967295 - i64.and - local.set $19 - local.get $16 - i64.const 4294967295 - i64.and - local.set $18 - local.get $17 - i64.const 32 - i64.shr_u - local.set $17 - local.get $16 - i64.const 32 - i64.shr_u - local.set $16 - local.get $19 - local.get $18 - i64.mul - local.set $34 - local.get $34 - i64.const 4294967295 - i64.and - local.set $32 - local.get $17 - local.get $18 - i64.mul - local.get $34 - i64.const 32 - i64.shr_u - i64.add - local.set $34 - local.get $34 - i64.const 32 - i64.shr_u - local.set $33 - local.get $19 - local.get $16 - i64.mul - local.get $34 - i64.const 4294967295 - i64.and - i64.add - local.set $34 - local.get $17 - local.get $16 - i64.mul - local.get $33 - i64.add - local.get $34 - i64.const 32 - i64.shr_u - i64.add - global.set $~lib/math/res128_hi - local.get $34 - i64.const 32 - i64.shl - local.get $32 - i64.add - local.set $34 - global.get $~lib/math/res128_hi - local.set $33 - local.get $33 - i64.const 11 - i64.shr_u - local.set $32 - local.get $34 - i64.const 11 - i64.shr_u - local.get $33 - i64.const 53 - i64.shl - i64.or - local.set $18 - f64.const 2.6469779601696886e-23 - i64.const -4267615245585081135 - f64.convert_i64_u - f64.mul - local.get $13 - f64.convert_i64_u - f64.mul - f64.const 2.6469779601696886e-23 - i64.const -3958705157555305932 - f64.convert_i64_u - f64.mul - local.get $14 - f64.convert_i64_u - f64.mul - f64.add - i64.trunc_f64_u - local.set $19 - local.get $32 - local.get $34 - local.get $19 - i64.lt_u - i64.extend_i32_u - i64.add - f64.convert_i64_u - global.set $~lib/math/rempio2_y0 - f64.const 5.421010862427522e-20 - local.get $18 - local.get $19 - i64.add - f64.convert_i64_u - f64.mul - global.set $~lib/math/rempio2_y1 - local.get $20 - i64.const 52 - i64.shl - i64.sub - local.set $35 - local.get $1 - local.get $28 - i64.xor - i64.const -9223372036854775808 - i64.and - local.set $36 - local.get $35 - local.get $36 - i64.or - f64.reinterpret_i64 - local.set $37 - global.get $~lib/math/rempio2_y0 - local.get $37 - f64.mul - global.set $~lib/math/rempio2_y0 - global.get $~lib/math/rempio2_y1 - local.get $37 - f64.mul - global.set $~lib/math/rempio2_y1 - local.get $31 - i32.wrap_i64 - ) - (func $~lib/math/NativeMath.cos (; 27 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 i32) - (local $11 i64) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 f64) - (local $17 i32) - (local $18 f64) - (local $19 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - local.get $2 - i32.const 31 - i32.shr_u - local.set $3 - local.get $2 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1072243195 - i32.le_u - if - local.get $2 - i32.const 1044816030 - i32.lt_u - if - f64.const 1 - return - end - local.get $0 - local.set $5 - f64.const 0 - local.set $4 - local.get $5 - local.get $5 - f64.mul - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $6 - f64.const 0.0416666666666666 - local.get $6 - f64.const -0.001388888888887411 - local.get $6 - f64.const 2.480158728947673e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.get $7 - local.get $7 - f64.mul - f64.const -2.7557314351390663e-07 - local.get $6 - f64.const 2.087572321298175e-09 - local.get $6 - f64.const -1.1359647557788195e-11 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $8 - f64.const 0.5 - local.get $6 - f64.mul - local.set $9 - f64.const 1 - local.get $9 - f64.sub - local.set $7 - local.get $7 - f64.const 1 - local.get $7 - f64.sub - local.get $9 - f64.sub - local.get $6 - local.get $8 - f64.mul - local.get $5 - local.get $4 - f64.mul - f64.sub - f64.add - f64.add - return - end - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - local.get $0 - f64.sub - return - end - block $~lib/math/rempio2|inlined.0 (result i32) - local.get $0 - local.set $4 - local.get $1 - local.set $11 - local.get $3 - local.set $10 - local.get $11 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 2147483647 - i32.and - local.set $12 - local.get $12 - i32.const 1073928572 - i32.lt_u - if - i32.const 1 - local.set $13 - local.get $10 - i32.eqz - if - local.get $4 - f64.const 1.5707963267341256 - f64.sub - local.set $9 - local.get $12 - i32.const 1073291771 - i32.ne - if - local.get $9 - f64.const 6.077100506506192e-11 - f64.sub - local.set $8 - local.get $9 - local.get $8 - f64.sub - f64.const 6.077100506506192e-11 - f64.sub - local.set $7 - else - local.get $9 - f64.const 6.077100506303966e-11 - f64.sub - local.set $9 - local.get $9 - f64.const 2.0222662487959506e-21 - f64.sub - local.set $8 - local.get $9 - local.get $8 - f64.sub - f64.const 2.0222662487959506e-21 - f64.sub - local.set $7 - end - else - local.get $4 - f64.const 1.5707963267341256 - f64.add - local.set $9 - local.get $12 - i32.const 1073291771 - i32.ne - if - local.get $9 - f64.const 6.077100506506192e-11 - f64.add - local.set $8 - local.get $9 - local.get $8 - f64.sub - f64.const 6.077100506506192e-11 - f64.add - local.set $7 - else - local.get $9 - f64.const 6.077100506303966e-11 - f64.add - local.set $9 - local.get $9 - f64.const 2.0222662487959506e-21 - f64.add - local.set $8 - local.get $9 - local.get $8 - f64.sub - f64.const 2.0222662487959506e-21 - f64.add - local.set $7 - end - i32.const -1 - local.set $13 - end - local.get $8 - global.set $~lib/math/rempio2_y0 - local.get $7 - global.set $~lib/math/rempio2_y1 - local.get $13 - br $~lib/math/rempio2|inlined.0 - end - local.get $12 - i32.const 1094263291 - i32.lt_u - if - local.get $4 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $7 - local.get $4 - local.get $7 - f64.const 1.5707963267341256 - f64.mul - f64.sub - local.set $8 - local.get $7 - f64.const 6.077100506506192e-11 - f64.mul - local.set $9 - local.get $12 - i32.const 20 - i32.shr_u - local.set $13 - local.get $8 - local.get $9 - f64.sub - local.set $6 - local.get $6 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $14 - local.get $13 - local.get $14 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $15 - local.get $15 - i32.const 16 - i32.gt_u - if - local.get $8 - local.set $5 - local.get $7 - f64.const 6.077100506303966e-11 - f64.mul - local.set $9 - local.get $5 - local.get $9 - f64.sub - local.set $8 - local.get $7 - f64.const 2.0222662487959506e-21 - f64.mul - local.get $5 - local.get $8 - f64.sub - local.get $9 - f64.sub - f64.sub - local.set $9 - local.get $8 - local.get $9 - f64.sub - local.set $6 - local.get $6 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $14 - local.get $13 - local.get $14 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $15 - local.get $15 - i32.const 49 - i32.gt_u - if - local.get $8 - local.set $16 - local.get $7 - f64.const 2.0222662487111665e-21 - f64.mul - local.set $9 - local.get $16 - local.get $9 - f64.sub - local.set $8 - local.get $7 - f64.const 8.4784276603689e-32 - f64.mul - local.get $16 - local.get $8 - f64.sub - local.get $9 - f64.sub - f64.sub - local.set $9 - local.get $8 - local.get $9 - f64.sub - local.set $6 - end - end - local.get $8 - local.get $6 - f64.sub - local.get $9 - f64.sub - local.set $5 - local.get $6 - global.set $~lib/math/rempio2_y0 - local.get $5 - global.set $~lib/math/rempio2_y1 - local.get $7 - i32.trunc_f64_s - br $~lib/math/rempio2|inlined.0 - end - local.get $4 - local.get $11 - call $~lib/math/pio2_large_quot - local.set $15 - i32.const 0 - local.get $15 - i32.sub - local.get $15 - local.get $10 - select - end - local.set $17 - global.get $~lib/math/rempio2_y0 - local.set $18 - global.get $~lib/math/rempio2_y1 - local.set $19 - local.get $17 - i32.const 1 - i32.and - if (result f64) - block $~lib/math/sin_kern|inlined.0 (result f64) - local.get $18 - local.set $7 - local.get $19 - local.set $16 - i32.const 1 - local.set $13 - local.get $7 - local.get $7 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const 0.00833333333332249 - local.get $4 - f64.const -1.984126982985795e-04 - local.get $4 - f64.const 2.7557313707070068e-06 - f64.mul - f64.add - f64.mul - f64.add - local.get $4 - local.get $5 - f64.mul - f64.const -2.5050760253406863e-08 - local.get $4 - f64.const 1.58969099521155e-10 - f64.mul - f64.add - f64.mul - f64.add - local.set $6 - local.get $4 - local.get $7 - f64.mul - local.set $9 - local.get $13 - i32.eqz - if - local.get $7 - local.get $9 - f64.const -0.16666666666666632 - local.get $4 - local.get $6 - f64.mul - f64.add - f64.mul - f64.add - br $~lib/math/sin_kern|inlined.0 - else - local.get $7 - local.get $4 - f64.const 0.5 - local.get $16 - f64.mul - local.get $9 - local.get $6 - f64.mul - f64.sub - f64.mul - local.get $16 - f64.sub - local.get $9 - f64.const -0.16666666666666632 - f64.mul - f64.sub - f64.sub - br $~lib/math/sin_kern|inlined.0 - end - unreachable - end - else - local.get $18 - local.set $16 - local.get $19 - local.set $8 - local.get $16 - local.get $16 - f64.mul - local.set $9 - local.get $9 - local.get $9 - f64.mul - local.set $6 - local.get $9 - f64.const 0.0416666666666666 - local.get $9 - f64.const -0.001388888888887411 - local.get $9 - f64.const 2.480158728947673e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.get $6 - local.get $6 - f64.mul - f64.const -2.7557314351390663e-07 - local.get $9 - f64.const 2.087572321298175e-09 - local.get $9 - f64.const -1.1359647557788195e-11 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $5 - f64.const 0.5 - local.get $9 - f64.mul - local.set $4 - f64.const 1 - local.get $4 - f64.sub - local.set $6 - local.get $6 - f64.const 1 - local.get $6 - f64.sub - local.get $4 - f64.sub - local.get $9 - local.get $5 - f64.mul - local.get $16 - local.get $8 - f64.mul - f64.sub - f64.add - f64.add - end - local.set $0 - local.get $17 - i32.const 1 - i32.add - i32.const 2 - i32.and - if (result f64) - local.get $0 - f64.neg - else - local.get $0 - end - ) - (func $../../lib/libm/assembly/libm/cos (; 28 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.cos - ) - (func $~lib/math/NativeMath.expm1 (; 29 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - (local $13 f64) - (local $14 f64) - (local $15 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i64.const 2147483647 - i64.and - i32.wrap_i64 - local.set $2 - i32.const 0 - local.set $3 - local.get $1 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.set $4 - local.get $2 - i32.const 1078159482 - i32.ge_u - if - local.get $0 - call $~lib/number/isNaN - if - local.get $0 - return - end - local.get $4 - if - f64.const -1 - return - end - local.get $0 - f64.const 709.782712893384 - f64.gt - if - local.get $0 - f64.const 8988465674311579538646525e283 - f64.mul - return - end - end - f64.const 0 - local.set $5 - local.get $2 - i32.const 1071001154 - i32.gt_u - if - i32.const 1 - local.get $4 - i32.const 1 - i32.shl - i32.sub - f64.const 1.4426950408889634 - local.get $0 - f64.mul - f64.const 0.5 - local.get $0 - f64.copysign - f64.add - i32.trunc_f64_s - local.get $2 - i32.const 1072734898 - i32.lt_u - select - local.set $3 - local.get $3 - f64.convert_i32_s - local.set $6 - local.get $0 - local.get $6 - f64.const 0.6931471803691238 - f64.mul - f64.sub - local.set $7 - local.get $6 - f64.const 1.9082149292705877e-10 - f64.mul - local.set $8 - local.get $7 - local.get $8 - f64.sub - local.set $0 - local.get $7 - local.get $0 - f64.sub - local.get $8 - f64.sub - local.set $5 - else - local.get $2 - i32.const 1016070144 - i32.lt_u - if - local.get $0 - return - end - end - f64.const 0.5 - local.get $0 - f64.mul - local.set $9 - local.get $0 - local.get $9 - f64.mul - local.set $10 - local.get $10 - local.get $10 - f64.mul - local.set $11 - f64.const 1 - local.get $10 - f64.const -0.03333333333333313 - f64.mul - f64.add - local.get $11 - f64.const 1.5873015872548146e-03 - local.get $10 - f64.const -7.93650757867488e-05 - f64.mul - f64.add - local.get $11 - f64.const 4.008217827329362e-06 - local.get $10 - f64.const -2.0109921818362437e-07 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $12 - f64.const 3 - local.get $12 - local.get $9 - f64.mul - f64.sub - local.set $6 - local.get $10 - local.get $12 - local.get $6 - f64.sub - f64.const 6 - local.get $0 - local.get $6 - f64.mul - f64.sub - f64.div - f64.mul - local.set $13 - local.get $3 - i32.const 0 - i32.eq - if - local.get $0 - local.get $0 - local.get $13 - f64.mul - local.get $10 - f64.sub - f64.sub - return - end - local.get $0 - local.get $13 - local.get $5 - f64.sub - f64.mul - local.get $5 - f64.sub - local.set $13 - local.get $13 - local.get $10 - f64.sub - local.set $13 - local.get $3 - i32.const -1 - i32.eq - if - f64.const 0.5 - local.get $0 - local.get $13 - f64.sub - f64.mul - f64.const 0.5 - f64.sub - return - end - local.get $3 - i32.const 1 - i32.eq - if - local.get $0 - f64.const -0.25 - f64.lt - if - f64.const -2 - local.get $13 - local.get $0 - f64.const 0.5 - f64.add - f64.sub - f64.mul - return - end - f64.const 1 - f64.const 2 - local.get $0 - local.get $13 - f64.sub - f64.mul - f64.add - return - end - i64.const 1023 - local.get $3 - i64.extend_i32_s - i64.add - i64.const 52 - i64.shl - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $14 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - i32.const 1 - else - local.get $3 - i32.const 56 - i32.gt_s - end - if - local.get $0 - local.get $13 - f64.sub - f64.const 1 - f64.add - local.set $15 - local.get $3 - i32.const 1024 - i32.eq - if - local.get $15 - f64.const 2 - f64.mul - f64.const 8988465674311579538646525e283 - f64.mul - local.set $15 - else - local.get $15 - local.get $14 - f64.mul - local.set $15 - end - local.get $15 - f64.const 1 - f64.sub - return - end - i64.const 1023 - local.get $3 - i64.extend_i32_s - i64.sub - i64.const 52 - i64.shl - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $15 - local.get $3 - i32.const 20 - i32.lt_s - if - f64.const 1 - local.get $15 - f64.sub - local.get $13 - f64.sub - local.set $15 - else - f64.const 1 - local.get $13 - local.get $15 - f64.add - f64.sub - local.set $15 - end - local.get $0 - local.get $15 - f64.add - local.get $14 - f64.mul - ) - (func $~lib/math/NativeMath.scalbn (; 30 ;) (type $FUNCSIG$ddi) (param $0 f64) (param $1 i32) (result f64) - (local $2 f64) - (local $3 i32) - (local $4 i32) - local.get $0 - local.set $2 - local.get $1 - i32.const 1023 - i32.gt_s - if - local.get $2 - f64.const 8988465674311579538646525e283 - f64.mul - local.set $2 - local.get $1 - i32.const 1023 - i32.sub - local.set $1 - local.get $1 - i32.const 1023 - i32.gt_s - if - local.get $2 - f64.const 8988465674311579538646525e283 - f64.mul - local.set $2 - local.get $1 - i32.const 1023 - i32.sub - local.tee $3 - i32.const 1023 - local.tee $4 - local.get $3 - local.get $4 - i32.lt_s - select - local.set $1 - end - else - local.get $1 - i32.const -1022 - i32.lt_s - if - local.get $2 - f64.const 2.2250738585072014e-308 - f64.const 9007199254740992 - f64.mul - f64.mul - local.set $2 - local.get $1 - i32.const 1022 - i32.const 53 - i32.sub - i32.add - local.set $1 - local.get $1 - i32.const -1022 - i32.lt_s - if - local.get $2 - f64.const 2.2250738585072014e-308 - f64.const 9007199254740992 - f64.mul - f64.mul - local.set $2 - local.get $1 - i32.const 1022 - i32.add - i32.const 53 - i32.sub - local.tee $3 - i32.const -1022 - local.tee $4 - local.get $3 - local.get $4 - i32.gt_s - select - local.set $1 - end - end - end - local.get $2 - i64.const 1023 - local.get $1 - i64.extend_i32_s - i64.add - i64.const 52 - i64.shl - f64.reinterpret_i64 - f64.mul - ) - (func $~lib/math/NativeMath.exp (; 31 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i32) - (local $2 i32) - (local $3 f64) - (local $4 f64) - (local $5 i32) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - local.get $0 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $1 - local.get $1 - i32.const 31 - i32.shr_u - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1082532651 - i32.ge_u - if - local.get $0 - call $~lib/number/isNaN - if - local.get $0 - return - end - local.get $0 - f64.const 709.782712893384 - f64.gt - if - local.get $0 - f64.const 8988465674311579538646525e283 - f64.mul - return - end - local.get $0 - f64.const -745.1332191019411 - f64.lt - if - f64.const 0 - return - end - end - f64.const 0 - local.set $4 - i32.const 0 - local.set $5 - local.get $1 - i32.const 1071001154 - i32.gt_u - if - local.get $1 - i32.const 1072734898 - i32.ge_u - if - f64.const 1.4426950408889634 - local.get $0 - f64.mul - f64.const 0.5 - local.get $0 - f64.copysign - f64.add - i32.trunc_f64_s - local.set $5 - else - i32.const 1 - local.get $2 - i32.const 1 - i32.shl - i32.sub - local.set $5 - end - local.get $0 - local.get $5 - f64.convert_i32_s - f64.const 0.6931471803691238 - f64.mul - f64.sub - local.set $3 - local.get $5 - f64.convert_i32_s - f64.const 1.9082149292705877e-10 - f64.mul - local.set $4 - local.get $3 - local.get $4 - f64.sub - local.set $0 - else - local.get $1 - i32.const 1043333120 - i32.gt_u - if - local.get $0 - local.set $3 - else - f64.const 1 - local.get $0 - f64.add - return - end - end - local.get $0 - local.get $0 - f64.mul - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $0 - local.get $6 - f64.const 0.16666666666666602 - f64.mul - local.get $7 - f64.const -2.7777777777015593e-03 - local.get $6 - f64.const 6.613756321437934e-05 - f64.mul - f64.add - local.get $7 - f64.const -1.6533902205465252e-06 - local.get $6 - f64.const 4.1381367970572385e-08 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.sub - local.set $8 - f64.const 1 - local.get $0 - local.get $8 - f64.mul - f64.const 2 - local.get $8 - f64.sub - f64.div - local.get $4 - f64.sub - local.get $3 - f64.add - f64.add - local.set $9 - local.get $5 - i32.const 0 - i32.eq - if - local.get $9 - return - end - local.get $9 - local.get $5 - call $~lib/math/NativeMath.scalbn - ) - (func $~lib/math/NativeMath.cosh (; 32 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 f64) - (local $4 f64) - (local $5 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 9223372036854775807 - i64.and - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $0 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - local.get $2 - i32.const 1072049730 - i32.lt_u - if - local.get $2 - i32.const 1045430272 - i32.lt_u - if - f64.const 1 - return - end - local.get $0 - call $~lib/math/NativeMath.expm1 - local.set $3 - f64.const 1 - local.get $3 - local.get $3 - f64.mul - f64.const 2 - f64.const 2 - local.get $3 - f64.mul - f64.add - f64.div - f64.add - return - end - local.get $2 - i32.const 1082535490 - i32.lt_u - if - local.get $0 - call $~lib/math/NativeMath.exp - local.set $3 - f64.const 0.5 - local.get $3 - f64.const 1 - local.get $3 - f64.div - f64.add - f64.mul - return - end - local.get $0 - local.set $4 - i32.const 1023 - i32.const 2043 - i32.const 2 - i32.div_u - i32.add - i32.const 20 - i32.shl - i64.extend_i32_u - i64.const 32 - i64.shl - f64.reinterpret_i64 - local.set $5 - local.get $4 - f64.const 1416.0996898839683 - f64.sub - call $~lib/math/NativeMath.exp - local.get $5 - f64.mul - local.get $5 - f64.mul - local.set $3 - local.get $3 - ) - (func $../../lib/libm/assembly/libm/cosh (; 33 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.cosh - ) - (func $../../lib/libm/assembly/libm/exp (; 34 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.exp - ) - (func $../../lib/libm/assembly/libm/expm1 (; 35 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.expm1 - ) - (func $../../lib/libm/assembly/libm/floor (; 36 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 f64) - local.get $0 - local.set $1 - local.get $1 - f64.floor - ) - (func $../../lib/libm/assembly/libm/fround (; 37 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 f64) - local.get $0 - local.set $1 - local.get $1 - f32.demote_f64 - f64.promote_f32 - ) - (func $~lib/math/NativeMath.hypot (; 38 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - (local $2 i64) - (local $3 i64) - (local $4 i64) - (local $5 i32) - (local $6 i32) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - (local $13 f64) - (local $14 f64) - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $1 - i64.reinterpret_f64 - local.set $3 - local.get $2 - i64.const 9223372036854775807 - i64.and - local.set $2 - local.get $3 - i64.const 9223372036854775807 - i64.and - local.set $3 - local.get $2 - local.get $3 - i64.lt_u - if - local.get $2 - local.set $4 - local.get $3 - local.set $2 - local.get $4 - local.set $3 - end - local.get $2 - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.set $5 - local.get $3 - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.set $6 - local.get $3 - f64.reinterpret_i64 - local.set $1 - local.get $6 - i32.const 2047 - i32.eq - if - local.get $1 - return - end - local.get $2 - f64.reinterpret_i64 - local.set $0 - local.get $5 - i32.const 2047 - i32.eq - if (result i32) - i32.const 1 - else - local.get $3 - i64.const 0 - i64.eq - end - if - local.get $0 - return - end - local.get $5 - local.get $6 - i32.sub - i32.const 64 - i32.gt_s - if - local.get $0 - local.get $1 - f64.add - return - end - f64.const 1 - local.set $7 - local.get $5 - i32.const 1533 - i32.gt_s - if - f64.const 5260135901548373507240989e186 - local.set $7 - local.get $0 - f64.const 1.90109156629516e-211 - f64.mul - local.set $0 - local.get $1 - f64.const 1.90109156629516e-211 - f64.mul - local.set $1 - else - local.get $6 - i32.const 573 - i32.lt_s - if - f64.const 1.90109156629516e-211 - local.set $7 - local.get $0 - f64.const 5260135901548373507240989e186 - f64.mul - local.set $0 - local.get $1 - f64.const 5260135901548373507240989e186 - f64.mul - local.set $1 - end - end - local.get $0 - f64.const 134217729 - f64.mul - local.set $8 - local.get $0 - local.get $8 - f64.sub - local.get $8 - f64.add - local.set $9 - local.get $0 - local.get $9 - f64.sub - local.set $10 - local.get $0 - local.get $0 - f64.mul - local.set $11 - local.get $9 - local.get $9 - f64.mul - local.get $11 - f64.sub - f64.const 2 - local.get $9 - f64.mul - local.get $10 - f64.add - local.get $10 - f64.mul - f64.add - local.set $12 - local.get $1 - f64.const 134217729 - f64.mul - local.set $8 - local.get $1 - local.get $8 - f64.sub - local.get $8 - f64.add - local.set $9 - local.get $1 - local.get $9 - f64.sub - local.set $10 - local.get $1 - local.get $1 - f64.mul - local.set $13 - local.get $9 - local.get $9 - f64.mul - local.get $13 - f64.sub - f64.const 2 - local.get $9 - f64.mul - local.get $10 - f64.add - local.get $10 - f64.mul - f64.add - local.set $14 - local.get $7 - local.get $14 - local.get $12 - f64.add - local.get $13 - f64.add - local.get $11 - f64.add - f64.sqrt - f64.mul - ) - (func $../../lib/libm/assembly/libm/hypot (; 39 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - local.get $0 - local.get $1 - call $~lib/math/NativeMath.hypot - ) - (func $~lib/math/NativeMath.imul (; 40 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - local.get $0 - local.get $1 - f64.add - call $~lib/number/isFinite - i32.eqz - if - f64.const 0 - return - end - local.get $0 - call $~lib/math/dtoi32 - local.get $1 - call $~lib/math/dtoi32 - i32.mul - f64.convert_i32_s - ) - (func $../../lib/libm/assembly/libm/imul (; 41 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - local.get $0 - local.get $1 - call $~lib/math/NativeMath.imul - ) - (func $../../lib/libm/assembly/libm/log (; 42 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.log - ) - (func $~lib/math/NativeMath.log10 (; 43 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - (local $13 f64) - (local $14 f64) - (local $15 f64) - (local $16 f64) - (local $17 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - i32.const 0 - local.set $3 - local.get $2 - i32.const 1048576 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $2 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i64.const 1 - i64.shl - i64.const 0 - i64.eq - if - f64.const -1 - local.get $0 - local.get $0 - f64.mul - f64.div - return - end - local.get $2 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.div - return - end - local.get $3 - i32.const 54 - i32.sub - local.set $3 - local.get $0 - f64.const 18014398509481984 - f64.mul - local.set $0 - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - else - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - return - else - local.get $2 - i32.const 1072693248 - i32.eq - if (result i32) - local.get $1 - i64.const 32 - i64.shl - i64.const 0 - i64.eq - else - i32.const 0 - end - if - f64.const 0 - return - end - end - end - local.get $2 - i32.const 1072693248 - i32.const 1072079006 - i32.sub - i32.add - local.set $2 - local.get $3 - local.get $2 - i32.const 20 - i32.shr_u - i32.const 1023 - i32.sub - i32.add - local.set $3 - local.get $2 - i32.const 1048575 - i32.and - i32.const 1072079006 - i32.add - local.set $2 - local.get $2 - i64.extend_i32_u - i64.const 32 - i64.shl - local.get $1 - i64.const 4294967295 - i64.and - i64.or - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $0 - local.get $0 - f64.const 1 - f64.sub - local.set $4 - f64.const 0.5 - local.get $4 - f64.mul - local.get $4 - f64.mul - local.set $5 - local.get $4 - f64.const 2 - local.get $4 - f64.add - f64.div - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $8 - local.get $8 - f64.const 0.3999999999940942 - local.get $8 - f64.const 0.22222198432149784 - local.get $8 - f64.const 0.15313837699209373 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $9 - local.get $7 - f64.const 0.6666666666666735 - local.get $8 - f64.const 0.2857142874366239 - local.get $8 - f64.const 0.1818357216161805 - local.get $8 - f64.const 0.14798198605116586 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $10 - local.get $10 - local.get $9 - f64.add - local.set $11 - local.get $4 - local.get $5 - f64.sub - local.set $12 - local.get $12 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const -4294967296 - i64.and - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $12 - local.get $4 - local.get $12 - f64.sub - local.get $5 - f64.sub - local.get $6 - local.get $5 - local.get $11 - f64.add - f64.mul - f64.add - local.set $13 - local.get $12 - f64.const 0.4342944818781689 - f64.mul - local.set $14 - local.get $3 - f64.convert_i32_s - local.set $15 - local.get $15 - f64.const 0.30102999566361177 - f64.mul - local.set $16 - local.get $15 - f64.const 3.694239077158931e-13 - f64.mul - local.get $13 - local.get $12 - f64.add - f64.const 2.5082946711645275e-11 - f64.mul - f64.add - local.get $13 - f64.const 0.4342944818781689 - f64.mul - f64.add - local.set $17 - local.get $16 - local.get $14 - f64.add - local.set $8 - local.get $17 - local.get $16 - local.get $8 - f64.sub - local.get $14 - f64.add - f64.add - local.set $17 - local.get $17 - local.get $8 - f64.add - ) - (func $../../lib/libm/assembly/libm/log10 (; 44 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.log10 - ) - (func $../../lib/libm/assembly/libm/log1p (; 45 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.log1p - ) - (func $~lib/math/NativeMath.log2 (; 46 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - (local $13 f64) - (local $14 f64) - (local $15 f64) - (local $16 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - i32.const 0 - local.set $3 - local.get $2 - i32.const 1048576 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $2 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i64.const 1 - i64.shl - i64.const 0 - i64.eq - if - f64.const -1 - local.get $0 - local.get $0 - f64.mul - f64.div - return - end - local.get $2 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.div - return - end - local.get $3 - i32.const 54 - i32.sub - local.set $3 - local.get $0 - f64.const 18014398509481984 - f64.mul - local.set $0 - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - else - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - return - else - local.get $2 - i32.const 1072693248 - i32.eq - if (result i32) - local.get $1 - i64.const 32 - i64.shl - i64.const 0 - i64.eq - else - i32.const 0 - end - if - f64.const 0 - return - end - end - end - local.get $2 - i32.const 1072693248 - i32.const 1072079006 - i32.sub - i32.add - local.set $2 - local.get $3 - local.get $2 - i32.const 20 - i32.shr_u - i32.const 1023 - i32.sub - i32.add - local.set $3 - local.get $2 - i32.const 1048575 - i32.and - i32.const 1072079006 - i32.add - local.set $2 - local.get $2 - i64.extend_i32_u - i64.const 32 - i64.shl - local.get $1 - i64.const 4294967295 - i64.and - i64.or - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $0 - local.get $0 - f64.const 1 - f64.sub - local.set $4 - f64.const 0.5 - local.get $4 - f64.mul - local.get $4 - f64.mul - local.set $5 - local.get $4 - f64.const 2 - local.get $4 - f64.add - f64.div - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $8 - local.get $8 - f64.const 0.3999999999940942 - local.get $8 - f64.const 0.22222198432149784 - local.get $8 - f64.const 0.15313837699209373 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $9 - local.get $7 - f64.const 0.6666666666666735 - local.get $8 - f64.const 0.2857142874366239 - local.get $8 - f64.const 0.1818357216161805 - local.get $8 - f64.const 0.14798198605116586 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $10 - local.get $10 - local.get $9 - f64.add - local.set $11 - local.get $4 - local.get $5 - f64.sub - local.set $12 - local.get $12 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const -4294967296 - i64.and - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $12 - local.get $4 - local.get $12 - f64.sub - local.get $5 - f64.sub - local.get $6 - local.get $5 - local.get $11 - f64.add - f64.mul - f64.add - local.set $13 - local.get $12 - f64.const 1.4426950407214463 - f64.mul - local.set $14 - local.get $13 - local.get $12 - f64.add - f64.const 1.6751713164886512e-10 - f64.mul - local.get $13 - f64.const 1.4426950407214463 - f64.mul - f64.add - local.set $15 - local.get $3 - f64.convert_i32_s - local.set $16 - local.get $16 - local.get $14 - f64.add - local.set $8 - local.get $15 - local.get $16 - local.get $8 - f64.sub - local.get $14 - f64.add - f64.add - local.set $15 - local.get $8 - local.set $14 - local.get $15 - local.get $14 - f64.add - ) - (func $../../lib/libm/assembly/libm/log2 (; 47 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.log2 - ) - (func $../../lib/libm/assembly/libm/max (; 48 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - (local $2 f64) - (local $3 f64) - local.get $0 - local.set $3 - local.get $1 - local.set $2 - local.get $3 - local.get $2 - f64.max - ) - (func $../../lib/libm/assembly/libm/min (; 49 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - (local $2 f64) - (local $3 f64) - local.get $0 - local.set $3 - local.get $1 - local.set $2 - local.get $3 - local.get $2 - f64.min - ) - (func $~lib/math/NativeMath.pow (; 50 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - (local $2 i64) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 f64) - (local $16 f64) - (local $17 f64) - (local $18 f64) - (local $19 f64) - (local $20 f64) - (local $21 f64) - (local $22 f64) - (local $23 f64) - (local $24 f64) - (local $25 f64) - (local $26 f64) - (local $27 f64) - (local $28 i32) - (local $29 i32) - (local $30 f64) - (local $31 f64) - (local $32 f64) - (local $33 f64) - (local $34 f64) - (local $35 f64) - (local $36 f64) - (local $37 f64) - (local $38 f64) - (local $39 f64) - (local $40 f64) - (local $41 i32) - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $3 - local.get $2 - i32.wrap_i64 - local.set $4 - local.get $1 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $5 - local.get $2 - i32.wrap_i64 - local.set $6 - local.get $3 - i32.const 2147483647 - i32.and - local.set $7 - local.get $5 - i32.const 2147483647 - i32.and - local.set $8 - local.get $8 - local.get $6 - i32.or - i32.const 0 - i32.eq - if - f64.const 1 - return - end - local.get $7 - i32.const 2146435072 - i32.gt_s - if (result i32) - i32.const 1 - else - local.get $7 - i32.const 2146435072 - i32.eq - if (result i32) - local.get $4 - i32.const 0 - i32.ne - else - i32.const 0 - end - end - if (result i32) - i32.const 1 - else - local.get $8 - i32.const 2146435072 - i32.gt_s - end - if (result i32) - i32.const 1 - else - local.get $8 - i32.const 2146435072 - i32.eq - if (result i32) - local.get $6 - i32.const 0 - i32.ne - else - i32.const 0 - end - end - if - local.get $0 - local.get $1 - f64.add - return - end - i32.const 0 - local.set $9 - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $8 - i32.const 1128267776 - i32.ge_s - if - i32.const 2 - local.set $9 - else - local.get $8 - i32.const 1072693248 - i32.ge_s - if - local.get $8 - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - local.set $10 - local.get $10 - i32.const 20 - i32.gt_s - local.set $11 - i32.const 52 - i32.const 20 - local.get $11 - select - local.get $10 - i32.sub - local.set $12 - local.get $6 - local.get $8 - local.get $11 - select - local.set $13 - local.get $13 - local.get $12 - i32.shr_s - local.set $14 - local.get $14 - local.get $12 - i32.shl - local.get $13 - i32.eq - if - i32.const 2 - local.get $14 - i32.const 1 - i32.and - i32.sub - local.set $9 - end - end - end - end - local.get $6 - i32.const 0 - i32.eq - if - local.get $8 - i32.const 2146435072 - i32.eq - if - local.get $7 - i32.const 1072693248 - i32.sub - local.get $4 - i32.or - i32.const 0 - i32.eq - if - f64.const nan:0x8000000000000 - return - else - local.get $7 - i32.const 1072693248 - i32.ge_s - if - local.get $5 - i32.const 0 - i32.ge_s - if (result f64) - local.get $1 - else - f64.const 0 - end - return - else - local.get $5 - i32.const 0 - i32.ge_s - if (result f64) - f64.const 0 - else - local.get $1 - f64.neg - end - return - end - unreachable - end - unreachable - end - local.get $8 - i32.const 1072693248 - i32.eq - if - local.get $5 - i32.const 0 - i32.ge_s - if - local.get $0 - return - end - f64.const 1 - local.get $0 - f64.div - return - end - local.get $5 - i32.const 1073741824 - i32.eq - if - local.get $0 - local.get $0 - f64.mul - return - end - local.get $5 - i32.const 1071644672 - i32.eq - if - local.get $3 - i32.const 0 - i32.ge_s - if - local.get $0 - f64.sqrt - return - end - end - end - local.get $0 - f64.abs - local.set $15 - local.get $4 - i32.const 0 - i32.eq - if - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $7 - i32.const 2146435072 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $7 - i32.const 1072693248 - i32.eq - end - if - local.get $15 - local.set $16 - local.get $5 - i32.const 0 - i32.lt_s - if - f64.const 1 - local.get $16 - f64.div - local.set $16 - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $7 - i32.const 1072693248 - i32.sub - local.get $9 - i32.or - i32.const 0 - i32.eq - if - local.get $16 - local.get $16 - f64.sub - local.set $17 - local.get $17 - local.get $17 - f64.div - local.set $16 - else - local.get $9 - i32.const 1 - i32.eq - if - local.get $16 - f64.neg - local.set $16 - end - end - end - local.get $16 - return - end - end - f64.const 1 - local.set $18 - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $9 - i32.const 0 - i32.eq - if - local.get $0 - local.get $0 - f64.sub - local.set $17 - local.get $17 - local.get $17 - f64.div - return - end - local.get $9 - i32.const 1 - i32.eq - if - f64.const -1 - local.set $18 - end - end - local.get $8 - i32.const 1105199104 - i32.gt_s - if - local.get $8 - i32.const 1139802112 - i32.gt_s - if - local.get $7 - i32.const 1072693247 - i32.le_s - if - local.get $5 - i32.const 0 - i32.lt_s - if (result f64) - f64.const 1.e+300 - f64.const 1.e+300 - f64.mul - else - f64.const 1e-300 - f64.const 1e-300 - f64.mul - end - return - end - local.get $7 - i32.const 1072693248 - i32.ge_s - if - local.get $5 - i32.const 0 - i32.gt_s - if (result f64) - f64.const 1.e+300 - f64.const 1.e+300 - f64.mul - else - f64.const 1e-300 - f64.const 1e-300 - f64.mul - end - return - end - end - local.get $7 - i32.const 1072693247 - i32.lt_s - if - local.get $5 - i32.const 0 - i32.lt_s - if (result f64) - local.get $18 - f64.const 1.e+300 - f64.mul - f64.const 1.e+300 - f64.mul - else - local.get $18 - f64.const 1e-300 - f64.mul - f64.const 1e-300 - f64.mul - end - return - end - local.get $7 - i32.const 1072693248 - i32.gt_s - if - local.get $5 - i32.const 0 - i32.gt_s - if (result f64) - local.get $18 - f64.const 1.e+300 - f64.mul - f64.const 1.e+300 - f64.mul - else - local.get $18 - f64.const 1e-300 - f64.mul - f64.const 1e-300 - f64.mul - end - return - end - local.get $15 - f64.const 1 - f64.sub - local.set $24 - local.get $24 - local.get $24 - f64.mul - f64.const 0.5 - local.get $24 - f64.const 0.3333333333333333 - local.get $24 - f64.const 0.25 - f64.mul - f64.sub - f64.mul - f64.sub - f64.mul - local.set $27 - f64.const 1.4426950216293335 - local.get $24 - f64.mul - local.set $25 - local.get $24 - f64.const 1.9259629911266175e-08 - f64.mul - local.get $27 - f64.const 1.4426950408889634 - f64.mul - f64.sub - local.set $26 - local.get $25 - local.get $26 - f64.add - local.set $19 - local.get $19 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $19 - local.get $26 - local.get $19 - local.get $25 - f64.sub - f64.sub - local.set $20 - else - i32.const 0 - local.set $29 - local.get $7 - i32.const 1048576 - i32.lt_s - if - local.get $15 - f64.const 9007199254740992 - f64.mul - local.set $15 - local.get $29 - i32.const 53 - i32.sub - local.set $29 - local.get $15 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $7 - end - local.get $29 - local.get $7 - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - i32.add - local.set $29 - local.get $7 - i32.const 1048575 - i32.and - local.set $28 - local.get $28 - i32.const 1072693248 - i32.or - local.set $7 - local.get $28 - i32.const 235662 - i32.le_s - if - i32.const 0 - local.set $10 - else - local.get $28 - i32.const 767610 - i32.lt_s - if - i32.const 1 - local.set $10 - else - i32.const 0 - local.set $10 - local.get $29 - i32.const 1 - i32.add - local.set $29 - local.get $7 - i32.const 1048576 - i32.sub - local.set $7 - end - end - local.get $15 - i64.reinterpret_f64 - i64.const 4294967295 - i64.and - local.get $7 - i64.extend_i32_s - i64.const 32 - i64.shl - i64.or - f64.reinterpret_i64 - local.set $15 - f64.const 1.5 - f64.const 1 - local.get $10 - select - local.set $35 - local.get $15 - local.get $35 - f64.sub - local.set $25 - f64.const 1 - local.get $15 - local.get $35 - f64.add - f64.div - local.set $26 - local.get $25 - local.get $26 - f64.mul - local.set $17 - local.get $17 - local.set $31 - local.get $31 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $31 - local.get $7 - i32.const 1 - i32.shr_s - i32.const 536870912 - i32.or - i32.const 524288 - i32.add - local.get $10 - i32.const 18 - i32.shl - i32.add - i64.extend_i32_s - i64.const 32 - i64.shl - f64.reinterpret_i64 - local.set $33 - local.get $15 - local.get $33 - local.get $35 - f64.sub - f64.sub - local.set $34 - local.get $26 - local.get $25 - local.get $31 - local.get $33 - f64.mul - f64.sub - local.get $31 - local.get $34 - f64.mul - f64.sub - f64.mul - local.set $32 - local.get $17 - local.get $17 - f64.mul - local.set $30 - local.get $30 - local.get $30 - f64.mul - f64.const 0.5999999999999946 - local.get $30 - f64.const 0.4285714285785502 - local.get $30 - f64.const 0.33333332981837743 - local.get $30 - f64.const 0.272728123808534 - local.get $30 - f64.const 0.23066074577556175 - local.get $30 - f64.const 0.20697501780033842 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $23 - local.get $23 - local.get $32 - local.get $31 - local.get $17 - f64.add - f64.mul - f64.add - local.set $23 - local.get $31 - local.get $31 - f64.mul - local.set $30 - f64.const 3 - local.get $30 - f64.add - local.get $23 - f64.add - local.set $33 - local.get $33 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $33 - local.get $23 - local.get $33 - f64.const 3 - f64.sub - local.get $30 - f64.sub - f64.sub - local.set $34 - local.get $31 - local.get $33 - f64.mul - local.set $25 - local.get $32 - local.get $33 - f64.mul - local.get $34 - local.get $17 - f64.mul - f64.add - local.set $26 - local.get $25 - local.get $26 - f64.add - local.set $21 - local.get $21 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $21 - local.get $26 - local.get $21 - local.get $25 - f64.sub - f64.sub - local.set $22 - f64.const 0.9617967009544373 - local.get $21 - f64.mul - local.set $36 - f64.const 1.350039202129749e-08 - f64.const 0 - local.get $10 - select - local.set $37 - f64.const -7.028461650952758e-09 - local.get $21 - f64.mul - local.get $22 - f64.const 0.9617966939259756 - f64.mul - f64.add - local.get $37 - f64.add - local.set $38 - local.get $29 - f64.convert_i32_s - local.set $24 - f64.const 0.5849624872207642 - f64.const 0 - local.get $10 - select - local.set $39 - local.get $36 - local.get $38 - f64.add - local.get $39 - f64.add - local.get $24 - f64.add - local.set $19 - local.get $19 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $19 - local.get $38 - local.get $19 - local.get $24 - f64.sub - local.get $39 - f64.sub - local.get $36 - f64.sub - f64.sub - local.set $20 - end - local.get $1 - local.set $40 - local.get $40 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $40 - local.get $1 - local.get $40 - f64.sub - local.get $19 - f64.mul - local.get $1 - local.get $20 - f64.mul - f64.add - local.set $22 - local.get $40 - local.get $19 - f64.mul - local.set $21 - local.get $22 - local.get $21 - f64.add - local.set $16 - local.get $16 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $28 - local.get $2 - i32.wrap_i64 - local.set $41 - local.get $28 - i32.const 1083179008 - i32.ge_s - if - local.get $28 - i32.const 1083179008 - i32.sub - local.get $41 - i32.or - i32.const 0 - i32.ne - if - local.get $18 - f64.const 1.e+300 - f64.mul - f64.const 1.e+300 - f64.mul - return - end - local.get $22 - f64.const 8.008566259537294e-17 - f64.add - local.get $16 - local.get $21 - f64.sub - f64.gt - if - local.get $18 - f64.const 1.e+300 - f64.mul - f64.const 1.e+300 - f64.mul - return - end - else - local.get $28 - i32.const 2147483647 - i32.and - i32.const 1083231232 - i32.ge_s - if - local.get $28 - i32.const -1064252416 - i32.sub - local.get $41 - i32.or - i32.const 0 - i32.ne - if - local.get $18 - f64.const 1e-300 - f64.mul - f64.const 1e-300 - f64.mul - return - end - local.get $22 - local.get $16 - local.get $21 - f64.sub - f64.le - if - local.get $18 - f64.const 1e-300 - f64.mul - f64.const 1e-300 - f64.mul - return - end - end - end - local.get $28 - i32.const 2147483647 - i32.and - local.set $41 - local.get $41 - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - local.set $10 - i32.const 0 - local.set $29 - local.get $41 - i32.const 1071644672 - i32.gt_s - if - local.get $28 - i32.const 1048576 - local.get $10 - i32.const 1 - i32.add - i32.shr_s - i32.add - local.set $29 - local.get $29 - i32.const 2147483647 - i32.and - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - local.set $10 - f64.const 0 - local.set $24 - local.get $29 - i32.const 1048575 - local.get $10 - i32.shr_s - i32.const -1 - i32.xor - i32.and - i64.extend_i32_s - i64.const 32 - i64.shl - f64.reinterpret_i64 - local.set $24 - local.get $29 - i32.const 1048575 - i32.and - i32.const 1048576 - i32.or - i32.const 20 - local.get $10 - i32.sub - i32.shr_s - local.set $29 - local.get $28 - i32.const 0 - i32.lt_s - if - i32.const 0 - local.get $29 - i32.sub - local.set $29 - end - local.get $21 - local.get $24 - f64.sub - local.set $21 - end - local.get $22 - local.get $21 - f64.add - local.set $24 - local.get $24 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $24 - local.get $24 - f64.const 0.6931471824645996 - f64.mul - local.set $25 - local.get $22 - local.get $24 - local.get $21 - f64.sub - f64.sub - f64.const 0.6931471805599453 - f64.mul - local.get $24 - f64.const -1.904654299957768e-09 - f64.mul - f64.add - local.set $26 - local.get $25 - local.get $26 - f64.add - local.set $16 - local.get $26 - local.get $16 - local.get $25 - f64.sub - f64.sub - local.set $27 - local.get $16 - local.get $16 - f64.mul - local.set $24 - local.get $16 - local.get $24 - f64.const 0.16666666666666602 - local.get $24 - f64.const -2.7777777777015593e-03 - local.get $24 - f64.const 6.613756321437934e-05 - local.get $24 - f64.const -1.6533902205465252e-06 - local.get $24 - f64.const 4.1381367970572385e-08 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.sub - local.set $19 - local.get $16 - local.get $19 - f64.mul - local.get $19 - f64.const 2 - f64.sub - f64.div - local.get $27 - local.get $16 - local.get $27 - f64.mul - f64.add - f64.sub - local.set $23 - f64.const 1 - local.get $23 - local.get $16 - f64.sub - f64.sub - local.set $16 - local.get $16 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $28 - local.get $28 - local.get $29 - i32.const 20 - i32.shl - i32.add - local.set $28 - local.get $28 - i32.const 20 - i32.shr_s - i32.const 0 - i32.le_s - if - local.get $16 - local.get $29 - call $~lib/math/NativeMath.scalbn - local.set $16 - else - local.get $16 - i64.reinterpret_f64 - i64.const 4294967295 - i64.and - local.get $28 - i64.extend_i32_s - i64.const 32 - i64.shl - i64.or - f64.reinterpret_i64 - local.set $16 - end - local.get $18 - local.get $16 - f64.mul - ) - (func $../../lib/libm/assembly/libm/pow (; 51 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - local.get $0 - local.get $1 - call $~lib/math/NativeMath.pow - ) - (func $../../lib/libm/assembly/libm/round (; 52 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 f64) - local.get $0 - local.set $1 - local.get $1 - f64.const 0.5 - f64.add - f64.floor - local.get $1 - f64.copysign - ) - (func $../../lib/libm/assembly/libm/sign (; 53 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 f64) - block $~lib/math/NativeMath.sign|inlined.0 (result f64) - local.get $0 - local.set $1 - local.get $1 - f64.const 0 - f64.gt - if (result f64) - f64.const 1 - else - local.get $1 - f64.const 0 - f64.lt - if (result f64) - f64.const -1 - else - local.get $1 - end - end - br $~lib/math/NativeMath.sign|inlined.0 - end - ) - (func $~lib/math/NativeMath.sin (; 54 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 i64) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 f64) - (local $17 i32) - (local $18 f64) - (local $19 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - local.get $2 - i32.const 31 - i32.shr_u - local.set $3 - local.get $2 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1072243195 - i32.le_u - if - local.get $2 - i32.const 1045430272 - i32.lt_u - if - local.get $0 - return - end - block $~lib/math/sin_kern|inlined.1 (result f64) - local.get $0 - local.set $6 - f64.const 0 - local.set $5 - i32.const 0 - local.set $4 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $8 - f64.const 0.00833333333332249 - local.get $7 - f64.const -1.984126982985795e-04 - local.get $7 - f64.const 2.7557313707070068e-06 - f64.mul - f64.add - f64.mul - f64.add - local.get $7 - local.get $8 - f64.mul - f64.const -2.5050760253406863e-08 - local.get $7 - f64.const 1.58969099521155e-10 - f64.mul - f64.add - f64.mul - f64.add - local.set $9 - local.get $7 - local.get $6 - f64.mul - local.set $10 - local.get $4 - i32.eqz - if - local.get $6 - local.get $10 - f64.const -0.16666666666666632 - local.get $7 - local.get $9 - f64.mul - f64.add - f64.mul - f64.add - br $~lib/math/sin_kern|inlined.1 - else - local.get $6 - local.get $7 - f64.const 0.5 - local.get $5 - f64.mul - local.get $10 - local.get $9 - f64.mul - f64.sub - f64.mul - local.get $5 - f64.sub - local.get $10 - f64.const -0.16666666666666632 - f64.mul - f64.sub - f64.sub - br $~lib/math/sin_kern|inlined.1 - end - unreachable - end - return - end - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - local.get $0 - f64.sub - return - end - block $~lib/math/rempio2|inlined.1 (result i32) - local.get $0 - local.set $5 - local.get $1 - local.set $11 - local.get $3 - local.set $4 - local.get $11 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 2147483647 - i32.and - local.set $12 - local.get $12 - i32.const 1073928572 - i32.lt_u - if - i32.const 1 - local.set $13 - local.get $4 - i32.eqz - if - local.get $5 - f64.const 1.5707963267341256 - f64.sub - local.set $10 - local.get $12 - i32.const 1073291771 - i32.ne - if - local.get $10 - f64.const 6.077100506506192e-11 - f64.sub - local.set $9 - local.get $10 - local.get $9 - f64.sub - f64.const 6.077100506506192e-11 - f64.sub - local.set $8 - else - local.get $10 - f64.const 6.077100506303966e-11 - f64.sub - local.set $10 - local.get $10 - f64.const 2.0222662487959506e-21 - f64.sub - local.set $9 - local.get $10 - local.get $9 - f64.sub - f64.const 2.0222662487959506e-21 - f64.sub - local.set $8 - end - else - local.get $5 - f64.const 1.5707963267341256 - f64.add - local.set $10 - local.get $12 - i32.const 1073291771 - i32.ne - if - local.get $10 - f64.const 6.077100506506192e-11 - f64.add - local.set $9 - local.get $10 - local.get $9 - f64.sub - f64.const 6.077100506506192e-11 - f64.add - local.set $8 - else - local.get $10 - f64.const 6.077100506303966e-11 - f64.add - local.set $10 - local.get $10 - f64.const 2.0222662487959506e-21 - f64.add - local.set $9 - local.get $10 - local.get $9 - f64.sub - f64.const 2.0222662487959506e-21 - f64.add - local.set $8 - end - i32.const -1 - local.set $13 - end - local.get $9 - global.set $~lib/math/rempio2_y0 - local.get $8 - global.set $~lib/math/rempio2_y1 - local.get $13 - br $~lib/math/rempio2|inlined.1 - end - local.get $12 - i32.const 1094263291 - i32.lt_u - if - local.get $5 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $8 - local.get $5 - local.get $8 - f64.const 1.5707963267341256 - f64.mul - f64.sub - local.set $9 - local.get $8 - f64.const 6.077100506506192e-11 - f64.mul - local.set $10 - local.get $12 - i32.const 20 - i32.shr_u - local.set $13 - local.get $9 - local.get $10 - f64.sub - local.set $7 - local.get $7 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $14 - local.get $13 - local.get $14 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $15 - local.get $15 - i32.const 16 - i32.gt_u - if - local.get $9 - local.set $6 - local.get $8 - f64.const 6.077100506303966e-11 - f64.mul - local.set $10 - local.get $6 - local.get $10 - f64.sub - local.set $9 - local.get $8 - f64.const 2.0222662487959506e-21 - f64.mul - local.get $6 - local.get $9 - f64.sub - local.get $10 - f64.sub - f64.sub - local.set $10 - local.get $9 - local.get $10 - f64.sub - local.set $7 - local.get $7 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $14 - local.get $13 - local.get $14 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $15 - local.get $15 - i32.const 49 - i32.gt_u - if - local.get $9 - local.set $16 - local.get $8 - f64.const 2.0222662487111665e-21 - f64.mul - local.set $10 - local.get $16 - local.get $10 - f64.sub - local.set $9 - local.get $8 - f64.const 8.4784276603689e-32 - f64.mul - local.get $16 - local.get $9 - f64.sub - local.get $10 - f64.sub - f64.sub - local.set $10 - local.get $9 - local.get $10 - f64.sub - local.set $7 - end - end - local.get $9 - local.get $7 - f64.sub - local.get $10 - f64.sub - local.set $6 - local.get $7 - global.set $~lib/math/rempio2_y0 - local.get $6 - global.set $~lib/math/rempio2_y1 - local.get $8 - i32.trunc_f64_s - br $~lib/math/rempio2|inlined.1 - end - local.get $5 - local.get $11 - call $~lib/math/pio2_large_quot - local.set $15 - i32.const 0 - local.get $15 - i32.sub - local.get $15 - local.get $4 - select - end - local.set $17 - global.get $~lib/math/rempio2_y0 - local.set $18 - global.get $~lib/math/rempio2_y1 - local.set $19 - local.get $17 - i32.const 1 - i32.and - if (result f64) - local.get $18 - local.set $8 - local.get $19 - local.set $16 - local.get $8 - local.get $8 - f64.mul - local.set $5 - local.get $5 - local.get $5 - f64.mul - local.set $6 - local.get $5 - f64.const 0.0416666666666666 - local.get $5 - f64.const -0.001388888888887411 - local.get $5 - f64.const 2.480158728947673e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.get $6 - local.get $6 - f64.mul - f64.const -2.7557314351390663e-07 - local.get $5 - f64.const 2.087572321298175e-09 - local.get $5 - f64.const -1.1359647557788195e-11 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $7 - f64.const 0.5 - local.get $5 - f64.mul - local.set $10 - f64.const 1 - local.get $10 - f64.sub - local.set $6 - local.get $6 - f64.const 1 - local.get $6 - f64.sub - local.get $10 - f64.sub - local.get $5 - local.get $7 - f64.mul - local.get $8 - local.get $16 - f64.mul - f64.sub - f64.add - f64.add - else - block $~lib/math/sin_kern|inlined.2 (result f64) - local.get $18 - local.set $16 - local.get $19 - local.set $9 - i32.const 1 - local.set $13 - local.get $16 - local.get $16 - f64.mul - local.set $10 - local.get $10 - local.get $10 - f64.mul - local.set $7 - f64.const 0.00833333333332249 - local.get $10 - f64.const -1.984126982985795e-04 - local.get $10 - f64.const 2.7557313707070068e-06 - f64.mul - f64.add - f64.mul - f64.add - local.get $10 - local.get $7 - f64.mul - f64.const -2.5050760253406863e-08 - local.get $10 - f64.const 1.58969099521155e-10 - f64.mul - f64.add - f64.mul - f64.add - local.set $6 - local.get $10 - local.get $16 - f64.mul - local.set $5 - local.get $13 - i32.eqz - if - local.get $16 - local.get $5 - f64.const -0.16666666666666632 - local.get $10 - local.get $6 - f64.mul - f64.add - f64.mul - f64.add - br $~lib/math/sin_kern|inlined.2 - else - local.get $16 - local.get $10 - f64.const 0.5 - local.get $9 - f64.mul - local.get $5 - local.get $6 - f64.mul - f64.sub - f64.mul - local.get $9 - f64.sub - local.get $5 - f64.const -0.16666666666666632 - f64.mul - f64.sub - f64.sub - br $~lib/math/sin_kern|inlined.2 - end - unreachable - end - end - local.set $0 - local.get $17 - i32.const 2 - i32.and - if (result f64) - local.get $0 - f64.neg - else - local.get $0 - end - ) - (func $../../lib/libm/assembly/libm/sin (; 55 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.sin - ) - (func $~lib/math/NativeMath.sinh (; 56 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 f64) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - local.get $0 - i64.reinterpret_f64 - i64.const 9223372036854775807 - i64.and - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $2 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $3 - f64.const 0.5 - local.get $0 - f64.copysign - local.set $5 - local.get $3 - i32.const 1082535490 - i32.lt_u - if - local.get $2 - call $~lib/math/NativeMath.expm1 - local.set $4 - local.get $3 - i32.const 1072693248 - i32.lt_u - if - local.get $3 - i32.const 1045430272 - i32.lt_u - if - local.get $0 - return - end - local.get $5 - f64.const 2 - local.get $4 - f64.mul - local.get $4 - local.get $4 - f64.mul - local.get $4 - f64.const 1 - f64.add - f64.div - f64.sub - f64.mul - return - end - local.get $5 - local.get $4 - local.get $4 - local.get $4 - f64.const 1 - f64.add - f64.div - f64.add - f64.mul - return - end - f64.const 2 - local.get $5 - f64.mul - local.get $2 - local.set $6 - i32.const 1023 - i32.const 2043 - i32.const 2 - i32.div_u - i32.add - i32.const 20 - i32.shl - i64.extend_i32_u - i64.const 32 - i64.shl - f64.reinterpret_i64 - local.set $7 - local.get $6 - f64.const 1416.0996898839683 - f64.sub - call $~lib/math/NativeMath.exp - local.get $7 - f64.mul - local.get $7 - f64.mul - f64.mul - local.set $4 - local.get $4 - ) - (func $../../lib/libm/assembly/libm/sinh (; 57 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.sinh - ) - (func $../../lib/libm/assembly/libm/sqrt (; 58 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 f64) - local.get $0 - local.set $1 - local.get $1 - f64.sqrt - ) - (func $~lib/math/tan_kern (; 59 ;) (type $FUNCSIG$dddi) (param $0 f64) (param $1 f64) (param $2 i32) (result f64) - (local $3 f64) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 f64) - (local $12 f64) - local.get $0 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $8 - local.get $8 - i32.const 2147483647 - i32.and - local.set $9 - local.get $9 - i32.const 1072010280 - i32.ge_s - local.set $10 - local.get $10 - if - local.get $8 - i32.const 0 - i32.lt_s - if - local.get $0 - f64.neg - local.set $0 - local.get $1 - f64.neg - local.set $1 - end - f64.const 0.7853981633974483 - local.get $0 - f64.sub - local.set $3 - f64.const 3.061616997868383e-17 - local.get $1 - f64.sub - local.set $6 - local.get $3 - local.get $6 - f64.add - local.set $0 - f64.const 0 - local.set $1 - end - local.get $0 - local.get $0 - f64.mul - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $6 - f64.const 0.13333333333320124 - local.get $6 - f64.const 0.021869488294859542 - local.get $6 - f64.const 3.5920791075913124e-03 - local.get $6 - f64.const 5.880412408202641e-04 - local.get $6 - f64.const 7.817944429395571e-05 - local.get $6 - f64.const -1.8558637485527546e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $4 - local.get $3 - f64.const 0.05396825397622605 - local.get $6 - f64.const 0.0088632398235993 - local.get $6 - f64.const 1.4562094543252903e-03 - local.get $6 - f64.const 2.464631348184699e-04 - local.get $6 - f64.const 7.140724913826082e-05 - local.get $6 - f64.const 2.590730518636337e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $5 - local.get $3 - local.get $0 - f64.mul - local.set $7 - local.get $1 - local.get $3 - local.get $7 - local.get $4 - local.get $5 - f64.add - f64.mul - local.get $1 - f64.add - f64.mul - f64.add - local.set $4 - local.get $4 - f64.const 0.3333333333333341 - local.get $7 - f64.mul - f64.add - local.set $4 - local.get $0 - local.get $4 - f64.add - local.set $6 - local.get $10 - if - local.get $2 - f64.convert_i32_s - local.set $5 - f64.const 1 - local.get $8 - i32.const 30 - i32.shr_s - i32.const 2 - i32.and - f64.convert_i32_s - f64.sub - local.get $5 - f64.const 2 - local.get $0 - local.get $6 - local.get $6 - f64.mul - local.get $6 - local.get $5 - f64.add - f64.div - local.get $4 - f64.sub - f64.sub - f64.mul - f64.sub - f64.mul - return - end - local.get $2 - i32.const 1 - i32.eq - if - local.get $6 - return - end - local.get $6 - local.set $3 - local.get $3 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $3 - local.get $4 - local.get $3 - local.get $0 - f64.sub - f64.sub - local.set $5 - f64.const 1 - f64.neg - local.get $6 - f64.div - local.tee $11 - local.set $12 - local.get $12 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $12 - f64.const 1 - local.get $12 - local.get $3 - f64.mul - f64.add - local.set $7 - local.get $12 - local.get $11 - local.get $7 - local.get $12 - local.get $5 - f64.mul - f64.add - f64.mul - f64.add - ) - (func $~lib/math/NativeMath.tan (; 60 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i64) - (local $6 f64) - (local $7 i32) - (local $8 i32) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - (local $13 i32) - (local $14 i32) - (local $15 f64) - (local $16 f64) - (local $17 i32) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - local.get $2 - i32.const 31 - i32.shr_u - local.set $3 - local.get $2 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1072243195 - i32.le_s - if - local.get $2 - i32.const 1044381696 - i32.lt_s - if - local.get $0 - return - end - local.get $0 - f64.const 0 - i32.const 1 - call $~lib/math/tan_kern - return - end - local.get $2 - i32.const 2146435072 - i32.ge_s - if - local.get $0 - local.get $0 - f64.sub - return - end - block $~lib/math/rempio2|inlined.2 (result i32) - local.get $0 - local.set $6 - local.get $1 - local.set $5 - local.get $3 - local.set $4 - local.get $5 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 2147483647 - i32.and - local.set $7 - local.get $7 - i32.const 1073928572 - i32.lt_u - if - i32.const 1 - local.set $8 - local.get $4 - i32.eqz - if - local.get $6 - f64.const 1.5707963267341256 - f64.sub - local.set $9 - local.get $7 - i32.const 1073291771 - i32.ne - if - local.get $9 - f64.const 6.077100506506192e-11 - f64.sub - local.set $10 - local.get $9 - local.get $10 - f64.sub - f64.const 6.077100506506192e-11 - f64.sub - local.set $11 - else - local.get $9 - f64.const 6.077100506303966e-11 - f64.sub - local.set $9 - local.get $9 - f64.const 2.0222662487959506e-21 - f64.sub - local.set $10 - local.get $9 - local.get $10 - f64.sub - f64.const 2.0222662487959506e-21 - f64.sub - local.set $11 - end - else - local.get $6 - f64.const 1.5707963267341256 - f64.add - local.set $9 - local.get $7 - i32.const 1073291771 - i32.ne - if - local.get $9 - f64.const 6.077100506506192e-11 - f64.add - local.set $10 - local.get $9 - local.get $10 - f64.sub - f64.const 6.077100506506192e-11 - f64.add - local.set $11 - else - local.get $9 - f64.const 6.077100506303966e-11 - f64.add - local.set $9 - local.get $9 - f64.const 2.0222662487959506e-21 - f64.add - local.set $10 - local.get $9 - local.get $10 - f64.sub - f64.const 2.0222662487959506e-21 - f64.add - local.set $11 - end - i32.const -1 - local.set $8 - end - local.get $10 - global.set $~lib/math/rempio2_y0 - local.get $11 - global.set $~lib/math/rempio2_y1 - local.get $8 - br $~lib/math/rempio2|inlined.2 - end - local.get $7 - i32.const 1094263291 - i32.lt_u - if - local.get $6 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $11 - local.get $6 - local.get $11 - f64.const 1.5707963267341256 - f64.mul - f64.sub - local.set $10 - local.get $11 - f64.const 6.077100506506192e-11 - f64.mul - local.set $9 - local.get $7 - i32.const 20 - i32.shr_u - local.set $8 - local.get $10 - local.get $9 - f64.sub - local.set $12 - local.get $12 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $13 - local.get $8 - local.get $13 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $14 - local.get $14 - i32.const 16 - i32.gt_u - if - local.get $10 - local.set $15 - local.get $11 - f64.const 6.077100506303966e-11 - f64.mul - local.set $9 - local.get $15 - local.get $9 - f64.sub - local.set $10 - local.get $11 - f64.const 2.0222662487959506e-21 - f64.mul - local.get $15 - local.get $10 - f64.sub - local.get $9 - f64.sub - f64.sub - local.set $9 - local.get $10 - local.get $9 - f64.sub - local.set $12 - local.get $12 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $13 - local.get $8 - local.get $13 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $14 - local.get $14 - i32.const 49 - i32.gt_u - if - local.get $10 - local.set $16 - local.get $11 - f64.const 2.0222662487111665e-21 - f64.mul - local.set $9 - local.get $16 - local.get $9 - f64.sub - local.set $10 - local.get $11 - f64.const 8.4784276603689e-32 - f64.mul - local.get $16 - local.get $10 - f64.sub - local.get $9 - f64.sub - f64.sub - local.set $9 - local.get $10 - local.get $9 - f64.sub - local.set $12 - end - end - local.get $10 - local.get $12 - f64.sub - local.get $9 - f64.sub - local.set $15 - local.get $12 - global.set $~lib/math/rempio2_y0 - local.get $15 - global.set $~lib/math/rempio2_y1 - local.get $11 - i32.trunc_f64_s - br $~lib/math/rempio2|inlined.2 - end - local.get $6 - local.get $5 - call $~lib/math/pio2_large_quot - local.set $14 - i32.const 0 - local.get $14 - i32.sub - local.get $14 - local.get $4 - select - end - local.set $17 - global.get $~lib/math/rempio2_y0 - global.get $~lib/math/rempio2_y1 - i32.const 1 - local.get $17 - i32.const 1 - i32.and - i32.const 1 - i32.shl - i32.sub - call $~lib/math/tan_kern - ) - (func $../../lib/libm/assembly/libm/tan (; 61 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.tan - ) - (func $~lib/math/NativeMath.tanh (; 62 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 f64) - (local $3 i32) - (local $4 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 9223372036854775807 - i64.and - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $2 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $3 - local.get $3 - i32.const 1071748074 - i32.gt_u - if - local.get $3 - i32.const 1077149696 - i32.gt_u - if - f64.const 1 - f64.const 0 - local.get $2 - f64.div - f64.sub - local.set $4 - else - f64.const 2 - local.get $2 - f64.mul - call $~lib/math/NativeMath.expm1 - local.set $4 - f64.const 1 - f64.const 2 - local.get $4 - f64.const 2 - f64.add - f64.div - f64.sub - local.set $4 - end - else - local.get $3 - i32.const 1070618798 - i32.gt_u - if - f64.const 2 - local.get $2 - f64.mul - call $~lib/math/NativeMath.expm1 - local.set $4 - local.get $4 - local.get $4 - f64.const 2 - f64.add - f64.div - local.set $4 - else - local.get $3 - i32.const 1048576 - i32.ge_u - if - f64.const -2 - local.get $2 - f64.mul - call $~lib/math/NativeMath.expm1 - local.set $4 - local.get $4 - f64.neg - local.get $4 - f64.const 2 - f64.add - f64.div - local.set $4 - else - local.get $2 - local.set $4 - end - end - end - local.get $4 - local.get $0 - f64.copysign - ) - (func $../../lib/libm/assembly/libm/tanh (; 63 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/math/NativeMath.tanh - ) - (func $../../lib/libm/assembly/libm/trunc (; 64 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 f64) - local.get $0 - local.set $1 - local.get $1 - f64.trunc - ) - (func $../../lib/libm/assembly/libmf/abs (; 65 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 f32) - local.get $0 - local.set $1 - local.get $1 - f32.abs - ) - (func $~lib/math/Rf (; 66 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 f32) - (local $2 f32) - local.get $0 - f32.const 0.16666586697101593 - local.get $0 - f32.const -0.04274342209100723 - local.get $0 - f32.const -0.008656363002955914 - f32.mul - f32.add - f32.mul - f32.add - f32.mul - local.set $1 - f32.const 1 - local.get $0 - f32.const -0.7066296339035034 - f32.mul - f32.add - local.set $2 - local.get $1 - local.get $2 - f32.div - ) - (func $~lib/math/NativeMathf.acos (; 67 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f32) - (local $4 f32) - (local $5 f32) - (local $6 f32) - (local $7 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1065353216 - i32.ge_u - if - local.get $2 - i32.const 1065353216 - i32.eq - if - local.get $1 - i32.const 31 - i32.shr_u - if - f32.const 2 - f32.const 1.570796251296997 - f32.mul - f32.const 7.52316384526264e-37 - f32.add - return - end - f32.const 0 - return - end - f32.const 0 - local.get $0 - local.get $0 - f32.sub - f32.div - return - end - local.get $2 - i32.const 1056964608 - i32.lt_u - if - local.get $2 - i32.const 847249408 - i32.le_u - if - f32.const 1.570796251296997 - f32.const 7.52316384526264e-37 - f32.add - return - end - f32.const 1.570796251296997 - local.get $0 - f32.const 7.549789415861596e-08 - local.get $0 - local.get $0 - local.get $0 - f32.mul - call $~lib/math/Rf - f32.mul - f32.sub - f32.sub - f32.sub - return - end - local.get $1 - i32.const 31 - i32.shr_u - if - f32.const 0.5 - local.get $0 - f32.const 0.5 - f32.mul - f32.add - local.set $3 - local.get $3 - f32.sqrt - local.set $5 - local.get $3 - call $~lib/math/Rf - local.get $5 - f32.mul - f32.const 7.549789415861596e-08 - f32.sub - local.set $4 - f32.const 2 - f32.const 1.570796251296997 - local.get $5 - local.get $4 - f32.add - f32.sub - f32.mul - return - end - f32.const 0.5 - local.get $0 - f32.const 0.5 - f32.mul - f32.sub - local.set $3 - local.get $3 - f32.sqrt - local.set $5 - local.get $5 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $6 - local.get $3 - local.get $6 - local.get $6 - f32.mul - f32.sub - local.get $5 - local.get $6 - f32.add - f32.div - local.set $7 - local.get $3 - call $~lib/math/Rf - local.get $5 - f32.mul - local.get $7 - f32.add - local.set $4 - f32.const 2 - local.get $6 - local.get $4 - f32.add - f32.mul - ) - (func $../../lib/libm/assembly/libmf/acos (; 68 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.acos - ) - (func $~lib/math/NativeMathf.log1p (; 69 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - (local $3 f32) - (local $4 i32) - (local $5 f32) - (local $6 i32) - (local $7 f32) - (local $8 f32) - (local $9 f32) - (local $10 f32) - (local $11 f32) - (local $12 f32) - (local $13 f32) - (local $14 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - f32.const 0 - local.set $2 - f32.const 0 - local.set $3 - i32.const 1 - local.set $4 - local.get $1 - i32.const 1054086096 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i32.const -1082130432 - i32.ge_u - if - local.get $0 - f32.const -1 - f32.eq - if - local.get $0 - f32.const 0 - f32.div - return - end - local.get $0 - local.get $0 - f32.sub - f32.const 0 - f32.div - return - end - local.get $1 - i32.const 1 - i32.shl - i32.const 1728053248 - i32.lt_u - if - local.get $0 - return - end - local.get $1 - i32.const -1097468391 - i32.le_u - if - i32.const 0 - local.set $4 - f32.const 0 - local.set $2 - local.get $0 - local.set $3 - end - else - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - return - end - end - local.get $4 - if - f32.const 1 - local.get $0 - f32.add - local.set $5 - local.get $5 - i32.reinterpret_f32 - local.set $6 - local.get $6 - i32.const 1065353216 - i32.const 1060439283 - i32.sub - i32.add - local.set $6 - local.get $6 - i32.const 23 - i32.shr_u - i32.const 127 - i32.sub - local.set $4 - local.get $4 - i32.const 25 - i32.lt_s - if - local.get $4 - i32.const 2 - i32.ge_s - if (result f32) - f32.const 1 - local.get $5 - local.get $0 - f32.sub - f32.sub - else - local.get $0 - local.get $5 - f32.const 1 - f32.sub - f32.sub - end - local.set $2 - local.get $2 - local.get $5 - f32.div - local.set $2 - else - f32.const 0 - local.set $2 - end - local.get $6 - i32.const 8388607 - i32.and - i32.const 1060439283 - i32.add - local.set $6 - local.get $6 - f32.reinterpret_i32 - f32.const 1 - f32.sub - local.set $3 - end - local.get $3 - f32.const 2 - local.get $3 - f32.add - f32.div - local.set $7 - local.get $7 - local.get $7 - f32.mul - local.set $8 - local.get $8 - local.get $8 - f32.mul - local.set $9 - local.get $9 - f32.const 0.40000972151756287 - local.get $9 - f32.const 0.24279078841209412 - f32.mul - f32.add - f32.mul - local.set $10 - local.get $8 - f32.const 0.6666666269302368 - local.get $9 - f32.const 0.2849878668785095 - f32.mul - f32.add - f32.mul - local.set $11 - local.get $11 - local.get $10 - f32.add - local.set $12 - f32.const 0.5 - local.get $3 - f32.mul - local.get $3 - f32.mul - local.set $13 - local.get $4 - f32.convert_i32_s - local.set $14 - local.get $7 - local.get $13 - local.get $12 - f32.add - f32.mul - local.get $14 - f32.const 9.05800061445916e-06 - f32.mul - local.get $2 - f32.add - f32.add - local.get $13 - f32.sub - local.get $3 - f32.add - local.get $14 - f32.const 0.6931381225585938 - f32.mul - f32.add - ) - (func $~lib/math/NativeMathf.log (; 70 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f32) - (local $4 f32) - (local $5 f32) - (local $6 f32) - (local $7 f32) - (local $8 f32) - (local $9 f32) - (local $10 f32) - (local $11 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - i32.const 0 - local.set $2 - local.get $1 - i32.const 8388608 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i32.const 1 - i32.shl - i32.const 0 - i32.eq - if - f32.const -1 - local.get $0 - local.get $0 - f32.mul - f32.div - return - end - local.get $1 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f32.sub - f32.const 0 - f32.div - return - end - local.get $2 - i32.const 25 - i32.sub - local.set $2 - local.get $0 - f32.const 33554432 - f32.mul - local.set $0 - local.get $0 - i32.reinterpret_f32 - local.set $1 - else - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - return - else - local.get $1 - i32.const 1065353216 - i32.eq - if - f32.const 0 - return - end - end - end - local.get $1 - i32.const 1065353216 - i32.const 1060439283 - i32.sub - i32.add - local.set $1 - local.get $2 - local.get $1 - i32.const 23 - i32.shr_s - i32.const 127 - i32.sub - i32.add - local.set $2 - local.get $1 - i32.const 8388607 - i32.and - i32.const 1060439283 - i32.add - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $0 - local.get $0 - f32.const 1 - f32.sub - local.set $3 - local.get $3 - f32.const 2 - local.get $3 - f32.add - f32.div - local.set $4 - local.get $4 - local.get $4 - f32.mul - local.set $5 - local.get $5 - local.get $5 - f32.mul - local.set $6 - local.get $6 - f32.const 0.40000972151756287 - local.get $6 - f32.const 0.24279078841209412 - f32.mul - f32.add - f32.mul - local.set $7 - local.get $5 - f32.const 0.6666666269302368 - local.get $6 - f32.const 0.2849878668785095 - f32.mul - f32.add - f32.mul - local.set $8 - local.get $8 - local.get $7 - f32.add - local.set $9 - f32.const 0.5 - local.get $3 - f32.mul - local.get $3 - f32.mul - local.set $10 - local.get $2 - f32.convert_i32_s - local.set $11 - local.get $4 - local.get $10 - local.get $9 - f32.add - f32.mul - local.get $11 - f32.const 9.05800061445916e-06 - f32.mul - f32.add - local.get $10 - f32.sub - local.get $3 - f32.add - local.get $11 - f32.const 0.6931381225585938 - f32.mul - f32.add - ) - (func $~lib/math/NativeMathf.acosh (; 71 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1073741824 - i32.lt_u - if - local.get $0 - f32.const 1 - f32.sub - local.set $3 - local.get $3 - local.get $3 - local.get $3 - f32.const 2 - f32.add - f32.mul - f32.sqrt - f32.add - call $~lib/math/NativeMathf.log1p - return - end - local.get $2 - i32.const 1166016512 - i32.lt_u - if - f32.const 2 - local.get $0 - f32.mul - f32.const 1 - local.get $0 - local.get $0 - local.get $0 - f32.mul - f32.const 1 - f32.sub - f32.sqrt - f32.add - f32.div - f32.sub - call $~lib/math/NativeMathf.log - return - end - local.get $0 - call $~lib/math/NativeMathf.log - f32.const 0.6931471824645996 - f32.add - ) - (func $../../lib/libm/assembly/libmf/acosh (; 72 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.acosh - ) - (func $~lib/math/NativeMathf.asin (; 73 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 f32) - (local $2 i32) - (local $3 f32) - (local $4 f64) - local.get $0 - local.set $1 - local.get $0 - i32.reinterpret_f32 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1065353216 - i32.ge_u - if - local.get $2 - i32.const 1065353216 - i32.eq - if - local.get $0 - f32.const 1.5707963705062866 - f32.mul - f32.const 7.52316384526264e-37 - f32.add - return - end - f32.const 0 - local.get $0 - local.get $0 - f32.sub - f32.div - return - end - local.get $2 - i32.const 1056964608 - i32.lt_u - if - local.get $2 - i32.const 964689920 - i32.lt_u - if (result i32) - local.get $2 - i32.const 8388608 - i32.ge_u - else - i32.const 0 - end - if - local.get $0 - return - end - local.get $0 - local.get $0 - local.get $0 - local.get $0 - f32.mul - call $~lib/math/Rf - f32.mul - f32.add - return - end - f32.const 0.5 - local.get $0 - f32.abs - f32.const 0.5 - f32.mul - f32.sub - local.set $3 - local.get $3 - f64.promote_f32 - f64.sqrt - local.set $4 - f32.const 1.5707963705062866 - f64.promote_f32 - f32.const 2 - f64.promote_f32 - local.get $4 - local.get $4 - local.get $3 - call $~lib/math/Rf - f64.promote_f32 - f64.mul - f64.add - f64.mul - f64.sub - f32.demote_f64 - local.set $0 - local.get $0 - local.get $1 - f32.copysign - ) - (func $../../lib/libm/assembly/libmf/asin (; 74 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.asin - ) - (func $~lib/math/NativeMathf.asinh (; 75 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - local.get $0 - i32.reinterpret_f32 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $2 - local.get $1 - i32.const 1166016512 - i32.ge_u - if - local.get $2 - call $~lib/math/NativeMathf.log - f32.const 0.6931471824645996 - f32.add - local.set $2 - else - local.get $1 - i32.const 1073741824 - i32.ge_u - if - f32.const 2 - local.get $2 - f32.mul - f32.const 1 - local.get $2 - local.get $2 - f32.mul - f32.const 1 - f32.add - f32.sqrt - local.get $2 - f32.add - f32.div - f32.add - call $~lib/math/NativeMathf.log - local.set $2 - else - local.get $1 - i32.const 964689920 - i32.ge_u - if - local.get $2 - local.get $2 - local.get $2 - f32.mul - local.get $2 - local.get $2 - f32.mul - f32.const 1 - f32.add - f32.sqrt - f32.const 1 - f32.add - f32.div - f32.add - call $~lib/math/NativeMathf.log1p - local.set $2 - end - end - end - local.get $2 - local.get $0 - f32.copysign - ) - (func $../../lib/libm/assembly/libmf/asinh (; 76 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.asinh - ) - (func $~lib/number/isNaN (; 77 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) - local.get $0 - local.get $0 - f32.ne - ) - (func $~lib/math/NativeMathf.atan (; 78 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - (local $3 f32) - (local $4 i32) - (local $5 f32) - (local $6 f32) - (local $7 f32) - (local $8 f32) - (local $9 i32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $0 - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1283457024 - i32.ge_u - if - local.get $0 - call $~lib/number/isNaN - if - local.get $0 - return - end - f32.const 1.570796251296997 - f32.const 7.52316384526264e-37 - f32.add - local.set $3 - local.get $3 - local.get $2 - f32.copysign - return - end - local.get $1 - i32.const 1054867456 - i32.lt_u - if - local.get $1 - i32.const 964689920 - i32.lt_u - if - local.get $0 - return - end - i32.const -1 - local.set $4 - else - local.get $0 - f32.abs - local.set $0 - local.get $1 - i32.const 1066926080 - i32.lt_u - if - local.get $1 - i32.const 1060110336 - i32.lt_u - if - i32.const 0 - local.set $4 - f32.const 2 - local.get $0 - f32.mul - f32.const 1 - f32.sub - f32.const 2 - local.get $0 - f32.add - f32.div - local.set $0 - else - i32.const 1 - local.set $4 - local.get $0 - f32.const 1 - f32.sub - local.get $0 - f32.const 1 - f32.add - f32.div - local.set $0 - end - else - local.get $1 - i32.const 1075576832 - i32.lt_u - if - i32.const 2 - local.set $4 - local.get $0 - f32.const 1.5 - f32.sub - f32.const 1 - f32.const 1.5 - local.get $0 - f32.mul - f32.add - f32.div - local.set $0 - else - i32.const 3 - local.set $4 - f32.const -1 - local.get $0 - f32.div - local.set $0 - end - end - end - local.get $0 - local.get $0 - f32.mul - local.set $3 - local.get $3 - local.get $3 - f32.mul - local.set $5 - local.get $3 - f32.const 0.333333283662796 - local.get $5 - f32.const 0.14253635704517365 - local.get $5 - f32.const 0.06168760731816292 - f32.mul - f32.add - f32.mul - f32.add - f32.mul - local.set $6 - local.get $5 - f32.const -0.19999158382415771 - local.get $5 - f32.const -0.106480173766613 - f32.mul - f32.add - f32.mul - local.set $7 - local.get $0 - local.get $6 - local.get $7 - f32.add - f32.mul - local.set $8 - local.get $4 - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $8 - f32.sub - return - end - block $break|0 - block $case4|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $4 - local.set $9 - local.get $9 - i32.const 0 - i32.eq - br_if $case0|0 - local.get $9 - i32.const 1 - i32.eq - br_if $case1|0 - local.get $9 - i32.const 2 - i32.eq - br_if $case2|0 - local.get $9 - i32.const 3 - i32.eq - br_if $case3|0 - br $case4|0 - end - f32.const 0.46364760398864746 - local.get $8 - f32.const 5.01215824399992e-09 - f32.sub - local.get $0 - f32.sub - f32.sub - local.set $3 - br $break|0 - end - f32.const 0.7853981256484985 - local.get $8 - f32.const 3.774894707930798e-08 - f32.sub - local.get $0 - f32.sub - f32.sub - local.set $3 - br $break|0 - end - f32.const 0.9827936887741089 - local.get $8 - f32.const 3.447321716976148e-08 - f32.sub - local.get $0 - f32.sub - f32.sub - local.set $3 - br $break|0 - end - f32.const 1.570796251296997 - local.get $8 - f32.const 7.549789415861596e-08 - f32.sub - local.get $0 - f32.sub - f32.sub - local.set $3 - br $break|0 - end - unreachable - end - local.get $3 - local.get $2 - f32.copysign - ) - (func $../../lib/libm/assembly/libmf/atan (; 79 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.atan - ) - (func $~lib/math/NativeMathf.atanh (; 80 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $0 - f32.abs - local.set $2 - local.get $1 - i32.const 1056964608 - i32.lt_u - if - local.get $1 - i32.const 796917760 - i32.ge_u - if - f32.const 0.5 - f32.const 2 - local.get $2 - f32.mul - f32.const 1 - local.get $2 - f32.const 1 - local.get $2 - f32.sub - f32.div - f32.add - f32.mul - call $~lib/math/NativeMathf.log1p - f32.mul - local.set $2 - end - else - f32.const 0.5 - f32.const 2 - local.get $2 - f32.const 1 - local.get $2 - f32.sub - f32.div - f32.mul - call $~lib/math/NativeMathf.log1p - f32.mul - local.set $2 - end - local.get $2 - local.get $0 - f32.copysign - ) - (func $../../lib/libm/assembly/libmf/atanh (; 81 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.atanh - ) - (func $~lib/math/NativeMathf.atan2 (; 82 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 f32) - (local $7 f32) - local.get $1 - call $~lib/number/isNaN - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/number/isNaN - end - if - local.get $1 - local.get $0 - f32.add - return - end - local.get $1 - i32.reinterpret_f32 - local.set $2 - local.get $0 - i32.reinterpret_f32 - local.set $3 - local.get $2 - i32.const 1065353216 - i32.eq - if - local.get $0 - call $~lib/math/NativeMathf.atan - return - end - local.get $3 - i32.const 31 - i32.shr_u - i32.const 1 - i32.and - local.get $2 - i32.const 30 - i32.shr_u - i32.const 2 - i32.and - i32.or - local.set $4 - local.get $2 - i32.const 2147483647 - i32.and - local.set $2 - local.get $3 - i32.const 2147483647 - i32.and - local.set $3 - local.get $3 - i32.const 0 - i32.eq - if - block $break|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $4 - local.set $5 - local.get $5 - i32.const 0 - i32.eq - br_if $case0|0 - local.get $5 - i32.const 1 - i32.eq - br_if $case1|0 - local.get $5 - i32.const 2 - i32.eq - br_if $case2|0 - local.get $5 - i32.const 3 - i32.eq - br_if $case3|0 - br $break|0 - end - end - local.get $0 - return - end - f32.const 3.1415927410125732 - return - end - f32.const 3.1415927410125732 - f32.neg - return - end - end - local.get $2 - i32.const 0 - i32.eq - if - local.get $4 - i32.const 1 - i32.and - if (result f32) - f32.const 3.1415927410125732 - f32.neg - f32.const 2 - f32.div - else - f32.const 3.1415927410125732 - f32.const 2 - f32.div - end - return - end - local.get $2 - i32.const 2139095040 - i32.eq - if - local.get $3 - i32.const 2139095040 - i32.eq - if - local.get $4 - i32.const 2 - i32.and - if (result f32) - f32.const 3 - f32.const 3.1415927410125732 - f32.mul - f32.const 4 - f32.div - else - f32.const 3.1415927410125732 - f32.const 4 - f32.div - end - local.set $6 - local.get $4 - i32.const 1 - i32.and - if (result f32) - local.get $6 - f32.neg - else - local.get $6 - end - return - else - local.get $4 - i32.const 2 - i32.and - if (result f32) - f32.const 3.1415927410125732 - else - f32.const 0 - end - local.set $6 - local.get $4 - i32.const 1 - i32.and - if (result f32) - local.get $6 - f32.neg - else - local.get $6 - end - return - end - unreachable - end - local.get $2 - i32.const 218103808 - i32.add - local.get $3 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $3 - i32.const 2139095040 - i32.eq - end - if - local.get $4 - i32.const 1 - i32.and - if (result f32) - f32.const 3.1415927410125732 - f32.neg - f32.const 2 - f32.div - else - f32.const 3.1415927410125732 - f32.const 2 - f32.div - end - return - end - local.get $4 - i32.const 2 - i32.and - if (result i32) - local.get $3 - i32.const 218103808 - i32.add - local.get $2 - i32.lt_u - else - i32.const 0 - end - if - f32.const 0 - local.set $7 - else - local.get $0 - local.get $1 - f32.div - f32.abs - call $~lib/math/NativeMathf.atan - local.set $7 - end - block $break|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $4 - local.set $5 - local.get $5 - i32.const 0 - i32.eq - br_if $case0|1 - local.get $5 - i32.const 1 - i32.eq - br_if $case1|1 - local.get $5 - i32.const 2 - i32.eq - br_if $case2|1 - local.get $5 - i32.const 3 - i32.eq - br_if $case3|1 - br $break|1 - end - local.get $7 - return - end - local.get $7 - f32.neg - return - end - f32.const 3.1415927410125732 - local.get $7 - f32.const -8.742277657347586e-08 - f32.sub - f32.sub - return - end - local.get $7 - f32.const -8.742277657347586e-08 - f32.sub - f32.const 3.1415927410125732 - f32.sub - return - end - unreachable - ) - (func $../../lib/libm/assembly/libmf/atan2 (; 83 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - local.get $0 - local.get $1 - call $~lib/math/NativeMathf.atan2 - ) - (func $~lib/math/NativeMathf.cbrt (; 84 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f64) - (local $4 f64) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - local.get $0 - f32.add - return - end - local.get $2 - i32.const 8388608 - i32.lt_u - if - local.get $2 - i32.const 0 - i32.eq - if - local.get $0 - return - end - local.get $0 - f32.const 16777216 - f32.mul - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 3 - i32.div_u - i32.const 642849266 - i32.add - local.set $2 - else - local.get $2 - i32.const 3 - i32.div_u - i32.const 709958130 - i32.add - local.set $2 - end - local.get $1 - i32.const -2147483648 - i32.and - local.set $1 - local.get $1 - local.get $2 - i32.or - local.set $1 - local.get $1 - f32.reinterpret_i32 - f64.promote_f32 - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.get $3 - f64.mul - local.set $4 - local.get $3 - local.get $0 - f64.promote_f32 - local.get $0 - f64.promote_f32 - f64.add - local.get $4 - f64.add - f64.mul - local.get $0 - f64.promote_f32 - local.get $4 - f64.add - local.get $4 - f64.add - f64.div - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.get $3 - f64.mul - local.set $4 - local.get $3 - local.get $0 - f64.promote_f32 - local.get $0 - f64.promote_f32 - f64.add - local.get $4 - f64.add - f64.mul - local.get $0 - f64.promote_f32 - local.get $4 - f64.add - local.get $4 - f64.add - f64.div - local.set $3 - local.get $3 - f32.demote_f64 - ) - (func $../../lib/libm/assembly/libmf/cbrt (; 85 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.cbrt - ) - (func $../../lib/libm/assembly/libmf/ceil (; 86 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 f32) - local.get $0 - local.set $1 - local.get $1 - f32.ceil - ) - (func $~lib/number/isFinite (; 87 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) - local.get $0 - local.get $0 - f32.sub - f32.const 0 - f32.eq - ) - (func $~lib/math/NativeMathf.clz32 (; 88 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/number/isFinite - i32.eqz - if - f32.const 32 - return - end - local.get $0 - f64.promote_f32 - call $~lib/math/dtoi32 - i32.clz - f32.convert_i32_s - ) - (func $../../lib/libm/assembly/libmf/clz32 (; 89 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.clz32 - ) - (func $~lib/math/NativeMathf.cos (; 90 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f64) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 i32) - (local $9 i32) - (local $10 f32) - (local $11 i32) - (local $12 f32) - (local $13 i32) - (local $14 i32) - (local $15 i64) - (local $16 i32) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i32) - (local $25 i32) - (local $26 f64) - (local $27 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 31 - i32.shr_u - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1061752794 - i32.le_u - if - local.get $1 - i32.const 964689920 - i32.lt_u - if - f32.const 1 - return - end - local.get $0 - f64.promote_f32 - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const -0.001388676377460993 - local.get $4 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $6 - f32.const 1 - f64.promote_f32 - local.get $4 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $5 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $5 - local.get $4 - f64.mul - local.get $6 - f64.mul - f64.add - f32.demote_f64 - return - end - local.get $1 - i32.const 1081824209 - i32.le_u - if - local.get $1 - i32.const 1075235811 - i32.gt_u - if - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 3.141592653589793 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 3.141592653589793 - f64.sub - end - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $5 - f64.const -0.001388676377460993 - local.get $6 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $4 - f32.const 1 - f64.promote_f32 - local.get $6 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $5 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $5 - local.get $6 - f64.mul - local.get $4 - f64.mul - f64.add - f32.demote_f64 - f32.neg - return - else - local.get $2 - if (result f32) - local.get $0 - f64.promote_f32 - f64.const 1.5707963267948966 - f64.add - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const -1.9839334836096632e-04 - local.get $4 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $6 - local.get $4 - local.get $3 - f64.mul - local.set $7 - local.get $3 - local.get $7 - f64.const -0.16666666641626524 - local.get $4 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $7 - local.get $5 - f64.mul - local.get $6 - f64.mul - f64.add - f32.demote_f64 - else - f64.const 1.5707963267948966 - local.get $0 - f64.promote_f32 - f64.sub - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - f64.const -1.9839334836096632e-04 - local.get $7 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $5 - local.get $7 - local.get $3 - f64.mul - local.set $4 - local.get $3 - local.get $4 - f64.const -0.16666666641626524 - local.get $7 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $4 - local.get $6 - f64.mul - local.get $5 - f64.mul - f64.add - f32.demote_f64 - end - return - end - unreachable - end - local.get $1 - i32.const 1088565717 - i32.le_u - if - local.get $1 - i32.const 1085271519 - i32.gt_u - if - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 6.283185307179586 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 6.283185307179586 - f64.sub - end - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const -0.001388676377460993 - local.get $4 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $6 - f32.const 1 - f64.promote_f32 - local.get $4 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $5 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $5 - local.get $4 - f64.mul - local.get $6 - f64.mul - f64.add - f32.demote_f64 - return - else - local.get $2 - if (result f32) - local.get $0 - f32.neg - f64.promote_f32 - f64.const 4.71238898038469 - f64.sub - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $5 - f64.const -1.9839334836096632e-04 - local.get $6 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $4 - local.get $6 - local.get $7 - f64.mul - local.set $3 - local.get $7 - local.get $3 - f64.const -0.16666666641626524 - local.get $6 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $3 - local.get $5 - f64.mul - local.get $4 - f64.mul - f64.add - f32.demote_f64 - else - local.get $0 - f64.promote_f32 - f64.const 4.71238898038469 - f64.sub - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - f64.const -1.9839334836096632e-04 - local.get $3 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $5 - local.get $3 - local.get $7 - f64.mul - local.set $6 - local.get $7 - local.get $6 - f64.const -0.16666666641626524 - local.get $3 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $6 - local.get $4 - f64.mul - local.get $5 - f64.mul - f64.add - f32.demote_f64 - end - return - end - unreachable - end - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - local.get $0 - f32.sub - return - end - block $~lib/math/rempio2f|inlined.0 (result i32) - local.get $0 - local.set $10 - local.get $1 - local.set $9 - local.get $2 - local.set $8 - local.get $9 - i32.const 1305022427 - i32.lt_u - if - local.get $10 - f64.promote_f32 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $6 - local.get $10 - f64.promote_f32 - local.get $6 - f64.const 1.5707963109016418 - f64.mul - f64.sub - local.get $6 - f64.const 1.5893254773528196e-08 - f64.mul - f64.sub - global.set $~lib/math/rempio2f_y - local.get $6 - i32.trunc_f64_s - br $~lib/math/rempio2f|inlined.0 - end - local.get $10 - local.set $12 - local.get $9 - local.set $11 - i32.const 312 - i32.load offset=4 - local.set $13 - local.get $11 - i32.const 23 - i32.shr_s - i32.const 152 - i32.sub - local.set $14 - local.get $14 - i32.const 63 - i32.and - i64.extend_i32_s - local.set $15 - local.get $13 - local.get $14 - i32.const 6 - i32.shr_s - i32.const 3 - i32.shl - i32.add - local.set $16 - local.get $16 - i64.load - local.set $17 - local.get $16 - i64.load offset=8 - local.set $18 - local.get $15 - i64.const 32 - i64.gt_u - if - local.get $16 - i64.load offset=16 - local.set $20 - local.get $20 - i64.const 96 - local.get $15 - i64.sub - i64.shr_u - local.set $19 - local.get $19 - local.get $18 - local.get $15 - i64.const 32 - i64.sub - i64.shl - i64.or - local.set $19 - else - local.get $18 - i64.const 32 - local.get $15 - i64.sub - i64.shr_u - local.set $19 - end - local.get $18 - i64.const 64 - local.get $15 - i64.sub - i64.shr_u - local.get $17 - local.get $15 - i64.shl - i64.or - local.set $20 - local.get $11 - i32.const 8388607 - i32.and - i32.const 8388608 - i32.or - i64.extend_i32_s - local.set $21 - local.get $21 - local.get $20 - i64.mul - local.get $21 - local.get $19 - i64.mul - i64.const 32 - i64.shr_u - i64.add - local.set $22 - local.get $22 - i64.const 2 - i64.shl - local.set $23 - local.get $22 - i64.const 62 - i64.shr_u - local.get $23 - i64.const 63 - i64.shr_u - i64.add - i32.wrap_i64 - local.set $24 - f64.const 8.515303950216386e-20 - local.get $12 - f64.promote_f32 - f64.copysign - local.get $23 - f64.convert_i64_s - f64.mul - global.set $~lib/math/rempio2f_y - local.get $24 - local.set $24 - i32.const 0 - local.get $24 - i32.sub - local.get $24 - local.get $8 - select - end - local.set $25 - global.get $~lib/math/rempio2f_y - local.set $26 - local.get $25 - i32.const 1 - i32.and - if (result f32) - local.get $26 - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $5 - f64.const -1.9839334836096632e-04 - local.get $6 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $4 - local.get $6 - local.get $7 - f64.mul - local.set $3 - local.get $7 - local.get $3 - f64.const -0.16666666641626524 - local.get $6 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $3 - local.get $5 - f64.mul - local.get $4 - f64.mul - f64.add - f32.demote_f64 - else - local.get $26 - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - f64.const -0.001388676377460993 - local.get $3 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $5 - f32.const 1 - f64.promote_f32 - local.get $3 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $4 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $4 - local.get $3 - f64.mul - local.get $5 - f64.mul - f64.add - f32.demote_f64 - end - local.set $27 - local.get $25 - i32.const 1 - i32.add - i32.const 2 - i32.and - if (result f32) - local.get $27 - f32.neg - else - local.get $27 - end - ) - (func $../../lib/libm/assembly/libmf/cos (; 91 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.cos - ) - (func $~lib/math/NativeMathf.expm1 (; 92 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 f32) - (local $5 f32) - (local $6 i32) - (local $7 f32) - (local $8 f32) - (local $9 f32) - (local $10 f32) - (local $11 f32) - (local $12 f32) - (local $13 f32) - (local $14 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $1 - i32.const 31 - i32.shr_u - local.set $3 - local.get $2 - i32.const 1100331076 - i32.ge_u - if - local.get $2 - i32.const 2139095040 - i32.gt_u - if - local.get $0 - return - end - local.get $3 - if - f32.const -1 - return - end - local.get $0 - f32.const 88.7216796875 - f32.gt - if - local.get $0 - f32.const 1701411834604692317316873e14 - f32.mul - local.set $0 - local.get $0 - return - end - end - f32.const 0 - local.set $4 - local.get $2 - i32.const 1051816472 - i32.gt_u - if - i32.const 1 - local.get $3 - i32.const 1 - i32.shl - i32.sub - f32.const 1.4426950216293335 - local.get $0 - f32.mul - f32.const 0.5 - local.get $0 - f32.copysign - f32.add - i32.trunc_f32_s - local.get $2 - i32.const 1065686418 - i32.lt_u - select - local.set $6 - local.get $6 - f32.convert_i32_s - local.set $5 - local.get $0 - local.get $5 - f32.const 0.6931381225585938 - f32.mul - f32.sub - local.set $7 - local.get $5 - f32.const 9.05800061445916e-06 - f32.mul - local.set $8 - local.get $7 - local.get $8 - f32.sub - local.set $0 - local.get $7 - local.get $0 - f32.sub - local.get $8 - f32.sub - local.set $4 - else - local.get $2 - i32.const 855638016 - i32.lt_u - if - local.get $0 - return - else - i32.const 0 - local.set $6 - end - end - f32.const 0.5 - local.get $0 - f32.mul - local.set $9 - local.get $0 - local.get $9 - f32.mul - local.set $10 - f32.const 1 - local.get $10 - f32.const -0.03333321213722229 - local.get $10 - f32.const 1.5807170420885086e-03 - f32.mul - f32.add - f32.mul - f32.add - local.set $11 - f32.const 3 - local.get $11 - local.get $9 - f32.mul - f32.sub - local.set $5 - local.get $10 - local.get $11 - local.get $5 - f32.sub - f32.const 6 - local.get $0 - local.get $5 - f32.mul - f32.sub - f32.div - f32.mul - local.set $12 - local.get $6 - i32.const 0 - i32.eq - if - local.get $0 - local.get $0 - local.get $12 - f32.mul - local.get $10 - f32.sub - f32.sub - return - end - local.get $0 - local.get $12 - local.get $4 - f32.sub - f32.mul - local.get $4 - f32.sub - local.set $12 - local.get $12 - local.get $10 - f32.sub - local.set $12 - local.get $6 - i32.const -1 - i32.eq - if - f32.const 0.5 - local.get $0 - local.get $12 - f32.sub - f32.mul - f32.const 0.5 - f32.sub - return - end - local.get $6 - i32.const 1 - i32.eq - if - local.get $0 - f32.const -0.25 - f32.lt - if - f32.const -2 - local.get $12 - local.get $0 - f32.const 0.5 - f32.add - f32.sub - f32.mul - return - end - f32.const 1 - f32.const 2 - local.get $0 - local.get $12 - f32.sub - f32.mul - f32.add - return - end - i32.const 127 - local.get $6 - i32.add - i32.const 23 - i32.shl - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $13 - local.get $6 - i32.const 0 - i32.lt_s - if (result i32) - i32.const 1 - else - local.get $6 - i32.const 56 - i32.gt_s - end - if - local.get $0 - local.get $12 - f32.sub - f32.const 1 - f32.add - local.set $14 - local.get $6 - i32.const 128 - i32.eq - if - local.get $14 - f32.const 2 - f32.mul - f32.const 1701411834604692317316873e14 - f32.mul - local.set $14 - else - local.get $14 - local.get $13 - f32.mul - local.set $14 - end - local.get $14 - f32.const 1 - f32.sub - return - end - i32.const 127 - local.get $6 - i32.sub - i32.const 23 - i32.shl - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $14 - local.get $6 - i32.const 20 - i32.lt_s - if - f32.const 1 - local.get $14 - f32.sub - local.get $12 - f32.sub - local.set $14 - else - f32.const 1 - local.get $12 - local.get $14 - f32.add - f32.sub - local.set $14 - end - local.get $0 - local.get $14 - f32.add - local.get $13 - f32.mul - ) - (func $~lib/math/NativeMathf.scalbn (; 93 ;) (type $FUNCSIG$ffi) (param $0 f32) (param $1 i32) (result f32) - (local $2 f32) - (local $3 i32) - (local $4 i32) - local.get $0 - local.set $2 - local.get $1 - i32.const 127 - i32.gt_s - if - local.get $2 - f32.const 1701411834604692317316873e14 - f32.mul - local.set $2 - local.get $1 - i32.const 127 - i32.sub - local.set $1 - local.get $1 - i32.const 127 - i32.gt_s - if - local.get $2 - f32.const 1701411834604692317316873e14 - f32.mul - local.set $2 - local.get $1 - i32.const 127 - i32.sub - local.tee $3 - i32.const 127 - local.tee $4 - local.get $3 - local.get $4 - i32.lt_s - select - local.set $1 - end - else - local.get $1 - i32.const -126 - i32.lt_s - if - local.get $2 - f32.const 1.1754943508222875e-38 - f32.const 16777216 - f32.mul - f32.mul - local.set $2 - local.get $1 - i32.const 126 - i32.const 24 - i32.sub - i32.add - local.set $1 - local.get $1 - i32.const -126 - i32.lt_s - if - local.get $2 - f32.const 1.1754943508222875e-38 - f32.const 16777216 - f32.mul - f32.mul - local.set $2 - local.get $1 - i32.const 126 - i32.add - i32.const 24 - i32.sub - local.tee $3 - i32.const -126 - local.tee $4 - local.get $3 - local.get $4 - i32.gt_s - select - local.set $1 - end - end - end - local.get $2 - i32.const 127 - local.get $1 - i32.add - i32.const 23 - i32.shl - f32.reinterpret_i32 - f32.mul - ) - (func $~lib/math/NativeMathf.exp (; 94 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f32) - (local $4 f32) - (local $5 i32) - (local $6 f32) - (local $7 f32) - (local $8 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 31 - i32.shr_u - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1118743632 - i32.ge_u - if - local.get $1 - i32.const 1118925336 - i32.ge_u - if - local.get $2 - i32.eqz - if - local.get $0 - f32.const 1701411834604692317316873e14 - f32.mul - return - else - local.get $1 - i32.const 1120924085 - i32.ge_u - if - f32.const 0 - return - end - end - end - end - local.get $1 - i32.const 1051816472 - i32.gt_u - if - local.get $1 - i32.const 1065686418 - i32.gt_u - if - f32.const 1.4426950216293335 - local.get $0 - f32.mul - f32.const 0.5 - local.get $0 - f32.copysign - f32.add - i32.trunc_f32_s - local.set $5 - else - i32.const 1 - local.get $2 - i32.const 1 - i32.shl - i32.sub - local.set $5 - end - local.get $0 - local.get $5 - f32.convert_i32_s - f32.const 0.693145751953125 - f32.mul - f32.sub - local.set $3 - local.get $5 - f32.convert_i32_s - f32.const 1.428606765330187e-06 - f32.mul - local.set $4 - local.get $3 - local.get $4 - f32.sub - local.set $0 - else - local.get $1 - i32.const 956301312 - i32.gt_u - if - i32.const 0 - local.set $5 - local.get $0 - local.set $3 - f32.const 0 - local.set $4 - else - f32.const 1 - local.get $0 - f32.add - return - end - end - local.get $0 - local.get $0 - f32.mul - local.set $6 - local.get $0 - local.get $6 - f32.const 0.16666625440120697 - local.get $6 - f32.const -2.7667332906275988e-03 - f32.mul - f32.add - f32.mul - f32.sub - local.set $7 - f32.const 1 - local.get $0 - local.get $7 - f32.mul - f32.const 2 - local.get $7 - f32.sub - f32.div - local.get $4 - f32.sub - local.get $3 - f32.add - f32.add - local.set $8 - local.get $5 - i32.const 0 - i32.eq - if - local.get $8 - return - end - local.get $8 - local.get $5 - call $~lib/math/NativeMathf.scalbn - ) - (func $~lib/math/NativeMathf.cosh (; 95 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - (local $3 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $0 - local.get $1 - i32.const 1060205079 - i32.lt_u - if - local.get $1 - i32.const 964689920 - i32.lt_u - if - f32.const 1 - return - end - local.get $0 - call $~lib/math/NativeMathf.expm1 - local.set $2 - f32.const 1 - local.get $2 - local.get $2 - f32.mul - f32.const 2 - f32.const 2 - local.get $2 - f32.mul - f32.add - f32.div - f32.add - return - end - local.get $1 - i32.const 1118925335 - i32.lt_u - if - local.get $0 - call $~lib/math/NativeMathf.exp - local.set $2 - f32.const 0.5 - local.get $2 - f32.mul - f32.const 0.5 - local.get $2 - f32.div - f32.add - return - end - local.get $0 - local.set $2 - i32.const 127 - i32.const 235 - i32.const 1 - i32.shr_u - i32.add - i32.const 23 - i32.shl - f32.reinterpret_i32 - local.set $3 - local.get $2 - f32.const 162.88958740234375 - f32.sub - call $~lib/math/NativeMathf.exp - local.get $3 - f32.mul - local.get $3 - f32.mul - ) - (func $../../lib/libm/assembly/libmf/cosh (; 96 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.cosh - ) - (func $../../lib/libm/assembly/libmf/exp (; 97 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.exp - ) - (func $../../lib/libm/assembly/libmf/expm1 (; 98 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.expm1 - ) - (func $../../lib/libm/assembly/libmf/floor (; 99 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 f32) - local.get $0 - local.set $1 - local.get $1 - f32.floor - ) - (func $../../lib/libm/assembly/libmf/fround (; 100 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 f32) - local.get $0 - local.set $1 - local.get $1 - ) - (func $~lib/math/NativeMathf.hypot (; 101 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f32) - local.get $0 - i32.reinterpret_f32 - local.set $2 - local.get $1 - i32.reinterpret_f32 - local.set $3 - local.get $2 - i32.const 2147483647 - i32.and - local.set $2 - local.get $3 - i32.const 2147483647 - i32.and - local.set $3 - local.get $2 - local.get $3 - i32.lt_u - if - local.get $2 - local.set $4 - local.get $3 - local.set $2 - local.get $4 - local.set $3 - end - local.get $2 - f32.reinterpret_i32 - local.set $0 - local.get $3 - f32.reinterpret_i32 - local.set $1 - local.get $3 - i32.const 2139095040 - i32.eq - if - local.get $1 - return - end - local.get $2 - i32.const 2139095040 - i32.ge_u - if (result i32) - i32.const 1 - else - local.get $3 - i32.const 0 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $2 - local.get $3 - i32.sub - i32.const 209715200 - i32.ge_u - end - if - local.get $0 - local.get $1 - f32.add - return - end - f32.const 1 - local.set $5 - local.get $2 - i32.const 1568669696 - i32.ge_u - if - f32.const 1237940039285380274899124e3 - local.set $5 - local.get $0 - f32.const 8.077935669463161e-28 - f32.mul - local.set $0 - local.get $1 - f32.const 8.077935669463161e-28 - f32.mul - local.set $1 - else - local.get $3 - i32.const 562036736 - i32.lt_u - if - f32.const 8.077935669463161e-28 - local.set $5 - local.get $0 - f32.const 1237940039285380274899124e3 - f32.mul - local.set $0 - local.get $1 - f32.const 1237940039285380274899124e3 - f32.mul - local.set $1 - end - end - local.get $5 - local.get $0 - f64.promote_f32 - local.get $0 - f64.promote_f32 - f64.mul - local.get $1 - f64.promote_f32 - local.get $1 - f64.promote_f32 - f64.mul - f64.add - f32.demote_f64 - f32.sqrt - f32.mul - ) - (func $../../lib/libm/assembly/libmf/hypot (; 102 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - local.get $0 - local.get $1 - call $~lib/math/NativeMathf.hypot - ) - (func $../../lib/libm/assembly/libmf/imul (; 103 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - (local $2 f32) - (local $3 f32) - block $~lib/math/NativeMathf.imul|inlined.0 (result f32) - local.get $0 - local.set $3 - local.get $1 - local.set $2 - local.get $3 - local.get $2 - f32.add - call $~lib/number/isFinite - i32.eqz - if - f32.const 0 - br $~lib/math/NativeMathf.imul|inlined.0 - end - local.get $3 - f64.promote_f32 - call $~lib/math/dtoi32 - local.get $2 - f64.promote_f32 - call $~lib/math/dtoi32 - i32.mul - f32.convert_i32_s - end - ) - (func $../../lib/libm/assembly/libmf/log (; 104 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.log - ) - (func $~lib/math/NativeMathf.log10 (; 105 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f32) - (local $4 f32) - (local $5 f32) - (local $6 f32) - (local $7 f32) - (local $8 f32) - (local $9 f32) - (local $10 f32) - (local $11 f32) - (local $12 f32) - (local $13 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - i32.const 0 - local.set $2 - local.get $1 - i32.const 8388608 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i32.const 1 - i32.shl - i32.const 0 - i32.eq - if - f32.const -1 - local.get $0 - local.get $0 - f32.mul - f32.div - return - end - local.get $1 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f32.sub - f32.const 0 - f32.div - return - end - local.get $2 - i32.const 25 - i32.sub - local.set $2 - local.get $0 - f32.const 33554432 - f32.mul - local.set $0 - local.get $0 - i32.reinterpret_f32 - local.set $1 - else - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - return - else - local.get $1 - i32.const 1065353216 - i32.eq - if - f32.const 0 - return - end - end - end - local.get $1 - i32.const 1065353216 - i32.const 1060439283 - i32.sub - i32.add - local.set $1 - local.get $2 - local.get $1 - i32.const 23 - i32.shr_u - i32.const 127 - i32.sub - i32.add - local.set $2 - local.get $1 - i32.const 8388607 - i32.and - i32.const 1060439283 - i32.add - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $0 - local.get $0 - f32.const 1 - f32.sub - local.set $3 - local.get $3 - f32.const 2 - local.get $3 - f32.add - f32.div - local.set $4 - local.get $4 - local.get $4 - f32.mul - local.set $5 - local.get $5 - local.get $5 - f32.mul - local.set $6 - local.get $6 - f32.const 0.40000972151756287 - local.get $6 - f32.const 0.24279078841209412 - f32.mul - f32.add - f32.mul - local.set $7 - local.get $5 - f32.const 0.6666666269302368 - local.get $6 - f32.const 0.2849878668785095 - f32.mul - f32.add - f32.mul - local.set $8 - local.get $8 - local.get $7 - f32.add - local.set $9 - f32.const 0.5 - local.get $3 - f32.mul - local.get $3 - f32.mul - local.set $10 - local.get $3 - local.get $10 - f32.sub - local.set $11 - local.get $11 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const -4096 - i32.and - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $11 - local.get $3 - local.get $11 - f32.sub - local.get $10 - f32.sub - local.get $4 - local.get $10 - local.get $9 - f32.add - f32.mul - f32.add - local.set $12 - local.get $2 - f32.convert_i32_s - local.set $13 - local.get $13 - f32.const 7.903415166765626e-07 - f32.mul - local.get $12 - local.get $11 - f32.add - f32.const -3.168997136526741e-05 - f32.mul - f32.add - local.get $12 - f32.const 0.434326171875 - f32.mul - f32.add - local.get $11 - f32.const 0.434326171875 - f32.mul - f32.add - local.get $13 - f32.const 0.3010292053222656 - f32.mul - f32.add - ) - (func $../../lib/libm/assembly/libmf/log10 (; 106 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.log10 - ) - (func $../../lib/libm/assembly/libmf/log1p (; 107 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.log1p - ) - (func $~lib/math/NativeMathf.log2 (; 108 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f32) - (local $4 f32) - (local $5 f32) - (local $6 f32) - (local $7 f32) - (local $8 f32) - (local $9 f32) - (local $10 f32) - (local $11 f32) - (local $12 i32) - (local $13 f32) - (local $14 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - i32.const 0 - local.set $2 - local.get $1 - i32.const 8388608 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i32.const 1 - i32.shl - i32.const 0 - i32.eq - if - f32.const -1 - local.get $0 - local.get $0 - f32.mul - f32.div - return - end - local.get $1 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f32.sub - f32.const 0 - f32.div - return - end - local.get $2 - i32.const 25 - i32.sub - local.set $2 - local.get $0 - f32.const 33554432 - f32.mul - local.set $0 - local.get $0 - i32.reinterpret_f32 - local.set $1 - else - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - return - else - local.get $1 - i32.const 1065353216 - i32.eq - if - f32.const 0 - return - end - end - end - local.get $1 - i32.const 1065353216 - i32.const 1060439283 - i32.sub - i32.add - local.set $1 - local.get $2 - local.get $1 - i32.const 23 - i32.shr_u - i32.const 127 - i32.sub - i32.add - local.set $2 - local.get $1 - i32.const 8388607 - i32.and - i32.const 1060439283 - i32.add - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $0 - local.get $0 - f32.const 1 - f32.sub - local.set $3 - local.get $3 - f32.const 2 - local.get $3 - f32.add - f32.div - local.set $4 - local.get $4 - local.get $4 - f32.mul - local.set $5 - local.get $5 - local.get $5 - f32.mul - local.set $6 - local.get $6 - f32.const 0.40000972151756287 - local.get $6 - f32.const 0.24279078841209412 - f32.mul - f32.add - f32.mul - local.set $7 - local.get $5 - f32.const 0.6666666269302368 - local.get $6 - f32.const 0.2849878668785095 - f32.mul - f32.add - f32.mul - local.set $8 - local.get $8 - local.get $7 - f32.add - local.set $9 - f32.const 0.5 - local.get $3 - f32.mul - local.get $3 - f32.mul - local.set $10 - local.get $3 - local.get $10 - f32.sub - local.set $11 - local.get $11 - i32.reinterpret_f32 - local.set $12 - local.get $12 - i32.const -4096 - i32.and - local.set $12 - local.get $12 - f32.reinterpret_i32 - local.set $11 - local.get $3 - local.get $11 - f32.sub - local.get $10 - f32.sub - local.get $4 - local.get $10 - local.get $9 - f32.add - f32.mul - f32.add - local.set $13 - local.get $2 - f32.convert_i32_s - local.set $14 - local.get $13 - local.get $11 - f32.add - f32.const -1.7605285393074155e-04 - f32.mul - local.get $13 - f32.const 1.44287109375 - f32.mul - f32.add - local.get $11 - f32.const 1.44287109375 - f32.mul - f32.add - local.get $14 - f32.add - ) - (func $../../lib/libm/assembly/libmf/log2 (; 109 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.log2 - ) - (func $../../lib/libm/assembly/libmf/max (; 110 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - (local $2 f32) - (local $3 f32) - local.get $0 - local.set $3 - local.get $1 - local.set $2 - local.get $3 - local.get $2 - f32.max - ) - (func $../../lib/libm/assembly/libmf/min (; 111 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - (local $2 f32) - (local $3 f32) - local.get $0 - local.set $3 - local.get $1 - local.set $2 - local.get $3 - local.get $2 - f32.min - ) - (func $~lib/math/NativeMathf.pow (; 112 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 f32) - (local $11 f32) - (local $12 f32) - (local $13 f32) - (local $14 f32) - (local $15 f32) - (local $16 f32) - (local $17 f32) - (local $18 f32) - (local $19 f32) - (local $20 f32) - (local $21 f32) - (local $22 f32) - (local $23 f32) - (local $24 i32) - (local $25 i32) - (local $26 f32) - (local $27 f32) - (local $28 f32) - (local $29 f32) - (local $30 f32) - (local $31 f32) - (local $32 f32) - (local $33 f32) - (local $34 f32) - (local $35 f32) - (local $36 i32) - local.get $0 - i32.reinterpret_f32 - local.set $2 - local.get $1 - i32.reinterpret_f32 - local.set $3 - local.get $2 - i32.const 2147483647 - i32.and - local.set $4 - local.get $3 - i32.const 2147483647 - i32.and - local.set $5 - local.get $5 - i32.const 0 - i32.eq - if - f32.const 1 - return - end - local.get $4 - i32.const 2139095040 - i32.gt_s - if (result i32) - i32.const 1 - else - local.get $5 - i32.const 2139095040 - i32.gt_s - end - if - local.get $0 - local.get $1 - f32.add - return - end - i32.const 0 - local.set $6 - local.get $2 - i32.const 0 - i32.lt_s - if - local.get $5 - i32.const 1266679808 - i32.ge_s - if - i32.const 2 - local.set $6 - else - local.get $5 - i32.const 1065353216 - i32.ge_s - if - local.get $5 - i32.const 23 - i32.shr_s - i32.const 127 - i32.sub - local.set $8 - i32.const 23 - local.get $8 - i32.sub - local.set $9 - local.get $5 - local.get $9 - i32.shr_s - local.set $7 - local.get $7 - local.get $9 - i32.shl - local.get $5 - i32.eq - if - i32.const 2 - local.get $7 - i32.const 1 - i32.and - i32.sub - local.set $6 - end - end - end - end - local.get $5 - i32.const 2139095040 - i32.eq - if - local.get $4 - i32.const 1065353216 - i32.eq - if - f32.const nan:0x400000 - return - else - local.get $4 - i32.const 1065353216 - i32.gt_s - if - local.get $3 - i32.const 0 - i32.ge_s - if (result f32) - local.get $1 - else - f32.const 0 - end - return - else - local.get $3 - i32.const 0 - i32.ge_s - if (result f32) - f32.const 0 - else - local.get $1 - f32.neg - end - return - end - unreachable - end - unreachable - end - local.get $5 - i32.const 1065353216 - i32.eq - if - local.get $3 - i32.const 0 - i32.ge_s - if (result f32) - local.get $0 - else - f32.const 1 - local.get $0 - f32.div - end - return - end - local.get $3 - i32.const 1073741824 - i32.eq - if - local.get $0 - local.get $0 - f32.mul - return - end - local.get $3 - i32.const 1056964608 - i32.eq - if - local.get $2 - i32.const 0 - i32.ge_s - if - local.get $0 - f32.sqrt - return - end - end - local.get $0 - f32.abs - local.set $10 - local.get $4 - i32.const 2139095040 - i32.eq - if (result i32) - i32.const 1 - else - local.get $4 - i32.const 0 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $4 - i32.const 1065353216 - i32.eq - end - if - local.get $10 - local.set $11 - local.get $3 - i32.const 0 - i32.lt_s - if - f32.const 1 - local.get $11 - f32.div - local.set $11 - end - local.get $2 - i32.const 0 - i32.lt_s - if - local.get $4 - i32.const 1065353216 - i32.sub - local.get $6 - i32.or - i32.const 0 - i32.eq - if - local.get $11 - local.get $11 - f32.sub - local.set $12 - local.get $12 - local.get $12 - f32.div - local.set $11 - else - local.get $6 - i32.const 1 - i32.eq - if - local.get $11 - f32.neg - local.set $11 - end - end - end - local.get $11 - return - end - f32.const 1 - local.set $13 - local.get $2 - i32.const 0 - i32.lt_s - if - local.get $6 - i32.const 0 - i32.eq - if - local.get $0 - local.get $0 - f32.sub - local.set $12 - local.get $12 - local.get $12 - f32.div - return - end - local.get $6 - i32.const 1 - i32.eq - if - f32.const -1 - local.set $13 - end - end - local.get $5 - i32.const 1291845632 - i32.gt_s - if - local.get $4 - i32.const 1065353208 - i32.lt_s - if - local.get $3 - i32.const 0 - i32.lt_s - if (result f32) - local.get $13 - f32.const 1000000015047466219876688e6 - f32.mul - f32.const 1000000015047466219876688e6 - f32.mul - else - local.get $13 - f32.const 1.0000000031710769e-30 - f32.mul - f32.const 1.0000000031710769e-30 - f32.mul - end - return - end - local.get $4 - i32.const 1065353223 - i32.gt_s - if - local.get $3 - i32.const 0 - i32.gt_s - if (result f32) - local.get $13 - f32.const 1000000015047466219876688e6 - f32.mul - f32.const 1000000015047466219876688e6 - f32.mul - else - local.get $13 - f32.const 1.0000000031710769e-30 - f32.mul - f32.const 1.0000000031710769e-30 - f32.mul - end - return - end - local.get $10 - f32.const 1 - f32.sub - local.set $18 - local.get $18 - local.get $18 - f32.mul - f32.const 0.5 - local.get $18 - f32.const 0.3333333432674408 - local.get $18 - f32.const 0.25 - f32.mul - f32.sub - f32.mul - f32.sub - f32.mul - local.set $21 - f32.const 1.44268798828125 - local.get $18 - f32.mul - local.set $19 - local.get $18 - f32.const 7.052607543300837e-06 - f32.mul - local.get $21 - f32.const 1.4426950216293335 - f32.mul - f32.sub - local.set $20 - local.get $19 - local.get $20 - f32.add - local.set $14 - local.get $14 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $14 - local.get $20 - local.get $14 - local.get $19 - f32.sub - f32.sub - local.set $15 - else - i32.const 0 - local.set $24 - local.get $4 - i32.const 8388608 - i32.lt_s - if - local.get $10 - f32.const 16777216 - f32.mul - local.set $10 - local.get $24 - i32.const 24 - i32.sub - local.set $24 - local.get $10 - i32.reinterpret_f32 - local.set $4 - end - local.get $24 - local.get $4 - i32.const 23 - i32.shr_s - i32.const 127 - i32.sub - i32.add - local.set $24 - local.get $4 - i32.const 8388607 - i32.and - local.set $7 - local.get $7 - i32.const 1065353216 - i32.or - local.set $4 - local.get $7 - i32.const 1885297 - i32.le_s - if - i32.const 0 - local.set $8 - else - local.get $7 - i32.const 6140887 - i32.lt_s - if - i32.const 1 - local.set $8 - else - i32.const 0 - local.set $8 - local.get $24 - i32.const 1 - i32.add - local.set $24 - local.get $4 - i32.const 8388608 - i32.sub - local.set $4 - end - end - local.get $4 - f32.reinterpret_i32 - local.set $10 - f32.const 1.5 - f32.const 1 - local.get $8 - select - local.set $30 - local.get $10 - local.get $30 - f32.sub - local.set $19 - f32.const 1 - local.get $10 - local.get $30 - f32.add - f32.div - local.set $20 - local.get $19 - local.get $20 - f32.mul - local.set $17 - local.get $17 - local.set $26 - local.get $26 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $26 - local.get $4 - i32.const 1 - i32.shr_s - i32.const -4096 - i32.and - i32.const 536870912 - i32.or - local.set $25 - local.get $25 - i32.const 4194304 - i32.add - local.get $8 - i32.const 21 - i32.shl - i32.add - f32.reinterpret_i32 - local.set $28 - local.get $10 - local.get $28 - local.get $30 - f32.sub - f32.sub - local.set $29 - local.get $20 - local.get $19 - local.get $26 - local.get $28 - f32.mul - f32.sub - local.get $26 - local.get $29 - f32.mul - f32.sub - f32.mul - local.set $27 - local.get $17 - local.get $17 - f32.mul - local.set $12 - local.get $12 - local.get $12 - f32.mul - f32.const 0.6000000238418579 - local.get $12 - f32.const 0.4285714328289032 - local.get $12 - f32.const 0.3333333432674408 - local.get $12 - f32.const 0.2727281153202057 - local.get $12 - f32.const 0.23066075146198273 - local.get $12 - f32.const 0.20697501301765442 - f32.mul - f32.add - f32.mul - f32.add - f32.mul - f32.add - f32.mul - f32.add - f32.mul - f32.add - f32.mul - local.set $16 - local.get $16 - local.get $27 - local.get $26 - local.get $17 - f32.add - f32.mul - f32.add - local.set $16 - local.get $26 - local.get $26 - f32.mul - local.set $12 - f32.const 3 - local.get $12 - f32.add - local.get $16 - f32.add - local.set $28 - local.get $28 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $28 - local.get $16 - local.get $28 - f32.const 3 - f32.sub - local.get $12 - f32.sub - f32.sub - local.set $29 - local.get $26 - local.get $28 - f32.mul - local.set $19 - local.get $27 - local.get $28 - f32.mul - local.get $29 - local.get $17 - f32.mul - f32.add - local.set $20 - local.get $19 - local.get $20 - f32.add - local.set $22 - local.get $22 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $22 - local.get $20 - local.get $22 - local.get $19 - f32.sub - f32.sub - local.set $23 - f32.const 0.9619140625 - local.get $22 - f32.mul - local.set $31 - f32.const 1.5632208487659227e-06 - f32.const 0 - local.get $8 - select - local.set $32 - f32.const -1.1736857413779944e-04 - local.get $22 - f32.mul - local.get $23 - f32.const 0.9617967009544373 - f32.mul - f32.add - local.get $32 - f32.add - local.set $33 - local.get $24 - f32.convert_i32_s - local.set $18 - f32.const 0.5849609375 - f32.const 0 - local.get $8 - select - local.set $34 - local.get $31 - local.get $33 - f32.add - local.get $34 - f32.add - local.get $18 - f32.add - local.set $14 - local.get $14 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $14 - local.get $33 - local.get $14 - local.get $18 - f32.sub - local.get $34 - f32.sub - local.get $31 - f32.sub - f32.sub - local.set $15 - end - local.get $1 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $35 - local.get $1 - local.get $35 - f32.sub - local.get $14 - f32.mul - local.get $1 - local.get $15 - f32.mul - f32.add - local.set $23 - local.get $35 - local.get $14 - f32.mul - local.set $22 - local.get $23 - local.get $22 - f32.add - local.set $11 - local.get $11 - i32.reinterpret_f32 - local.set $7 - local.get $7 - i32.const 1124073472 - i32.gt_s - if - local.get $13 - f32.const 1000000015047466219876688e6 - f32.mul - f32.const 1000000015047466219876688e6 - f32.mul - return - else - local.get $7 - i32.const 1124073472 - i32.eq - if - local.get $23 - f32.const 4.299566569443414e-08 - f32.add - local.get $11 - local.get $22 - f32.sub - f32.gt - if - local.get $13 - f32.const 1000000015047466219876688e6 - f32.mul - f32.const 1000000015047466219876688e6 - f32.mul - return - end - else - local.get $7 - i32.const 2147483647 - i32.and - i32.const 1125515264 - i32.gt_s - if - local.get $13 - f32.const 1.0000000031710769e-30 - f32.mul - f32.const 1.0000000031710769e-30 - f32.mul - return - else - local.get $7 - i32.const -1021968384 - i32.eq - if - local.get $23 - local.get $11 - local.get $22 - f32.sub - f32.le - if - local.get $13 - f32.const 1.0000000031710769e-30 - f32.mul - f32.const 1.0000000031710769e-30 - f32.mul - return - end - end - end - end - end - local.get $7 - i32.const 2147483647 - i32.and - local.set $36 - local.get $36 - i32.const 23 - i32.shr_s - i32.const 127 - i32.sub - local.set $8 - i32.const 0 - local.set $24 - local.get $36 - i32.const 1056964608 - i32.gt_s - if - local.get $7 - i32.const 8388608 - local.get $8 - i32.const 1 - i32.add - i32.shr_s - i32.add - local.set $24 - local.get $24 - i32.const 2147483647 - i32.and - i32.const 23 - i32.shr_s - i32.const 127 - i32.sub - local.set $8 - local.get $24 - i32.const 8388607 - local.get $8 - i32.shr_s - i32.const -1 - i32.xor - i32.and - f32.reinterpret_i32 - local.set $18 - local.get $24 - i32.const 8388607 - i32.and - i32.const 8388608 - i32.or - i32.const 23 - local.get $8 - i32.sub - i32.shr_s - local.set $24 - local.get $7 - i32.const 0 - i32.lt_s - if - i32.const 0 - local.get $24 - i32.sub - local.set $24 - end - local.get $22 - local.get $18 - f32.sub - local.set $22 - end - local.get $23 - local.get $22 - f32.add - local.set $18 - local.get $18 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -32768 - i32.and - f32.reinterpret_i32 - local.set $18 - local.get $18 - f32.const 0.693145751953125 - f32.mul - local.set $19 - local.get $23 - local.get $18 - local.get $22 - f32.sub - f32.sub - f32.const 0.6931471824645996 - f32.mul - local.get $18 - f32.const 1.4286065379565116e-06 - f32.mul - f32.add - local.set $20 - local.get $19 - local.get $20 - f32.add - local.set $11 - local.get $20 - local.get $11 - local.get $19 - f32.sub - f32.sub - local.set $21 - local.get $11 - local.get $11 - f32.mul - local.set $18 - local.get $11 - local.get $18 - f32.const 0.1666666716337204 - local.get $18 - f32.const -2.7777778450399637e-03 - local.get $18 - f32.const 6.61375597701408e-05 - local.get $18 - f32.const -1.6533901998627698e-06 - local.get $18 - f32.const 4.138136944220605e-08 - f32.mul - f32.add - f32.mul - f32.add - f32.mul - f32.add - f32.mul - f32.add - f32.mul - f32.sub - local.set $14 - local.get $11 - local.get $14 - f32.mul - local.get $14 - f32.const 2 - f32.sub - f32.div - local.get $21 - local.get $11 - local.get $21 - f32.mul - f32.add - f32.sub - local.set $16 - f32.const 1 - local.get $16 - local.get $11 - f32.sub - f32.sub - local.set $11 - local.get $11 - i32.reinterpret_f32 - local.set $7 - local.get $7 - local.get $24 - i32.const 23 - i32.shl - i32.add - local.set $7 - local.get $7 - i32.const 23 - i32.shr_s - i32.const 0 - i32.le_s - if - local.get $11 - local.get $24 - call $~lib/math/NativeMathf.scalbn - local.set $11 - else - local.get $7 - f32.reinterpret_i32 - local.set $11 - end - local.get $13 - local.get $11 - f32.mul - ) - (func $../../lib/libm/assembly/libmf/pow (; 113 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - local.get $0 - local.get $1 - call $~lib/math/NativeMathf.pow - ) - (func $../../lib/libm/assembly/libmf/round (; 114 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 f32) - local.get $0 - local.set $1 - local.get $1 - f32.const 0.5 - f32.add - f32.floor - local.get $1 - f32.copysign - ) - (func $../../lib/libm/assembly/libmf/sign (; 115 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 f32) - block $~lib/math/NativeMathf.sign|inlined.0 (result f32) - local.get $0 - local.set $1 - local.get $1 - f32.const 0 - f32.gt - if (result f32) - f32.const 1 - else - local.get $1 - f32.const 0 - f32.lt - if (result f32) - f32.const -1 - else - local.get $1 - end - end - br $~lib/math/NativeMathf.sign|inlined.0 - end - ) - (func $~lib/math/NativeMathf.sin (; 116 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f64) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 i32) - (local $9 i32) - (local $10 f32) - (local $11 i32) - (local $12 f32) - (local $13 i32) - (local $14 i32) - (local $15 i64) - (local $16 i32) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i32) - (local $25 i32) - (local $26 f64) - (local $27 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 31 - i32.shr_u - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1061752794 - i32.le_u - if - local.get $1 - i32.const 964689920 - i32.lt_u - if - local.get $0 - return - end - local.get $0 - f64.promote_f32 - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const -1.9839334836096632e-04 - local.get $4 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $6 - local.get $4 - local.get $3 - f64.mul - local.set $7 - local.get $3 - local.get $7 - f64.const -0.16666666641626524 - local.get $4 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $7 - local.get $5 - f64.mul - local.get $6 - f64.mul - f64.add - f32.demote_f64 - return - end - local.get $1 - i32.const 1081824209 - i32.le_u - if - local.get $1 - i32.const 1075235811 - i32.le_u - if - local.get $2 - if (result f32) - local.get $0 - f64.promote_f32 - f64.const 1.5707963267948966 - f64.add - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - f64.const -0.001388676377460993 - local.get $7 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $5 - f32.const 1 - f64.promote_f32 - local.get $7 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $6 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $6 - local.get $7 - f64.mul - local.get $5 - f64.mul - f64.add - f32.demote_f64 - f32.neg - else - local.get $0 - f64.promote_f32 - f64.const 1.5707963267948966 - f64.sub - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - local.get $5 - local.get $5 - f64.mul - local.set $6 - f64.const -0.001388676377460993 - local.get $5 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $7 - f32.const 1 - f64.promote_f32 - local.get $5 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $6 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $6 - local.get $5 - f64.mul - local.get $7 - f64.mul - f64.add - f32.demote_f64 - end - return - end - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 3.141592653589793 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 3.141592653589793 - f64.sub - end - f64.neg - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - f64.const -1.9839334836096632e-04 - local.get $7 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $5 - local.get $7 - local.get $3 - f64.mul - local.set $4 - local.get $3 - local.get $4 - f64.const -0.16666666641626524 - local.get $7 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $4 - local.get $6 - f64.mul - local.get $5 - f64.mul - f64.add - f32.demote_f64 - return - end - local.get $1 - i32.const 1088565717 - i32.le_u - if - local.get $1 - i32.const 1085271519 - i32.le_u - if - local.get $2 - if (result f32) - local.get $0 - f64.promote_f32 - f64.const 4.71238898038469 - f64.add - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const -0.001388676377460993 - local.get $4 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $6 - f32.const 1 - f64.promote_f32 - local.get $4 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $5 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $5 - local.get $4 - f64.mul - local.get $6 - f64.mul - f64.add - f32.demote_f64 - else - local.get $0 - f64.promote_f32 - f64.const 4.71238898038469 - f64.sub - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $5 - f64.const -0.001388676377460993 - local.get $6 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $4 - f32.const 1 - f64.promote_f32 - local.get $6 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $5 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $5 - local.get $6 - f64.mul - local.get $4 - f64.mul - f64.add - f32.demote_f64 - f32.neg - end - return - end - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 6.283185307179586 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 6.283185307179586 - f64.sub - end - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const -1.9839334836096632e-04 - local.get $4 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $6 - local.get $4 - local.get $3 - f64.mul - local.set $7 - local.get $3 - local.get $7 - f64.const -0.16666666641626524 - local.get $4 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $7 - local.get $5 - f64.mul - local.get $6 - f64.mul - f64.add - f32.demote_f64 - return - end - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - local.get $0 - f32.sub - return - end - block $~lib/math/rempio2f|inlined.1 (result i32) - local.get $0 - local.set $10 - local.get $1 - local.set $9 - local.get $2 - local.set $8 - local.get $9 - i32.const 1305022427 - i32.lt_u - if - local.get $10 - f64.promote_f32 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $7 - local.get $10 - f64.promote_f32 - local.get $7 - f64.const 1.5707963109016418 - f64.mul - f64.sub - local.get $7 - f64.const 1.5893254773528196e-08 - f64.mul - f64.sub - global.set $~lib/math/rempio2f_y - local.get $7 - i32.trunc_f64_s - br $~lib/math/rempio2f|inlined.1 - end - local.get $10 - local.set $12 - local.get $9 - local.set $11 - i32.const 312 - i32.load offset=4 - local.set $13 - local.get $11 - i32.const 23 - i32.shr_s - i32.const 152 - i32.sub - local.set $14 - local.get $14 - i32.const 63 - i32.and - i64.extend_i32_s - local.set $15 - local.get $13 - local.get $14 - i32.const 6 - i32.shr_s - i32.const 3 - i32.shl - i32.add - local.set $16 - local.get $16 - i64.load - local.set $17 - local.get $16 - i64.load offset=8 - local.set $18 - local.get $15 - i64.const 32 - i64.gt_u - if - local.get $16 - i64.load offset=16 - local.set $20 - local.get $20 - i64.const 96 - local.get $15 - i64.sub - i64.shr_u - local.set $19 - local.get $19 - local.get $18 - local.get $15 - i64.const 32 - i64.sub - i64.shl - i64.or - local.set $19 - else - local.get $18 - i64.const 32 - local.get $15 - i64.sub - i64.shr_u - local.set $19 - end - local.get $18 - i64.const 64 - local.get $15 - i64.sub - i64.shr_u - local.get $17 - local.get $15 - i64.shl - i64.or - local.set $20 - local.get $11 - i32.const 8388607 - i32.and - i32.const 8388608 - i32.or - i64.extend_i32_s - local.set $21 - local.get $21 - local.get $20 - i64.mul - local.get $21 - local.get $19 - i64.mul - i64.const 32 - i64.shr_u - i64.add - local.set $22 - local.get $22 - i64.const 2 - i64.shl - local.set $23 - local.get $22 - i64.const 62 - i64.shr_u - local.get $23 - i64.const 63 - i64.shr_u - i64.add - i32.wrap_i64 - local.set $24 - f64.const 8.515303950216386e-20 - local.get $12 - f64.promote_f32 - f64.copysign - local.get $23 - f64.convert_i64_s - f64.mul - global.set $~lib/math/rempio2f_y - local.get $24 - local.set $24 - i32.const 0 - local.get $24 - i32.sub - local.get $24 - local.get $8 - select - end - local.set $25 - global.get $~lib/math/rempio2f_y - local.set $26 - local.get $25 - i32.const 1 - i32.and - if (result f32) - local.get $26 - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - f64.const -0.001388676377460993 - local.get $7 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $5 - f32.const 1 - f64.promote_f32 - local.get $7 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $6 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $6 - local.get $7 - f64.mul - local.get $5 - f64.mul - f64.add - f32.demote_f64 - else - local.get $26 - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - local.get $5 - local.get $5 - f64.mul - local.set $6 - f64.const -1.9839334836096632e-04 - local.get $5 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $7 - local.get $5 - local.get $4 - f64.mul - local.set $3 - local.get $4 - local.get $3 - f64.const -0.16666666641626524 - local.get $5 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $3 - local.get $6 - f64.mul - local.get $7 - f64.mul - f64.add - f32.demote_f64 - end - local.set $27 - local.get $25 - i32.const 2 - i32.and - if (result f32) - local.get $27 - f32.neg - else - local.get $27 - end - ) - (func $../../lib/libm/assembly/libmf/sin (; 117 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.sin - ) - (func $~lib/math/NativeMathf.sinh (; 118 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - (local $3 f32) - (local $4 f32) - (local $5 f32) - (local $6 f32) - local.get $0 - i32.reinterpret_f32 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $2 - f32.const 0.5 - local.get $0 - f32.copysign - local.set $4 - local.get $1 - i32.const 1118925335 - i32.lt_u - if - local.get $2 - call $~lib/math/NativeMathf.expm1 - local.set $3 - local.get $1 - i32.const 1065353216 - i32.lt_u - if - local.get $1 - i32.const 964689920 - i32.lt_u - if - local.get $0 - return - end - local.get $4 - f32.const 2 - local.get $3 - f32.mul - local.get $3 - local.get $3 - f32.mul - local.get $3 - f32.const 1 - f32.add - f32.div - f32.sub - f32.mul - return - end - local.get $4 - local.get $3 - local.get $3 - local.get $3 - f32.const 1 - f32.add - f32.div - f32.add - f32.mul - return - end - f32.const 2 - local.get $4 - f32.mul - local.get $2 - local.set $5 - i32.const 127 - i32.const 235 - i32.const 1 - i32.shr_u - i32.add - i32.const 23 - i32.shl - f32.reinterpret_i32 - local.set $6 - local.get $5 - f32.const 162.88958740234375 - f32.sub - call $~lib/math/NativeMathf.exp - local.get $6 - f32.mul - local.get $6 - f32.mul - f32.mul - local.set $3 - local.get $3 - ) - (func $../../lib/libm/assembly/libmf/sinh (; 119 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.sinh - ) - (func $../../lib/libm/assembly/libmf/sqrt (; 120 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 f32) - local.get $0 - local.set $1 - local.get $1 - f32.sqrt - ) - (func $~lib/math/NativeMathf.tan (; 121 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 i32) - (local $12 f32) - (local $13 i32) - (local $14 f32) - (local $15 i32) - (local $16 i32) - (local $17 i64) - (local $18 i32) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i64) - (local $25 i64) - (local $26 i32) - (local $27 i32) - (local $28 f64) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 31 - i32.shr_u - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1061752794 - i32.le_u - if - local.get $1 - i32.const 964689920 - i32.lt_u - if - local.get $0 - return - end - local.get $0 - f64.promote_f32 - local.set $4 - i32.const 0 - local.set $3 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const 0.002974357433599673 - local.get $5 - f64.const 0.009465647849436732 - f64.mul - f64.add - local.set $6 - f64.const 0.05338123784456704 - local.get $5 - f64.const 0.024528318116654728 - f64.mul - f64.add - local.set $7 - local.get $5 - local.get $5 - f64.mul - local.set $8 - local.get $5 - local.get $4 - f64.mul - local.set $9 - f64.const 0.3333313950307914 - local.get $5 - f64.const 0.13339200271297674 - f64.mul - f64.add - local.set $10 - local.get $4 - local.get $9 - local.get $10 - f64.mul - f64.add - local.get $9 - local.get $8 - f64.mul - local.get $7 - local.get $8 - local.get $6 - f64.mul - f64.add - f64.mul - f64.add - local.set $6 - local.get $3 - if (result f64) - f32.const -1 - f64.promote_f32 - local.get $6 - f64.div - else - local.get $6 - end - f32.demote_f64 - return - end - local.get $1 - i32.const 1081824209 - i32.le_u - if - local.get $1 - i32.const 1075235811 - i32.le_u - if - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 1.5707963267948966 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 1.5707963267948966 - f64.sub - end - local.set $4 - i32.const 1 - local.set $3 - local.get $4 - local.get $4 - f64.mul - local.set $10 - f64.const 0.002974357433599673 - local.get $10 - f64.const 0.009465647849436732 - f64.mul - f64.add - local.set $9 - f64.const 0.05338123784456704 - local.get $10 - f64.const 0.024528318116654728 - f64.mul - f64.add - local.set $8 - local.get $10 - local.get $10 - f64.mul - local.set $7 - local.get $10 - local.get $4 - f64.mul - local.set $6 - f64.const 0.3333313950307914 - local.get $10 - f64.const 0.13339200271297674 - f64.mul - f64.add - local.set $5 - local.get $4 - local.get $6 - local.get $5 - f64.mul - f64.add - local.get $6 - local.get $7 - f64.mul - local.get $8 - local.get $7 - local.get $9 - f64.mul - f64.add - f64.mul - f64.add - local.set $9 - local.get $3 - if (result f64) - f32.const -1 - f64.promote_f32 - local.get $9 - f64.div - else - local.get $9 - end - f32.demote_f64 - return - else - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 3.141592653589793 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 3.141592653589793 - f64.sub - end - local.set $4 - i32.const 0 - local.set $3 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const 0.002974357433599673 - local.get $5 - f64.const 0.009465647849436732 - f64.mul - f64.add - local.set $6 - f64.const 0.05338123784456704 - local.get $5 - f64.const 0.024528318116654728 - f64.mul - f64.add - local.set $7 - local.get $5 - local.get $5 - f64.mul - local.set $8 - local.get $5 - local.get $4 - f64.mul - local.set $9 - f64.const 0.3333313950307914 - local.get $5 - f64.const 0.13339200271297674 - f64.mul - f64.add - local.set $10 - local.get $4 - local.get $9 - local.get $10 - f64.mul - f64.add - local.get $9 - local.get $8 - f64.mul - local.get $7 - local.get $8 - local.get $6 - f64.mul - f64.add - f64.mul - f64.add - local.set $6 - local.get $3 - if (result f64) - f32.const -1 - f64.promote_f32 - local.get $6 - f64.div - else - local.get $6 - end - f32.demote_f64 - return - end - unreachable - end - local.get $1 - i32.const 1088565717 - i32.le_u - if - local.get $1 - i32.const 1085271519 - i32.le_u - if - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 4.71238898038469 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 4.71238898038469 - f64.sub - end - local.set $4 - i32.const 1 - local.set $3 - local.get $4 - local.get $4 - f64.mul - local.set $10 - f64.const 0.002974357433599673 - local.get $10 - f64.const 0.009465647849436732 - f64.mul - f64.add - local.set $9 - f64.const 0.05338123784456704 - local.get $10 - f64.const 0.024528318116654728 - f64.mul - f64.add - local.set $8 - local.get $10 - local.get $10 - f64.mul - local.set $7 - local.get $10 - local.get $4 - f64.mul - local.set $6 - f64.const 0.3333313950307914 - local.get $10 - f64.const 0.13339200271297674 - f64.mul - f64.add - local.set $5 - local.get $4 - local.get $6 - local.get $5 - f64.mul - f64.add - local.get $6 - local.get $7 - f64.mul - local.get $8 - local.get $7 - local.get $9 - f64.mul - f64.add - f64.mul - f64.add - local.set $9 - local.get $3 - if (result f64) - f32.const -1 - f64.promote_f32 - local.get $9 - f64.div - else - local.get $9 - end - f32.demote_f64 - return - else - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 6.283185307179586 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 6.283185307179586 - f64.sub - end - local.set $4 - i32.const 0 - local.set $3 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const 0.002974357433599673 - local.get $5 - f64.const 0.009465647849436732 - f64.mul - f64.add - local.set $6 - f64.const 0.05338123784456704 - local.get $5 - f64.const 0.024528318116654728 - f64.mul - f64.add - local.set $7 - local.get $5 - local.get $5 - f64.mul - local.set $8 - local.get $5 - local.get $4 - f64.mul - local.set $9 - f64.const 0.3333313950307914 - local.get $5 - f64.const 0.13339200271297674 - f64.mul - f64.add - local.set $10 - local.get $4 - local.get $9 - local.get $10 - f64.mul - f64.add - local.get $9 - local.get $8 - f64.mul - local.get $7 - local.get $8 - local.get $6 - f64.mul - f64.add - f64.mul - f64.add - local.set $6 - local.get $3 - if (result f64) - f32.const -1 - f64.promote_f32 - local.get $6 - f64.div - else - local.get $6 - end - f32.demote_f64 - return - end - unreachable - end - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - local.get $0 - f32.sub - return - end - block $~lib/math/rempio2f|inlined.2 (result i32) - local.get $0 - local.set $12 - local.get $1 - local.set $11 - local.get $2 - local.set $3 - local.get $11 - i32.const 1305022427 - i32.lt_u - if - local.get $12 - f64.promote_f32 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $10 - local.get $12 - f64.promote_f32 - local.get $10 - f64.const 1.5707963109016418 - f64.mul - f64.sub - local.get $10 - f64.const 1.5893254773528196e-08 - f64.mul - f64.sub - global.set $~lib/math/rempio2f_y - local.get $10 - i32.trunc_f64_s - br $~lib/math/rempio2f|inlined.2 - end - local.get $12 - local.set $14 - local.get $11 - local.set $13 - i32.const 312 - i32.load offset=4 - local.set $15 - local.get $13 - i32.const 23 - i32.shr_s - i32.const 152 - i32.sub - local.set $16 - local.get $16 - i32.const 63 - i32.and - i64.extend_i32_s - local.set $17 - local.get $15 - local.get $16 - i32.const 6 - i32.shr_s - i32.const 3 - i32.shl - i32.add - local.set $18 - local.get $18 - i64.load - local.set $19 - local.get $18 - i64.load offset=8 - local.set $20 - local.get $17 - i64.const 32 - i64.gt_u - if - local.get $18 - i64.load offset=16 - local.set $22 - local.get $22 - i64.const 96 - local.get $17 - i64.sub - i64.shr_u - local.set $21 - local.get $21 - local.get $20 - local.get $17 - i64.const 32 - i64.sub - i64.shl - i64.or - local.set $21 - else - local.get $20 - i64.const 32 - local.get $17 - i64.sub - i64.shr_u - local.set $21 - end - local.get $20 - i64.const 64 - local.get $17 - i64.sub - i64.shr_u - local.get $19 - local.get $17 - i64.shl - i64.or - local.set $22 - local.get $13 - i32.const 8388607 - i32.and - i32.const 8388608 - i32.or - i64.extend_i32_s - local.set $23 - local.get $23 - local.get $22 - i64.mul - local.get $23 - local.get $21 - i64.mul - i64.const 32 - i64.shr_u - i64.add - local.set $24 - local.get $24 - i64.const 2 - i64.shl - local.set $25 - local.get $24 - i64.const 62 - i64.shr_u - local.get $25 - i64.const 63 - i64.shr_u - i64.add - i32.wrap_i64 - local.set $26 - f64.const 8.515303950216386e-20 - local.get $14 - f64.promote_f32 - f64.copysign - local.get $25 - f64.convert_i64_s - f64.mul - global.set $~lib/math/rempio2f_y - local.get $26 - local.set $26 - i32.const 0 - local.get $26 - i32.sub - local.get $26 - local.get $3 - select - end - local.set $27 - global.get $~lib/math/rempio2f_y - local.set $28 - local.get $28 - local.set $4 - local.get $27 - i32.const 1 - i32.and - local.set $13 - local.get $4 - local.get $4 - f64.mul - local.set $10 - f64.const 0.002974357433599673 - local.get $10 - f64.const 0.009465647849436732 - f64.mul - f64.add - local.set $9 - f64.const 0.05338123784456704 - local.get $10 - f64.const 0.024528318116654728 - f64.mul - f64.add - local.set $8 - local.get $10 - local.get $10 - f64.mul - local.set $7 - local.get $10 - local.get $4 - f64.mul - local.set $6 - f64.const 0.3333313950307914 - local.get $10 - f64.const 0.13339200271297674 - f64.mul - f64.add - local.set $5 - local.get $4 - local.get $6 - local.get $5 - f64.mul - f64.add - local.get $6 - local.get $7 - f64.mul - local.get $8 - local.get $7 - local.get $9 - f64.mul - f64.add - f64.mul - f64.add - local.set $9 - local.get $13 - if (result f64) - f32.const -1 - f64.promote_f32 - local.get $9 - f64.div - else - local.get $9 - end - f32.demote_f64 - ) - (func $../../lib/libm/assembly/libmf/tan (; 122 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.tan - ) - (func $~lib/math/NativeMathf.tanh (; 123 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - (local $3 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $2 - local.get $1 - i32.const 1057791828 - i32.gt_u - if - local.get $1 - i32.const 1092616192 - i32.gt_u - if - f32.const 1 - f32.const 0 - local.get $2 - f32.div - f32.add - local.set $3 - else - f32.const 2 - local.get $2 - f32.mul - call $~lib/math/NativeMathf.expm1 - local.set $3 - f32.const 1 - f32.const 2 - local.get $3 - f32.const 2 - f32.add - f32.div - f32.sub - local.set $3 - end - else - local.get $1 - i32.const 1048757624 - i32.gt_u - if - f32.const 2 - local.get $2 - f32.mul - call $~lib/math/NativeMathf.expm1 - local.set $3 - local.get $3 - local.get $3 - f32.const 2 - f32.add - f32.div - local.set $3 - else - local.get $1 - i32.const 8388608 - i32.ge_u - if - f32.const -2 - local.get $2 - f32.mul - call $~lib/math/NativeMathf.expm1 - local.set $3 - local.get $3 - f32.neg - local.get $3 - f32.const 2 - f32.add - f32.div - local.set $3 - else - local.get $2 - local.set $3 - end - end - end - local.get $3 - local.get $0 - f32.copysign - ) - (func $../../lib/libm/assembly/libmf/tanh (; 124 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - local.get $0 - call $~lib/math/NativeMathf.tanh - ) - (func $../../lib/libm/assembly/libmf/trunc (; 125 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 f32) - local.get $0 - local.set $1 - local.get $1 - f32.trunc - ) - (func $null (; 126 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 2eb7bf149a..eb178e89ed 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -1609,7 +1609,7 @@ if i32.const 176 i32.const 224 - i32.const 57 + i32.const 52 i32.const 42 call $~lib/builtins/abort unreachable @@ -8716,7 +8716,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/std/map.untouched.wat b/tests/compiler/std/map.untouched.wat index 7e07a48b71..61d1206d04 100644 --- a/tests/compiler/std/map.untouched.wat +++ b/tests/compiler/std/map.untouched.wat @@ -2042,7 +2042,7 @@ if i32.const 176 i32.const 224 - i32.const 57 + i32.const 52 i32.const 42 call $~lib/builtins/abort unreachable @@ -12658,7 +12658,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/math.untouched.wat b/tests/compiler/std/math.untouched.wat index c0cfb234a3..e69de29bb2 100644 --- a/tests/compiler/std/math.untouched.wat +++ b/tests/compiler/std/math.untouched.wat @@ -1,54516 +0,0 @@ -(module - (type $FUNCSIG$idddi (func (param f64 f64 f64 i32) (result i32))) - (type $FUNCSIG$id (func (param f64) (result i32))) - (type $FUNCSIG$dddd (func (param f64 f64 f64) (result f64))) - (type $FUNCSIG$ddi (func (param f64 i32) (result f64))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$ifffi (func (param f32 f32 f32 i32) (result i32))) - (type $FUNCSIG$if (func (param f32) (result i32))) - (type $FUNCSIG$ffff (func (param f32 f32 f32) (result f32))) - (type $FUNCSIG$ffi (func (param f32 i32) (result f32))) - (type $FUNCSIG$ididdi (func (param f64 i32 f64 f64 i32) (result i32))) - (type $FUNCSIG$ififfi (func (param f32 i32 f32 f32 i32) (result i32))) - (type $FUNCSIG$dd (func (param f64) (result f64))) - (type $FUNCSIG$ff (func (param f32) (result f32))) - (type $FUNCSIG$iddddi (func (param f64 f64 f64 f64 i32) (result i32))) - (type $FUNCSIG$ddd (func (param f64 f64) (result f64))) - (type $FUNCSIG$iffffi (func (param f32 f32 f32 f32 i32) (result i32))) - (type $FUNCSIG$fff (func (param f32 f32) (result f32))) - (type $FUNCSIG$idj (func (param f64 i64) (result i32))) - (type $FUNCSIG$d (func (result f64))) - (type $FUNCSIG$vj (func (param i64))) - (type $FUNCSIG$jj (func (param i64) (result i64))) - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$f (func (result f32))) - (type $FUNCSIG$dddi (func (param f64 f64 i32) (result f64))) - (type $FUNCSIG$ijjjjji (func (param i64 i64 i64 i64 i64 i32) (result i32))) - (type $FUNCSIG$vd (func (param f64))) - (type $FUNCSIG$jji (func (param i64 i32) (result i64))) - (type $FUNCSIG$v (func)) - (import "Math" "E" (global $~lib/bindings/Math/E f64)) - (import "Math" "LN2" (global $~lib/bindings/Math/LN2 f64)) - (import "Math" "LN10" (global $~lib/bindings/Math/LN10 f64)) - (import "Math" "LOG2E" (global $~lib/bindings/Math/LOG2E f64)) - (import "Math" "PI" (global $~lib/bindings/Math/PI f64)) - (import "Math" "SQRT1_2" (global $~lib/bindings/Math/SQRT1_2 f64)) - (import "Math" "SQRT2" (global $~lib/bindings/Math/SQRT2 f64)) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (import "Math" "abs" (func $~lib/bindings/Math/abs (param f64) (result f64))) - (import "Math" "acos" (func $~lib/bindings/Math/acos (param f64) (result f64))) - (import "Math" "acosh" (func $~lib/bindings/Math/acosh (param f64) (result f64))) - (import "Math" "asin" (func $~lib/bindings/Math/asin (param f64) (result f64))) - (import "Math" "asinh" (func $~lib/bindings/Math/asinh (param f64) (result f64))) - (import "Math" "atan" (func $~lib/bindings/Math/atan (param f64) (result f64))) - (import "Math" "atanh" (func $~lib/bindings/Math/atanh (param f64) (result f64))) - (import "Math" "atan2" (func $~lib/bindings/Math/atan2 (param f64 f64) (result f64))) - (import "Math" "cbrt" (func $~lib/bindings/Math/cbrt (param f64) (result f64))) - (import "Math" "ceil" (func $~lib/bindings/Math/ceil (param f64) (result f64))) - (import "Math" "cos" (func $~lib/bindings/Math/cos (param f64) (result f64))) - (import "Math" "cosh" (func $~lib/bindings/Math/cosh (param f64) (result f64))) - (import "Math" "exp" (func $~lib/bindings/Math/exp (param f64) (result f64))) - (import "Math" "expm1" (func $~lib/bindings/Math/expm1 (param f64) (result f64))) - (import "Math" "floor" (func $~lib/bindings/Math/floor (param f64) (result f64))) - (import "Math" "hypot" (func $~lib/bindings/Math/hypot (param f64 f64) (result f64))) - (import "Math" "log" (func $~lib/bindings/Math/log (param f64) (result f64))) - (import "Math" "log10" (func $~lib/bindings/Math/log10 (param f64) (result f64))) - (import "Math" "log1p" (func $~lib/bindings/Math/log1p (param f64) (result f64))) - (import "Math" "log2" (func $~lib/bindings/Math/log2 (param f64) (result f64))) - (import "Math" "max" (func $~lib/bindings/Math/max (param f64 f64) (result f64))) - (import "Math" "min" (func $~lib/bindings/Math/min (param f64 f64) (result f64))) - (import "math" "mod" (func $std/math/mod (param f64 f64) (result f64))) - (import "Math" "pow" (func $~lib/bindings/Math/pow (param f64 f64) (result f64))) - (import "Math" "random" (func $~lib/bindings/Math/random (result f64))) - (import "Math" "sign" (func $~lib/bindings/Math/sign (param f64) (result f64))) - (import "Math" "sin" (func $~lib/bindings/Math/sin (param f64) (result f64))) - (import "Math" "sinh" (func $~lib/bindings/Math/sinh (param f64) (result f64))) - (import "Math" "sqrt" (func $~lib/bindings/Math/sqrt (param f64) (result f64))) - (import "Math" "tan" (func $~lib/bindings/Math/tan (param f64) (result f64))) - (import "Math" "tanh" (func $~lib/bindings/Math/tanh (param f64) (result f64))) - (import "Math" "trunc" (func $~lib/bindings/Math/trunc (param f64) (result f64))) - (memory $0 1) - (data (i32.const 8) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\00s\00t\00d\00/\00m\00a\00t\00h\00.\00t\00s\00") - (data (i32.const 48) "\c0\00\00\00\01\00\00\00\00\00\00\00\c0\00\00\00n\83\f9\a2\00\00\00\00\d1W\'\fc)\15DN\99\95b\db\c0\dd4\f5\abcQ\feA\90C<:n$\b7a\c5\bb\de\ea.I\06\e0\d2MB\1c\eb\1d\fe\1c\92\d1\t\f55\82\e8>\a7)\b1&p\9c\e9\84D\bb.9\d6\919A~_\b4\8b_\84\9c\f49S\83\ff\97\f8\1f;(\f9\bd\8b\11/\ef\0f\98\05\de\cf~6m\1fm\nZf?FO\b7\t\cb\'\c7\ba\'u-\ea_\9e\f79\07={\f1\e5\eb\b1_\fbk\ea\92R\8aF0\03V\08]\8d\1f \bc\cf\f0\abk{\fca\91\e3\a9\1d6\f4\9a_\85\99e\08\1b\e6^\80\d8\ff\8d@h\a0\14W\15\06\061\'sM") - (data (i32.const 256) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00@\00\00\00@\00\00\00\c0\00\00\00\18\00\00\00") - (data (i32.const 288) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00)\15DNn\83\f9\a2\c0\dd4\f5\d1W\'\fcA\90C<\99\95b\dba\c5\bb\de\abcQ\fe") - (data (i32.const 336) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\000\01\00\000\01\00\00 \00\00\00\04\00\00\00") - (data (i32.const 368) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s\00") - (data (i32.const 408) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00P\00R\00N\00G\00 \00m\00u\00s\00t\00 \00b\00e\00 \00s\00e\00e\00d\00e\00d\00.\00") - (table $0 1 funcref) - (elem (i32.const 0) $null) - (global $std/math/js i32 (i32.const 1)) - (global $std/math/INEXACT i32 (i32.const 1)) - (global $std/math/INVALID i32 (i32.const 2)) - (global $std/math/DIVBYZERO i32 (i32.const 4)) - (global $std/math/UNDERFLOW i32 (i32.const 8)) - (global $std/math/OVERFLOW i32 (i32.const 16)) - (global $std/math/kPI f64 (f64.const 3.141592653589793)) - (global $std/math/kTwo120 f64 (f64.const 1329227995784915872903807e12)) - (global $~lib/math/NativeMath.E f64 (f64.const 2.718281828459045)) - (global $~lib/math/NativeMathf.E f32 (f32.const 2.7182817459106445)) - (global $~lib/math/NativeMath.LN2 f64 (f64.const 0.6931471805599453)) - (global $~lib/math/NativeMath.LN10 f64 (f64.const 2.302585092994046)) - (global $~lib/math/NativeMath.LOG2E f64 (f64.const 1.4426950408889634)) - (global $~lib/math/NativeMath.PI f64 (f64.const 3.141592653589793)) - (global $~lib/math/NativeMath.SQRT1_2 f64 (f64.const 0.7071067811865476)) - (global $~lib/math/NativeMath.SQRT2 f64 (f64.const 1.4142135623730951)) - (global $~lib/math/NativeMathf.LN2 f32 (f32.const 0.6931471824645996)) - (global $~lib/math/NativeMathf.LN10 f32 (f32.const 2.3025851249694824)) - (global $~lib/math/NativeMathf.LOG2E f32 (f32.const 1.4426950216293335)) - (global $~lib/math/NativeMathf.PI f32 (f32.const 3.1415927410125732)) - (global $~lib/math/NativeMathf.SQRT1_2 f32 (f32.const 0.7071067690849304)) - (global $~lib/math/NativeMathf.SQRT2 f32 (f32.const 1.4142135381698608)) - (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) - (global $~lib/math/rempio2_y0 (mut f64) (f64.const 0)) - (global $~lib/math/rempio2_y1 (mut f64) (f64.const 0)) - (global $~lib/math/PIO2_TABLE i32 (i32.const 272)) - (global $~lib/math/res128_hi (mut i64) (i64.const 0)) - (global $~lib/math/rempio2f_y (mut f64) (f64.const 0)) - (global $~lib/math/PIO2F_TABLE i32 (i32.const 352)) - (global $~lib/builtins/f32.MAX_VALUE f32 (f32.const 3402823466385288598117041e14)) - (global $~lib/builtins/f64.MIN_VALUE f64 (f64.const 5e-324)) - (global $~lib/math/random_seeded (mut i32) (i32.const 0)) - (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) - (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) - (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) - (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) - (global $~lib/math/NativeMath.sincos_sin (mut f64) (f64.const 0)) - (global $~lib/math/NativeMath.sincos_cos (mut f64) (f64.const 0)) - (global $~lib/builtins/f64.MAX_VALUE f64 (f64.const 1797693134862315708145274e284)) - (global $~lib/builtins/f64.MAX_SAFE_INTEGER f64 (f64.const 9007199254740991)) - (global $~lib/builtins/f64.EPSILON f64 (f64.const 2.220446049250313e-16)) - (global $~lib/builtins/f32.MIN_VALUE f32 (f32.const 1.401298464324817e-45)) - (export "memory" (memory $0)) - (start $start) - (func $~lib/number/isNaN (; 33 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.ne - ) - (func $~lib/number/isFinite (; 34 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.eq - ) - (func $std/math/eulp (; 35 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - (local $1 i64) - (local $2 i32) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - i32.wrap_i64 - local.set $2 - local.get $2 - i32.eqz - if - local.get $2 - i32.const 1 - i32.add - local.set $2 - end - local.get $2 - i32.const 1023 - i32.sub - i32.const 52 - i32.sub - ) - (func $~lib/math/NativeMath.scalbn (; 36 ;) (type $FUNCSIG$ddi) (param $0 f64) (param $1 i32) (result f64) - (local $2 f64) - (local $3 i32) - (local $4 i32) - local.get $0 - local.set $2 - local.get $1 - i32.const 1023 - i32.gt_s - if - local.get $2 - f64.const 8988465674311579538646525e283 - f64.mul - local.set $2 - local.get $1 - i32.const 1023 - i32.sub - local.set $1 - local.get $1 - i32.const 1023 - i32.gt_s - if - local.get $2 - f64.const 8988465674311579538646525e283 - f64.mul - local.set $2 - local.get $1 - i32.const 1023 - i32.sub - local.tee $3 - i32.const 1023 - local.tee $4 - local.get $3 - local.get $4 - i32.lt_s - select - local.set $1 - end - else - local.get $1 - i32.const -1022 - i32.lt_s - if - local.get $2 - f64.const 2.2250738585072014e-308 - f64.const 9007199254740992 - f64.mul - f64.mul - local.set $2 - local.get $1 - i32.const 1022 - i32.const 53 - i32.sub - i32.add - local.set $1 - local.get $1 - i32.const -1022 - i32.lt_s - if - local.get $2 - f64.const 2.2250738585072014e-308 - f64.const 9007199254740992 - f64.mul - f64.mul - local.set $2 - local.get $1 - i32.const 1022 - i32.add - i32.const 53 - i32.sub - local.tee $3 - i32.const -1022 - local.tee $4 - local.get $3 - local.get $4 - i32.gt_s - select - local.set $1 - end - end - end - local.get $2 - i64.const 1023 - local.get $1 - i64.extend_i32_s - i64.add - i64.const 52 - i64.shl - f64.reinterpret_i64 - f64.mul - ) - (func $std/math/ulperr (; 37 ;) (type $FUNCSIG$dddd) (param $0 f64) (param $1 f64) (param $2 f64) (result f64) - (local $3 f64) - local.get $0 - call $~lib/number/isNaN - if (result i32) - local.get $1 - call $~lib/number/isNaN - else - i32.const 0 - end - if - f64.const 0 - return - end - local.get $0 - local.get $1 - f64.eq - if - local.get $0 - local.set $3 - local.get $3 - i64.reinterpret_f64 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.get $3 - local.get $3 - f64.eq - i32.and - i32.const 0 - i32.ne - local.get $1 - local.set $3 - local.get $3 - i64.reinterpret_f64 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.get $3 - local.get $3 - f64.eq - i32.and - i32.const 0 - i32.ne - i32.eq - if - local.get $2 - return - end - f64.const inf - return - end - local.get $0 - call $~lib/number/isFinite - i32.eqz - if - f64.const 8988465674311579538646525e283 - local.get $0 - f64.copysign - local.set $0 - local.get $1 - f64.const 0.5 - f64.mul - local.set $1 - end - local.get $0 - local.get $1 - f64.sub - i32.const 0 - local.get $1 - call $std/math/eulp - i32.sub - call $~lib/math/NativeMath.scalbn - local.get $2 - f64.add - ) - (func $std/math/check (; 38 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - (local $4 f64) - local.get $0 - local.get $1 - f64.eq - if - i32.const 1 - return - end - local.get $1 - call $~lib/number/isNaN - if - local.get $0 - call $~lib/number/isNaN - return - end - local.get $0 - local.get $1 - local.get $2 - call $std/math/ulperr - local.set $4 - local.get $4 - f64.abs - f64.const 1.5 - f64.ge - if - i32.const 0 - return - end - i32.const 1 - ) - (func $~lib/number/isNaN (; 39 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) - local.get $0 - local.get $0 - f32.ne - ) - (func $~lib/number/isFinite (; 40 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) - local.get $0 - local.get $0 - f32.sub - f32.const 0 - f32.eq - ) - (func $std/math/eulpf (; 41 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 23 - i32.shr_u - i32.const 255 - i32.and - local.set $2 - local.get $2 - i32.eqz - if - local.get $2 - i32.const 1 - i32.add - local.set $2 - end - local.get $2 - i32.const 127 - i32.sub - i32.const 23 - i32.sub - ) - (func $~lib/math/NativeMathf.scalbn (; 42 ;) (type $FUNCSIG$ffi) (param $0 f32) (param $1 i32) (result f32) - (local $2 f32) - (local $3 i32) - (local $4 i32) - local.get $0 - local.set $2 - local.get $1 - i32.const 127 - i32.gt_s - if - local.get $2 - f32.const 1701411834604692317316873e14 - f32.mul - local.set $2 - local.get $1 - i32.const 127 - i32.sub - local.set $1 - local.get $1 - i32.const 127 - i32.gt_s - if - local.get $2 - f32.const 1701411834604692317316873e14 - f32.mul - local.set $2 - local.get $1 - i32.const 127 - i32.sub - local.tee $3 - i32.const 127 - local.tee $4 - local.get $3 - local.get $4 - i32.lt_s - select - local.set $1 - end - else - local.get $1 - i32.const -126 - i32.lt_s - if - local.get $2 - f32.const 1.1754943508222875e-38 - f32.const 16777216 - f32.mul - f32.mul - local.set $2 - local.get $1 - i32.const 126 - i32.const 24 - i32.sub - i32.add - local.set $1 - local.get $1 - i32.const -126 - i32.lt_s - if - local.get $2 - f32.const 1.1754943508222875e-38 - f32.const 16777216 - f32.mul - f32.mul - local.set $2 - local.get $1 - i32.const 126 - i32.add - i32.const 24 - i32.sub - local.tee $3 - i32.const -126 - local.tee $4 - local.get $3 - local.get $4 - i32.gt_s - select - local.set $1 - end - end - end - local.get $2 - i32.const 127 - local.get $1 - i32.add - i32.const 23 - i32.shl - f32.reinterpret_i32 - f32.mul - ) - (func $std/math/ulperrf (; 43 ;) (type $FUNCSIG$ffff) (param $0 f32) (param $1 f32) (param $2 f32) (result f32) - (local $3 f32) - local.get $0 - call $~lib/number/isNaN - if (result i32) - local.get $1 - call $~lib/number/isNaN - else - i32.const 0 - end - if - f32.const 0 - return - end - local.get $0 - local.get $1 - f32.eq - if - local.get $0 - local.set $3 - local.get $3 - i32.reinterpret_f32 - i32.const 31 - i32.shr_u - local.get $3 - local.get $3 - f32.eq - i32.and - i32.const 0 - i32.ne - local.get $1 - local.set $3 - local.get $3 - i32.reinterpret_f32 - i32.const 31 - i32.shr_u - local.get $3 - local.get $3 - f32.eq - i32.and - i32.const 0 - i32.ne - i32.eq - if - local.get $2 - return - end - f32.const inf - return - end - local.get $0 - call $~lib/number/isFinite - i32.eqz - if - f32.const 1701411834604692317316873e14 - local.get $0 - f32.copysign - local.set $0 - local.get $1 - f32.const 0.5 - f32.mul - local.set $1 - end - local.get $0 - local.get $1 - f32.sub - i32.const 0 - local.get $1 - call $std/math/eulpf - i32.sub - call $~lib/math/NativeMathf.scalbn - local.get $2 - f32.add - ) - (func $std/math/check (; 44 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - (local $4 f32) - local.get $0 - local.get $1 - f32.eq - if - i32.const 1 - return - end - local.get $1 - call $~lib/number/isNaN - if - local.get $0 - call $~lib/number/isNaN - return - end - local.get $0 - local.get $1 - local.get $2 - call $std/math/ulperrf - local.set $4 - local.get $4 - f32.abs - f32.const 1.5 - f32.ge - if - i32.const 0 - return - end - i32.const 1 - ) - (func $std/math/test_scalbn (; 45 ;) (type $FUNCSIG$ididdi) (param $0 f64) (param $1 i32) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) - local.get $0 - local.get $1 - call $~lib/math/NativeMath.scalbn - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - ) - (func $std/math/test_scalbnf (; 46 ;) (type $FUNCSIG$ififfi) (param $0 f32) (param $1 i32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) - local.get $0 - local.get $1 - call $~lib/math/NativeMathf.scalbn - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - ) - (func $std/math/test_abs (; 47 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - (local $4 f64) - local.get $0 - local.set $4 - local.get $4 - f64.abs - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/abs - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $std/math/test_absf (; 48 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - (local $4 f32) - local.get $0 - local.set $4 - local.get $4 - f32.abs - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/R (; 49 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 f64) - (local $2 f64) - local.get $0 - f64.const 0.16666666666666666 - local.get $0 - f64.const -0.3255658186224009 - local.get $0 - f64.const 0.20121253213486293 - local.get $0 - f64.const -0.04005553450067941 - local.get $0 - f64.const 7.915349942898145e-04 - local.get $0 - f64.const 3.479331075960212e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $1 - f64.const 1 - local.get $0 - f64.const -2.403394911734414 - local.get $0 - f64.const 2.0209457602335057 - local.get $0 - f64.const -0.6882839716054533 - local.get $0 - f64.const 0.07703815055590194 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $2 - local.get $1 - local.get $2 - f64.div - ) - (func $~lib/math/NativeMath.acos (; 50 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - local.get $0 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1072693248 - i32.ge_u - if - local.get $0 - i64.reinterpret_f64 - i32.wrap_i64 - local.set $3 - local.get $2 - i32.const 1072693248 - i32.sub - local.get $3 - i32.or - i32.const 0 - i32.eq - if - local.get $1 - i32.const 31 - i32.shr_u - if - f64.const 2 - f64.const 1.5707963267948966 - f64.mul - f32.const 7.52316384526264e-37 - f64.promote_f32 - f64.add - return - end - f64.const 0 - return - end - f64.const 0 - local.get $0 - local.get $0 - f64.sub - f64.div - return - end - local.get $2 - i32.const 1071644672 - i32.lt_u - if - local.get $2 - i32.const 1012924416 - i32.le_u - if - f64.const 1.5707963267948966 - f32.const 7.52316384526264e-37 - f64.promote_f32 - f64.add - return - end - f64.const 1.5707963267948966 - local.get $0 - f64.const 6.123233995736766e-17 - local.get $0 - local.get $0 - local.get $0 - f64.mul - call $~lib/math/R - f64.mul - f64.sub - f64.sub - f64.sub - return - end - local.get $1 - i32.const 31 - i32.shr_u - if - f64.const 0.5 - local.get $0 - f64.const 0.5 - f64.mul - f64.add - local.set $6 - local.get $6 - f64.sqrt - local.set $4 - local.get $6 - call $~lib/math/R - local.get $4 - f64.mul - f64.const 6.123233995736766e-17 - f64.sub - local.set $5 - f64.const 2 - f64.const 1.5707963267948966 - local.get $4 - local.get $5 - f64.add - f64.sub - f64.mul - return - end - f64.const 0.5 - local.get $0 - f64.const 0.5 - f64.mul - f64.sub - local.set $6 - local.get $6 - f64.sqrt - local.set $4 - local.get $4 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $7 - local.get $6 - local.get $7 - local.get $7 - f64.mul - f64.sub - local.get $4 - local.get $7 - f64.add - f64.div - local.set $8 - local.get $6 - call $~lib/math/R - local.get $4 - f64.mul - local.get $8 - f64.add - local.set $5 - f64.const 2 - local.get $7 - local.get $5 - f64.add - f64.mul - ) - (func $std/math/test_acos (; 51 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.acos - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/acos - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/Rf (; 52 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 f32) - (local $2 f32) - local.get $0 - f32.const 0.16666586697101593 - local.get $0 - f32.const -0.04274342209100723 - local.get $0 - f32.const -0.008656363002955914 - f32.mul - f32.add - f32.mul - f32.add - f32.mul - local.set $1 - f32.const 1 - local.get $0 - f32.const -0.7066296339035034 - f32.mul - f32.add - local.set $2 - local.get $1 - local.get $2 - f32.div - ) - (func $~lib/math/NativeMathf.acos (; 53 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f32) - (local $4 f32) - (local $5 f32) - (local $6 f32) - (local $7 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1065353216 - i32.ge_u - if - local.get $2 - i32.const 1065353216 - i32.eq - if - local.get $1 - i32.const 31 - i32.shr_u - if - f32.const 2 - f32.const 1.570796251296997 - f32.mul - f32.const 7.52316384526264e-37 - f32.add - return - end - f32.const 0 - return - end - f32.const 0 - local.get $0 - local.get $0 - f32.sub - f32.div - return - end - local.get $2 - i32.const 1056964608 - i32.lt_u - if - local.get $2 - i32.const 847249408 - i32.le_u - if - f32.const 1.570796251296997 - f32.const 7.52316384526264e-37 - f32.add - return - end - f32.const 1.570796251296997 - local.get $0 - f32.const 7.549789415861596e-08 - local.get $0 - local.get $0 - local.get $0 - f32.mul - call $~lib/math/Rf - f32.mul - f32.sub - f32.sub - f32.sub - return - end - local.get $1 - i32.const 31 - i32.shr_u - if - f32.const 0.5 - local.get $0 - f32.const 0.5 - f32.mul - f32.add - local.set $3 - local.get $3 - f32.sqrt - local.set $5 - local.get $3 - call $~lib/math/Rf - local.get $5 - f32.mul - f32.const 7.549789415861596e-08 - f32.sub - local.set $4 - f32.const 2 - f32.const 1.570796251296997 - local.get $5 - local.get $4 - f32.add - f32.sub - f32.mul - return - end - f32.const 0.5 - local.get $0 - f32.const 0.5 - f32.mul - f32.sub - local.set $3 - local.get $3 - f32.sqrt - local.set $5 - local.get $5 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $6 - local.get $3 - local.get $6 - local.get $6 - f32.mul - f32.sub - local.get $5 - local.get $6 - f32.add - f32.div - local.set $7 - local.get $3 - call $~lib/math/Rf - local.get $5 - f32.mul - local.get $7 - f32.add - local.set $4 - f32.const 2 - local.get $6 - local.get $4 - f32.add - f32.mul - ) - (func $std/math/test_acosf (; 54 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.acos - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.log1p (; 55 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 i32) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - (local $13 f64) - (local $14 f64) - (local $15 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - i32.const 1 - local.set $3 - f64.const 0 - local.set $4 - f64.const 0 - local.set $5 - local.get $2 - i32.const 1071284858 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $2 - i32.const 31 - i32.shr_u - end - if - local.get $2 - i32.const -1074790400 - i32.ge_u - if - local.get $0 - f64.const -1 - f64.eq - if - local.get $0 - f64.const 0 - f64.div - return - end - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.div - return - end - local.get $2 - i32.const 1 - i32.shl - i32.const 2034237440 - i32.lt_u - if - local.get $0 - return - end - local.get $2 - i32.const -1076707644 - i32.le_u - if - i32.const 0 - local.set $3 - f64.const 0 - local.set $4 - local.get $0 - local.set $5 - end - else - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - return - end - end - local.get $3 - if - f64.const 1 - local.get $0 - f64.add - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $6 - local.get $6 - i32.const 1072693248 - i32.const 1072079006 - i32.sub - i32.add - local.set $6 - local.get $6 - i32.const 20 - i32.shr_u - i32.const 1023 - i32.sub - local.set $3 - local.get $3 - i32.const 54 - i32.lt_s - if - local.get $1 - f64.reinterpret_i64 - local.set $7 - local.get $3 - i32.const 2 - i32.ge_s - if (result f64) - f64.const 1 - local.get $7 - local.get $0 - f64.sub - f64.sub - else - local.get $0 - local.get $7 - f64.const 1 - f64.sub - f64.sub - end - local.set $4 - local.get $4 - local.get $7 - f64.div - local.set $4 - else - f64.const 0 - local.set $4 - end - local.get $6 - i32.const 1048575 - i32.and - i32.const 1072079006 - i32.add - local.set $6 - local.get $6 - i64.extend_i32_u - i64.const 32 - i64.shl - local.get $1 - i64.const 4294967295 - i64.and - i64.or - local.set $1 - local.get $1 - f64.reinterpret_i64 - f64.const 1 - f64.sub - local.set $5 - end - f64.const 0.5 - local.get $5 - f64.mul - local.get $5 - f64.mul - local.set $8 - local.get $5 - f64.const 2 - local.get $5 - f64.add - f64.div - local.set $9 - local.get $9 - local.get $9 - f64.mul - local.set $10 - local.get $10 - local.get $10 - f64.mul - local.set $11 - local.get $11 - f64.const 0.3999999999940942 - local.get $11 - f64.const 0.22222198432149784 - local.get $11 - f64.const 0.15313837699209373 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $12 - local.get $10 - f64.const 0.6666666666666735 - local.get $11 - f64.const 0.2857142874366239 - local.get $11 - f64.const 0.1818357216161805 - local.get $11 - f64.const 0.14798198605116586 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $13 - local.get $13 - local.get $12 - f64.add - local.set $14 - local.get $3 - f64.convert_i32_s - local.set $15 - local.get $9 - local.get $8 - local.get $14 - f64.add - f64.mul - local.get $15 - f64.const 1.9082149292705877e-10 - f64.mul - local.get $4 - f64.add - f64.add - local.get $8 - f64.sub - local.get $5 - f64.add - local.get $15 - f64.const 0.6931471803691238 - f64.mul - f64.add - ) - (func $~lib/math/NativeMath.log (; 56 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - i32.const 0 - local.set $3 - local.get $2 - i32.const 1048576 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $2 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i64.const 1 - i64.shl - i64.const 0 - i64.eq - if - f64.const -1 - local.get $0 - local.get $0 - f64.mul - f64.div - return - end - local.get $2 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.div - return - end - local.get $3 - i32.const 54 - i32.sub - local.set $3 - local.get $0 - f64.const 18014398509481984 - f64.mul - local.set $0 - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - else - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - return - else - local.get $2 - i32.const 1072693248 - i32.eq - if (result i32) - local.get $1 - i64.const 32 - i64.shl - i64.const 0 - i64.eq - else - i32.const 0 - end - if - f64.const 0 - return - end - end - end - local.get $2 - i32.const 1072693248 - i32.const 1072079006 - i32.sub - i32.add - local.set $2 - local.get $3 - local.get $2 - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - i32.add - local.set $3 - local.get $2 - i32.const 1048575 - i32.and - i32.const 1072079006 - i32.add - local.set $2 - local.get $2 - i64.extend_i32_u - i64.const 32 - i64.shl - local.get $1 - i64.const 4294967295 - i64.and - i64.or - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $0 - local.get $0 - f64.const 1 - f64.sub - local.set $4 - f64.const 0.5 - local.get $4 - f64.mul - local.get $4 - f64.mul - local.set $5 - local.get $4 - f64.const 2 - local.get $4 - f64.add - f64.div - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $8 - local.get $8 - f64.const 0.3999999999940942 - local.get $8 - f64.const 0.22222198432149784 - local.get $8 - f64.const 0.15313837699209373 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $9 - local.get $7 - f64.const 0.6666666666666735 - local.get $8 - f64.const 0.2857142874366239 - local.get $8 - f64.const 0.1818357216161805 - local.get $8 - f64.const 0.14798198605116586 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $10 - local.get $10 - local.get $9 - f64.add - local.set $11 - local.get $3 - f64.convert_i32_s - local.set $12 - local.get $6 - local.get $5 - local.get $11 - f64.add - f64.mul - local.get $12 - f64.const 1.9082149292705877e-10 - f64.mul - f64.add - local.get $5 - f64.sub - local.get $4 - f64.add - local.get $12 - f64.const 0.6931471803691238 - f64.mul - f64.add - ) - (func $~lib/math/NativeMath.acosh (; 57 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - local.get $0 - i64.reinterpret_f64 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $1 - local.get $1 - i64.const 1024 - i64.lt_u - if - local.get $0 - f64.const 1 - f64.sub - local.get $0 - f64.const 1 - f64.sub - local.get $0 - f64.const 1 - f64.sub - f64.mul - f64.const 2 - local.get $0 - f64.const 1 - f64.sub - f64.mul - f64.add - f64.sqrt - f64.add - call $~lib/math/NativeMath.log1p - return - end - local.get $1 - i64.const 1049 - i64.lt_u - if - f64.const 2 - local.get $0 - f64.mul - f64.const 1 - local.get $0 - local.get $0 - local.get $0 - f64.mul - f64.const 1 - f64.sub - f64.sqrt - f64.add - f64.div - f64.sub - call $~lib/math/NativeMath.log - return - end - local.get $0 - call $~lib/math/NativeMath.log - f64.const 0.6931471805599453 - f64.add - ) - (func $std/math/test_acosh (; 58 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.acosh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/acosh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.log1p (; 59 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - (local $3 f32) - (local $4 i32) - (local $5 f32) - (local $6 i32) - (local $7 f32) - (local $8 f32) - (local $9 f32) - (local $10 f32) - (local $11 f32) - (local $12 f32) - (local $13 f32) - (local $14 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - f32.const 0 - local.set $2 - f32.const 0 - local.set $3 - i32.const 1 - local.set $4 - local.get $1 - i32.const 1054086096 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i32.const -1082130432 - i32.ge_u - if - local.get $0 - f32.const -1 - f32.eq - if - local.get $0 - f32.const 0 - f32.div - return - end - local.get $0 - local.get $0 - f32.sub - f32.const 0 - f32.div - return - end - local.get $1 - i32.const 1 - i32.shl - i32.const 1728053248 - i32.lt_u - if - local.get $0 - return - end - local.get $1 - i32.const -1097468391 - i32.le_u - if - i32.const 0 - local.set $4 - f32.const 0 - local.set $2 - local.get $0 - local.set $3 - end - else - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - return - end - end - local.get $4 - if - f32.const 1 - local.get $0 - f32.add - local.set $5 - local.get $5 - i32.reinterpret_f32 - local.set $6 - local.get $6 - i32.const 1065353216 - i32.const 1060439283 - i32.sub - i32.add - local.set $6 - local.get $6 - i32.const 23 - i32.shr_u - i32.const 127 - i32.sub - local.set $4 - local.get $4 - i32.const 25 - i32.lt_s - if - local.get $4 - i32.const 2 - i32.ge_s - if (result f32) - f32.const 1 - local.get $5 - local.get $0 - f32.sub - f32.sub - else - local.get $0 - local.get $5 - f32.const 1 - f32.sub - f32.sub - end - local.set $2 - local.get $2 - local.get $5 - f32.div - local.set $2 - else - f32.const 0 - local.set $2 - end - local.get $6 - i32.const 8388607 - i32.and - i32.const 1060439283 - i32.add - local.set $6 - local.get $6 - f32.reinterpret_i32 - f32.const 1 - f32.sub - local.set $3 - end - local.get $3 - f32.const 2 - local.get $3 - f32.add - f32.div - local.set $7 - local.get $7 - local.get $7 - f32.mul - local.set $8 - local.get $8 - local.get $8 - f32.mul - local.set $9 - local.get $9 - f32.const 0.40000972151756287 - local.get $9 - f32.const 0.24279078841209412 - f32.mul - f32.add - f32.mul - local.set $10 - local.get $8 - f32.const 0.6666666269302368 - local.get $9 - f32.const 0.2849878668785095 - f32.mul - f32.add - f32.mul - local.set $11 - local.get $11 - local.get $10 - f32.add - local.set $12 - f32.const 0.5 - local.get $3 - f32.mul - local.get $3 - f32.mul - local.set $13 - local.get $4 - f32.convert_i32_s - local.set $14 - local.get $7 - local.get $13 - local.get $12 - f32.add - f32.mul - local.get $14 - f32.const 9.05800061445916e-06 - f32.mul - local.get $2 - f32.add - f32.add - local.get $13 - f32.sub - local.get $3 - f32.add - local.get $14 - f32.const 0.6931381225585938 - f32.mul - f32.add - ) - (func $~lib/math/NativeMathf.log (; 60 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f32) - (local $4 f32) - (local $5 f32) - (local $6 f32) - (local $7 f32) - (local $8 f32) - (local $9 f32) - (local $10 f32) - (local $11 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - i32.const 0 - local.set $2 - local.get $1 - i32.const 8388608 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i32.const 1 - i32.shl - i32.const 0 - i32.eq - if - f32.const -1 - local.get $0 - local.get $0 - f32.mul - f32.div - return - end - local.get $1 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f32.sub - f32.const 0 - f32.div - return - end - local.get $2 - i32.const 25 - i32.sub - local.set $2 - local.get $0 - f32.const 33554432 - f32.mul - local.set $0 - local.get $0 - i32.reinterpret_f32 - local.set $1 - else - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - return - else - local.get $1 - i32.const 1065353216 - i32.eq - if - f32.const 0 - return - end - end - end - local.get $1 - i32.const 1065353216 - i32.const 1060439283 - i32.sub - i32.add - local.set $1 - local.get $2 - local.get $1 - i32.const 23 - i32.shr_s - i32.const 127 - i32.sub - i32.add - local.set $2 - local.get $1 - i32.const 8388607 - i32.and - i32.const 1060439283 - i32.add - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $0 - local.get $0 - f32.const 1 - f32.sub - local.set $3 - local.get $3 - f32.const 2 - local.get $3 - f32.add - f32.div - local.set $4 - local.get $4 - local.get $4 - f32.mul - local.set $5 - local.get $5 - local.get $5 - f32.mul - local.set $6 - local.get $6 - f32.const 0.40000972151756287 - local.get $6 - f32.const 0.24279078841209412 - f32.mul - f32.add - f32.mul - local.set $7 - local.get $5 - f32.const 0.6666666269302368 - local.get $6 - f32.const 0.2849878668785095 - f32.mul - f32.add - f32.mul - local.set $8 - local.get $8 - local.get $7 - f32.add - local.set $9 - f32.const 0.5 - local.get $3 - f32.mul - local.get $3 - f32.mul - local.set $10 - local.get $2 - f32.convert_i32_s - local.set $11 - local.get $4 - local.get $10 - local.get $9 - f32.add - f32.mul - local.get $11 - f32.const 9.05800061445916e-06 - f32.mul - f32.add - local.get $10 - f32.sub - local.get $3 - f32.add - local.get $11 - f32.const 0.6931381225585938 - f32.mul - f32.add - ) - (func $~lib/math/NativeMathf.acosh (; 61 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1073741824 - i32.lt_u - if - local.get $0 - f32.const 1 - f32.sub - local.set $3 - local.get $3 - local.get $3 - local.get $3 - f32.const 2 - f32.add - f32.mul - f32.sqrt - f32.add - call $~lib/math/NativeMathf.log1p - return - end - local.get $2 - i32.const 1166016512 - i32.lt_u - if - f32.const 2 - local.get $0 - f32.mul - f32.const 1 - local.get $0 - local.get $0 - local.get $0 - f32.mul - f32.const 1 - f32.sub - f32.sqrt - f32.add - f32.div - f32.sub - call $~lib/math/NativeMathf.log - return - end - local.get $0 - call $~lib/math/NativeMathf.log - f32.const 0.6931471824645996 - f32.add - ) - (func $std/math/test_acoshf (; 62 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.acosh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.asin (; 63 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - local.get $0 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1072693248 - i32.ge_u - if - local.get $0 - i64.reinterpret_f64 - i32.wrap_i64 - local.set $3 - local.get $2 - i32.const 1072693248 - i32.sub - local.get $3 - i32.or - i32.const 0 - i32.eq - if - local.get $0 - f64.const 1.5707963267948966 - f64.mul - f32.const 7.52316384526264e-37 - f64.promote_f32 - f64.add - return - end - f64.const 0 - local.get $0 - local.get $0 - f64.sub - f64.div - return - end - local.get $2 - i32.const 1071644672 - i32.lt_u - if - local.get $2 - i32.const 1045430272 - i32.lt_u - if (result i32) - local.get $2 - i32.const 1048576 - i32.ge_u - else - i32.const 0 - end - if - local.get $0 - return - end - local.get $0 - local.get $0 - local.get $0 - local.get $0 - f64.mul - call $~lib/math/R - f64.mul - f64.add - return - end - f64.const 0.5 - local.get $0 - f64.abs - f64.const 0.5 - f64.mul - f64.sub - local.set $4 - local.get $4 - f64.sqrt - local.set $5 - local.get $4 - call $~lib/math/R - local.set $6 - local.get $2 - i32.const 1072640819 - i32.ge_u - if - f64.const 1.5707963267948966 - f64.const 2 - local.get $5 - local.get $5 - local.get $6 - f64.mul - f64.add - f64.mul - f64.const 6.123233995736766e-17 - f64.sub - f64.sub - local.set $0 - else - local.get $5 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $7 - local.get $4 - local.get $7 - local.get $7 - f64.mul - f64.sub - local.get $5 - local.get $7 - f64.add - f64.div - local.set $8 - f64.const 0.5 - f64.const 1.5707963267948966 - f64.mul - f64.const 2 - local.get $5 - f64.mul - local.get $6 - f64.mul - f64.const 6.123233995736766e-17 - f64.const 2 - local.get $8 - f64.mul - f64.sub - f64.sub - f64.const 0.5 - f64.const 1.5707963267948966 - f64.mul - f64.const 2 - local.get $7 - f64.mul - f64.sub - f64.sub - f64.sub - local.set $0 - end - local.get $1 - i32.const 31 - i32.shr_u - if - local.get $0 - f64.neg - return - end - local.get $0 - ) - (func $std/math/test_asin (; 64 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.asin - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/asin - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.asin (; 65 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 f32) - (local $2 i32) - (local $3 f32) - (local $4 f64) - local.get $0 - local.set $1 - local.get $0 - i32.reinterpret_f32 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1065353216 - i32.ge_u - if - local.get $2 - i32.const 1065353216 - i32.eq - if - local.get $0 - f32.const 1.5707963705062866 - f32.mul - f32.const 7.52316384526264e-37 - f32.add - return - end - f32.const 0 - local.get $0 - local.get $0 - f32.sub - f32.div - return - end - local.get $2 - i32.const 1056964608 - i32.lt_u - if - local.get $2 - i32.const 964689920 - i32.lt_u - if (result i32) - local.get $2 - i32.const 8388608 - i32.ge_u - else - i32.const 0 - end - if - local.get $0 - return - end - local.get $0 - local.get $0 - local.get $0 - local.get $0 - f32.mul - call $~lib/math/Rf - f32.mul - f32.add - return - end - f32.const 0.5 - local.get $0 - f32.abs - f32.const 0.5 - f32.mul - f32.sub - local.set $3 - local.get $3 - f64.promote_f32 - f64.sqrt - local.set $4 - f32.const 1.5707963705062866 - f64.promote_f32 - f32.const 2 - f64.promote_f32 - local.get $4 - local.get $4 - local.get $3 - call $~lib/math/Rf - f64.promote_f32 - f64.mul - f64.add - f64.mul - f64.sub - f32.demote_f64 - local.set $0 - local.get $0 - local.get $1 - f32.copysign - ) - (func $std/math/test_asinf (; 66 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.asin - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.asinh (; 67 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i64) - (local $3 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $2 - local.get $1 - i64.const 9223372036854775807 - i64.and - f64.reinterpret_i64 - local.set $3 - local.get $2 - i64.const 1049 - i64.ge_u - if - local.get $3 - call $~lib/math/NativeMath.log - f64.const 0.6931471805599453 - f64.add - local.set $3 - else - local.get $2 - i64.const 1024 - i64.ge_u - if - f64.const 2 - local.get $3 - f64.mul - f64.const 1 - local.get $3 - local.get $3 - f64.mul - f64.const 1 - f64.add - f64.sqrt - local.get $3 - f64.add - f64.div - f64.add - call $~lib/math/NativeMath.log - local.set $3 - else - local.get $2 - i64.const 997 - i64.ge_u - if - local.get $3 - local.get $3 - local.get $3 - f64.mul - local.get $3 - local.get $3 - f64.mul - f64.const 1 - f64.add - f64.sqrt - f64.const 1 - f64.add - f64.div - f64.add - call $~lib/math/NativeMath.log1p - local.set $3 - end - end - end - local.get $3 - local.get $0 - f64.copysign - ) - (func $std/math/test_asinh (; 68 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.asinh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/asinh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.asinh (; 69 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - local.get $0 - i32.reinterpret_f32 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $2 - local.get $1 - i32.const 1166016512 - i32.ge_u - if - local.get $2 - call $~lib/math/NativeMathf.log - f32.const 0.6931471824645996 - f32.add - local.set $2 - else - local.get $1 - i32.const 1073741824 - i32.ge_u - if - f32.const 2 - local.get $2 - f32.mul - f32.const 1 - local.get $2 - local.get $2 - f32.mul - f32.const 1 - f32.add - f32.sqrt - local.get $2 - f32.add - f32.div - f32.add - call $~lib/math/NativeMathf.log - local.set $2 - else - local.get $1 - i32.const 964689920 - i32.ge_u - if - local.get $2 - local.get $2 - local.get $2 - f32.mul - local.get $2 - local.get $2 - f32.mul - f32.const 1 - f32.add - f32.sqrt - f32.const 1 - f32.add - f32.div - f32.add - call $~lib/math/NativeMathf.log1p - local.set $2 - end - end - end - local.get $2 - local.get $0 - f32.copysign - ) - (func $std/math/test_asinhf (; 70 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.asinh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.atan (; 71 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i32) - (local $2 f64) - (local $3 f64) - (local $4 i32) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 i32) - local.get $0 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $1 - local.get $0 - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1141899264 - i32.ge_u - if - local.get $0 - call $~lib/number/isNaN - if - local.get $0 - return - end - f64.const 1.5707963267948966 - f32.const 7.52316384526264e-37 - f64.promote_f32 - f64.add - local.set $3 - local.get $3 - local.get $2 - f64.copysign - return - end - local.get $1 - i32.const 1071382528 - i32.lt_u - if - local.get $1 - i32.const 1044381696 - i32.lt_u - if - local.get $0 - return - end - i32.const -1 - local.set $4 - else - local.get $0 - f64.abs - local.set $0 - local.get $1 - i32.const 1072889856 - i32.lt_u - if - local.get $1 - i32.const 1072037888 - i32.lt_u - if - i32.const 0 - local.set $4 - f64.const 2 - local.get $0 - f64.mul - f64.const 1 - f64.sub - f64.const 2 - local.get $0 - f64.add - f64.div - local.set $0 - else - i32.const 1 - local.set $4 - local.get $0 - f64.const 1 - f64.sub - local.get $0 - f64.const 1 - f64.add - f64.div - local.set $0 - end - else - local.get $1 - i32.const 1073971200 - i32.lt_u - if - i32.const 2 - local.set $4 - local.get $0 - f64.const 1.5 - f64.sub - f64.const 1 - f64.const 1.5 - local.get $0 - f64.mul - f64.add - f64.div - local.set $0 - else - i32.const 3 - local.set $4 - f64.const -1 - local.get $0 - f64.div - local.set $0 - end - end - end - local.get $0 - local.get $0 - f64.mul - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $5 - local.get $3 - f64.const 0.3333333333333293 - local.get $5 - f64.const 0.14285714272503466 - local.get $5 - f64.const 0.09090887133436507 - local.get $5 - f64.const 0.06661073137387531 - local.get $5 - f64.const 0.049768779946159324 - local.get $5 - f64.const 0.016285820115365782 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $6 - local.get $5 - f64.const -0.19999999999876483 - local.get $5 - f64.const -0.11111110405462356 - local.get $5 - f64.const -0.0769187620504483 - local.get $5 - f64.const -0.058335701337905735 - local.get $5 - f64.const -0.036531572744216916 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $7 - local.get $0 - local.get $6 - local.get $7 - f64.add - f64.mul - local.set $8 - local.get $4 - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $8 - f64.sub - return - end - block $break|0 - block $case4|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $4 - local.set $9 - local.get $9 - i32.const 0 - i32.eq - br_if $case0|0 - local.get $9 - i32.const 1 - i32.eq - br_if $case1|0 - local.get $9 - i32.const 2 - i32.eq - br_if $case2|0 - local.get $9 - i32.const 3 - i32.eq - br_if $case3|0 - br $case4|0 - end - f64.const 0.4636476090008061 - local.get $8 - f64.const 2.2698777452961687e-17 - f64.sub - local.get $0 - f64.sub - f64.sub - local.set $3 - br $break|0 - end - f64.const 0.7853981633974483 - local.get $8 - f64.const 3.061616997868383e-17 - f64.sub - local.get $0 - f64.sub - f64.sub - local.set $3 - br $break|0 - end - f64.const 0.982793723247329 - local.get $8 - f64.const 1.3903311031230998e-17 - f64.sub - local.get $0 - f64.sub - f64.sub - local.set $3 - br $break|0 - end - f64.const 1.5707963267948966 - local.get $8 - f64.const 6.123233995736766e-17 - f64.sub - local.get $0 - f64.sub - f64.sub - local.set $3 - br $break|0 - end - unreachable - end - local.get $3 - local.get $2 - f64.copysign - ) - (func $std/math/test_atan (; 72 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.atan - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/atan - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.atan (; 73 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - (local $3 f32) - (local $4 i32) - (local $5 f32) - (local $6 f32) - (local $7 f32) - (local $8 f32) - (local $9 i32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $0 - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1283457024 - i32.ge_u - if - local.get $0 - call $~lib/number/isNaN - if - local.get $0 - return - end - f32.const 1.570796251296997 - f32.const 7.52316384526264e-37 - f32.add - local.set $3 - local.get $3 - local.get $2 - f32.copysign - return - end - local.get $1 - i32.const 1054867456 - i32.lt_u - if - local.get $1 - i32.const 964689920 - i32.lt_u - if - local.get $0 - return - end - i32.const -1 - local.set $4 - else - local.get $0 - f32.abs - local.set $0 - local.get $1 - i32.const 1066926080 - i32.lt_u - if - local.get $1 - i32.const 1060110336 - i32.lt_u - if - i32.const 0 - local.set $4 - f32.const 2 - local.get $0 - f32.mul - f32.const 1 - f32.sub - f32.const 2 - local.get $0 - f32.add - f32.div - local.set $0 - else - i32.const 1 - local.set $4 - local.get $0 - f32.const 1 - f32.sub - local.get $0 - f32.const 1 - f32.add - f32.div - local.set $0 - end - else - local.get $1 - i32.const 1075576832 - i32.lt_u - if - i32.const 2 - local.set $4 - local.get $0 - f32.const 1.5 - f32.sub - f32.const 1 - f32.const 1.5 - local.get $0 - f32.mul - f32.add - f32.div - local.set $0 - else - i32.const 3 - local.set $4 - f32.const -1 - local.get $0 - f32.div - local.set $0 - end - end - end - local.get $0 - local.get $0 - f32.mul - local.set $3 - local.get $3 - local.get $3 - f32.mul - local.set $5 - local.get $3 - f32.const 0.333333283662796 - local.get $5 - f32.const 0.14253635704517365 - local.get $5 - f32.const 0.06168760731816292 - f32.mul - f32.add - f32.mul - f32.add - f32.mul - local.set $6 - local.get $5 - f32.const -0.19999158382415771 - local.get $5 - f32.const -0.106480173766613 - f32.mul - f32.add - f32.mul - local.set $7 - local.get $0 - local.get $6 - local.get $7 - f32.add - f32.mul - local.set $8 - local.get $4 - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $8 - f32.sub - return - end - block $break|0 - block $case4|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $4 - local.set $9 - local.get $9 - i32.const 0 - i32.eq - br_if $case0|0 - local.get $9 - i32.const 1 - i32.eq - br_if $case1|0 - local.get $9 - i32.const 2 - i32.eq - br_if $case2|0 - local.get $9 - i32.const 3 - i32.eq - br_if $case3|0 - br $case4|0 - end - f32.const 0.46364760398864746 - local.get $8 - f32.const 5.01215824399992e-09 - f32.sub - local.get $0 - f32.sub - f32.sub - local.set $3 - br $break|0 - end - f32.const 0.7853981256484985 - local.get $8 - f32.const 3.774894707930798e-08 - f32.sub - local.get $0 - f32.sub - f32.sub - local.set $3 - br $break|0 - end - f32.const 0.9827936887741089 - local.get $8 - f32.const 3.447321716976148e-08 - f32.sub - local.get $0 - f32.sub - f32.sub - local.set $3 - br $break|0 - end - f32.const 1.570796251296997 - local.get $8 - f32.const 7.549789415861596e-08 - f32.sub - local.get $0 - f32.sub - f32.sub - local.set $3 - br $break|0 - end - unreachable - end - local.get $3 - local.get $2 - f32.copysign - ) - (func $std/math/test_atanf (; 74 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.atan - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.atanh (; 75 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i64) - (local $3 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $2 - local.get $0 - f64.abs - local.set $3 - local.get $2 - i64.const 1022 - i64.lt_u - if - local.get $2 - i64.const 991 - i64.ge_u - if - f64.const 0.5 - f64.const 2 - local.get $3 - f64.mul - f64.const 2 - local.get $3 - f64.mul - local.get $3 - f64.mul - f64.const 1 - local.get $3 - f64.sub - f64.div - f64.add - call $~lib/math/NativeMath.log1p - f64.mul - local.set $3 - end - else - f64.const 0.5 - f64.const 2 - local.get $3 - f64.const 1 - local.get $3 - f64.sub - f64.div - f64.mul - call $~lib/math/NativeMath.log1p - f64.mul - local.set $3 - end - local.get $3 - local.get $0 - f64.copysign - ) - (func $std/math/test_atanh (; 76 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.atanh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/atanh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.atanh (; 77 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $0 - f32.abs - local.set $2 - local.get $1 - i32.const 1056964608 - i32.lt_u - if - local.get $1 - i32.const 796917760 - i32.ge_u - if - f32.const 0.5 - f32.const 2 - local.get $2 - f32.mul - f32.const 1 - local.get $2 - f32.const 1 - local.get $2 - f32.sub - f32.div - f32.add - f32.mul - call $~lib/math/NativeMathf.log1p - f32.mul - local.set $2 - end - else - f32.const 0.5 - f32.const 2 - local.get $2 - f32.const 1 - local.get $2 - f32.sub - f32.div - f32.mul - call $~lib/math/NativeMathf.log1p - f32.mul - local.set $2 - end - local.get $2 - local.get $0 - f32.copysign - ) - (func $std/math/test_atanhf (; 78 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.atanh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.atan2 (; 79 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - (local $2 i64) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 f64) - (local $10 f64) - local.get $1 - call $~lib/number/isNaN - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/number/isNaN - end - if - local.get $1 - local.get $0 - f64.add - return - end - local.get $1 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $3 - local.get $2 - i32.wrap_i64 - local.set $4 - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $5 - local.get $2 - i32.wrap_i64 - local.set $6 - local.get $3 - i32.const 1072693248 - i32.sub - local.get $4 - i32.or - i32.const 0 - i32.eq - if - local.get $0 - call $~lib/math/NativeMath.atan - return - end - local.get $5 - i32.const 31 - i32.shr_u - i32.const 1 - i32.and - local.get $3 - i32.const 30 - i32.shr_u - i32.const 2 - i32.and - i32.or - local.set $7 - local.get $3 - i32.const 2147483647 - i32.and - local.set $3 - local.get $5 - i32.const 2147483647 - i32.and - local.set $5 - local.get $5 - local.get $6 - i32.or - i32.const 0 - i32.eq - if - block $break|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $7 - local.set $8 - local.get $8 - i32.const 0 - i32.eq - br_if $case0|0 - local.get $8 - i32.const 1 - i32.eq - br_if $case1|0 - local.get $8 - i32.const 2 - i32.eq - br_if $case2|0 - local.get $8 - i32.const 3 - i32.eq - br_if $case3|0 - br $break|0 - end - end - local.get $0 - return - end - global.get $~lib/math/NativeMath.PI - return - end - global.get $~lib/math/NativeMath.PI - f64.neg - return - end - end - local.get $3 - local.get $4 - i32.or - i32.const 0 - i32.eq - if - local.get $7 - i32.const 1 - i32.and - if (result f64) - global.get $~lib/math/NativeMath.PI - f64.neg - f64.const 2 - f64.div - else - global.get $~lib/math/NativeMath.PI - f64.const 2 - f64.div - end - return - end - local.get $3 - i32.const 2146435072 - i32.eq - if - local.get $5 - i32.const 2146435072 - i32.eq - if - local.get $7 - i32.const 2 - i32.and - if (result f64) - i32.const 3 - f64.convert_i32_s - global.get $~lib/math/NativeMath.PI - f64.mul - f64.const 4 - f64.div - else - global.get $~lib/math/NativeMath.PI - f64.const 4 - f64.div - end - local.set $9 - local.get $7 - i32.const 1 - i32.and - if (result f64) - local.get $9 - f64.neg - else - local.get $9 - end - return - else - local.get $7 - i32.const 2 - i32.and - if (result f64) - global.get $~lib/math/NativeMath.PI - else - i32.const 0 - f64.convert_i32_s - end - local.set $9 - local.get $7 - i32.const 1 - i32.and - if (result f64) - local.get $9 - f64.neg - else - local.get $9 - end - return - end - unreachable - end - local.get $3 - i32.const 67108864 - i32.add - local.get $5 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $5 - i32.const 2146435072 - i32.eq - end - if - local.get $7 - i32.const 1 - i32.and - if (result f64) - global.get $~lib/math/NativeMath.PI - f64.neg - f64.const 2 - f64.div - else - global.get $~lib/math/NativeMath.PI - f64.const 2 - f64.div - end - return - end - local.get $7 - i32.const 2 - i32.and - if (result i32) - local.get $5 - i32.const 67108864 - i32.add - local.get $3 - i32.lt_u - else - i32.const 0 - end - if - f64.const 0 - local.set $10 - else - local.get $0 - local.get $1 - f64.div - f64.abs - call $~lib/math/NativeMath.atan - local.set $10 - end - block $break|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $7 - local.set $8 - local.get $8 - i32.const 0 - i32.eq - br_if $case0|1 - local.get $8 - i32.const 1 - i32.eq - br_if $case1|1 - local.get $8 - i32.const 2 - i32.eq - br_if $case2|1 - local.get $8 - i32.const 3 - i32.eq - br_if $case3|1 - br $break|1 - end - local.get $10 - return - end - local.get $10 - f64.neg - return - end - global.get $~lib/math/NativeMath.PI - local.get $10 - f64.const 1.2246467991473532e-16 - f64.sub - f64.sub - return - end - local.get $10 - f64.const 1.2246467991473532e-16 - f64.sub - global.get $~lib/math/NativeMath.PI - f64.sub - return - end - unreachable - ) - (func $std/math/test_atan2 (; 80 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) - local.get $0 - local.get $1 - call $~lib/math/NativeMath.atan2 - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - local.get $1 - call $~lib/bindings/Math/atan2 - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.atan2 (; 81 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 f32) - (local $7 f32) - local.get $1 - call $~lib/number/isNaN - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/number/isNaN - end - if - local.get $1 - local.get $0 - f32.add - return - end - local.get $1 - i32.reinterpret_f32 - local.set $2 - local.get $0 - i32.reinterpret_f32 - local.set $3 - local.get $2 - i32.const 1065353216 - i32.eq - if - local.get $0 - call $~lib/math/NativeMathf.atan - return - end - local.get $3 - i32.const 31 - i32.shr_u - i32.const 1 - i32.and - local.get $2 - i32.const 30 - i32.shr_u - i32.const 2 - i32.and - i32.or - local.set $4 - local.get $2 - i32.const 2147483647 - i32.and - local.set $2 - local.get $3 - i32.const 2147483647 - i32.and - local.set $3 - local.get $3 - i32.const 0 - i32.eq - if - block $break|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $4 - local.set $5 - local.get $5 - i32.const 0 - i32.eq - br_if $case0|0 - local.get $5 - i32.const 1 - i32.eq - br_if $case1|0 - local.get $5 - i32.const 2 - i32.eq - br_if $case2|0 - local.get $5 - i32.const 3 - i32.eq - br_if $case3|0 - br $break|0 - end - end - local.get $0 - return - end - f32.const 3.1415927410125732 - return - end - f32.const 3.1415927410125732 - f32.neg - return - end - end - local.get $2 - i32.const 0 - i32.eq - if - local.get $4 - i32.const 1 - i32.and - if (result f32) - f32.const 3.1415927410125732 - f32.neg - f32.const 2 - f32.div - else - f32.const 3.1415927410125732 - f32.const 2 - f32.div - end - return - end - local.get $2 - i32.const 2139095040 - i32.eq - if - local.get $3 - i32.const 2139095040 - i32.eq - if - local.get $4 - i32.const 2 - i32.and - if (result f32) - f32.const 3 - f32.const 3.1415927410125732 - f32.mul - f32.const 4 - f32.div - else - f32.const 3.1415927410125732 - f32.const 4 - f32.div - end - local.set $6 - local.get $4 - i32.const 1 - i32.and - if (result f32) - local.get $6 - f32.neg - else - local.get $6 - end - return - else - local.get $4 - i32.const 2 - i32.and - if (result f32) - f32.const 3.1415927410125732 - else - f32.const 0 - end - local.set $6 - local.get $4 - i32.const 1 - i32.and - if (result f32) - local.get $6 - f32.neg - else - local.get $6 - end - return - end - unreachable - end - local.get $2 - i32.const 218103808 - i32.add - local.get $3 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $3 - i32.const 2139095040 - i32.eq - end - if - local.get $4 - i32.const 1 - i32.and - if (result f32) - f32.const 3.1415927410125732 - f32.neg - f32.const 2 - f32.div - else - f32.const 3.1415927410125732 - f32.const 2 - f32.div - end - return - end - local.get $4 - i32.const 2 - i32.and - if (result i32) - local.get $3 - i32.const 218103808 - i32.add - local.get $2 - i32.lt_u - else - i32.const 0 - end - if - f32.const 0 - local.set $7 - else - local.get $0 - local.get $1 - f32.div - f32.abs - call $~lib/math/NativeMathf.atan - local.set $7 - end - block $break|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $4 - local.set $5 - local.get $5 - i32.const 0 - i32.eq - br_if $case0|1 - local.get $5 - i32.const 1 - i32.eq - br_if $case1|1 - local.get $5 - i32.const 2 - i32.eq - br_if $case2|1 - local.get $5 - i32.const 3 - i32.eq - br_if $case3|1 - br $break|1 - end - local.get $7 - return - end - local.get $7 - f32.neg - return - end - f32.const 3.1415927410125732 - local.get $7 - f32.const -8.742277657347586e-08 - f32.sub - f32.sub - return - end - local.get $7 - f32.const -8.742277657347586e-08 - f32.sub - f32.const 3.1415927410125732 - f32.sub - return - end - unreachable - ) - (func $std/math/test_atan2f (; 82 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) - local.get $0 - local.get $1 - call $~lib/math/NativeMathf.atan2 - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - ) - (func $~lib/math/NativeMath.cbrt (; 83 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 f64) - (local $4 f64) - (local $5 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - local.get $0 - f64.add - return - end - local.get $2 - i32.const 1048576 - i32.lt_u - if - local.get $0 - f64.const 18014398509481984 - f64.mul - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 0 - i32.eq - if - local.get $0 - return - end - local.get $2 - i32.const 3 - i32.div_u - i32.const 696219795 - i32.add - local.set $2 - else - local.get $2 - i32.const 3 - i32.div_u - i32.const 715094163 - i32.add - local.set $2 - end - local.get $1 - i64.const 1 - i64.const 63 - i64.shl - i64.and - local.set $1 - local.get $1 - local.get $2 - i64.extend_i32_u - i64.const 32 - i64.shl - i64.or - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.get $3 - local.get $0 - f64.div - f64.mul - local.set $4 - local.get $3 - f64.const 1.87595182427177 - local.get $4 - f64.const -1.8849797954337717 - local.get $4 - f64.const 1.6214297201053545 - f64.mul - f64.add - f64.mul - f64.add - local.get $4 - local.get $4 - f64.mul - local.get $4 - f64.mul - f64.const -0.758397934778766 - local.get $4 - f64.const 0.14599619288661245 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $3 - local.get $3 - i64.reinterpret_f64 - i64.const 2147483648 - i64.add - i64.const -1073741824 - i64.and - f64.reinterpret_i64 - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $5 - local.get $0 - local.get $5 - f64.div - local.set $4 - local.get $4 - local.get $3 - f64.sub - f64.const 2 - local.get $3 - f64.mul - local.get $4 - f64.add - f64.div - local.set $4 - local.get $3 - local.get $3 - local.get $4 - f64.mul - f64.add - local.set $3 - local.get $3 - ) - (func $std/math/test_cbrt (; 84 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.cbrt - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/cbrt - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.cbrt (; 85 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f64) - (local $4 f64) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - local.get $0 - f32.add - return - end - local.get $2 - i32.const 8388608 - i32.lt_u - if - local.get $2 - i32.const 0 - i32.eq - if - local.get $0 - return - end - local.get $0 - f32.const 16777216 - f32.mul - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 3 - i32.div_u - i32.const 642849266 - i32.add - local.set $2 - else - local.get $2 - i32.const 3 - i32.div_u - i32.const 709958130 - i32.add - local.set $2 - end - local.get $1 - i32.const -2147483648 - i32.and - local.set $1 - local.get $1 - local.get $2 - i32.or - local.set $1 - local.get $1 - f32.reinterpret_i32 - f64.promote_f32 - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.get $3 - f64.mul - local.set $4 - local.get $3 - local.get $0 - f64.promote_f32 - local.get $0 - f64.promote_f32 - f64.add - local.get $4 - f64.add - f64.mul - local.get $0 - f64.promote_f32 - local.get $4 - f64.add - local.get $4 - f64.add - f64.div - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.get $3 - f64.mul - local.set $4 - local.get $3 - local.get $0 - f64.promote_f32 - local.get $0 - f64.promote_f32 - f64.add - local.get $4 - f64.add - f64.mul - local.get $0 - f64.promote_f32 - local.get $4 - f64.add - local.get $4 - f64.add - f64.div - local.set $3 - local.get $3 - f32.demote_f64 - ) - (func $std/math/test_cbrtf (; 86 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.cbrt - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $std/math/test_ceil (; 87 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - (local $4 f64) - local.get $0 - local.set $4 - local.get $4 - f64.ceil - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/ceil - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $std/math/test_ceilf (; 88 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - (local $4 f32) - local.get $0 - local.set $4 - local.get $4 - f32.ceil - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/pio2_large_quot (; 89 ;) (type $FUNCSIG$idj) (param $0 f64) (param $1 i64) (result i32) - (local $2 i32) - (local $3 i64) - (local $4 i64) - (local $5 i64) - (local $6 i32) - (local $7 i64) - (local $8 i64) - (local $9 i64) - (local $10 i64) - (local $11 i64) - (local $12 i64) - (local $13 i64) - (local $14 i64) - (local $15 i64) - (local $16 i64) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i64) - (local $25 i64) - (local $26 i64) - (local $27 i64) - (local $28 i64) - (local $29 i64) - (local $30 i64) - (local $31 i64) - (local $32 i64) - (local $33 i64) - (local $34 i64) - (local $35 i64) - (local $36 i64) - (local $37 f64) - i32.const 272 - i32.load offset=4 - local.set $2 - local.get $1 - i64.const 9223372036854775807 - i64.and - local.set $3 - local.get $3 - i64.const 52 - i64.shr_s - i64.const 1045 - i64.sub - local.set $4 - local.get $4 - i64.const 63 - i64.and - local.set $5 - local.get $2 - local.get $4 - i64.const 6 - i64.shr_s - i32.wrap_i64 - i32.const 3 - i32.shl - i32.add - local.set $6 - local.get $6 - i64.load - local.set $10 - local.get $6 - i64.load offset=8 - local.set $11 - local.get $6 - i64.load offset=16 - local.set $12 - local.get $5 - i64.const 0 - i64.ne - if - i32.const 64 - i64.extend_i32_s - local.get $5 - i64.sub - local.set $13 - local.get $6 - i64.load offset=24 - local.set $14 - local.get $11 - local.get $13 - i64.shr_u - local.get $10 - local.get $5 - i64.shl - i64.or - local.set $7 - local.get $12 - local.get $13 - i64.shr_u - local.get $11 - local.get $5 - i64.shl - i64.or - local.set $8 - local.get $14 - local.get $13 - i64.shr_u - local.get $12 - local.get $5 - i64.shl - i64.or - local.set $9 - else - local.get $10 - local.set $7 - local.get $11 - local.set $8 - local.get $12 - local.set $9 - end - local.get $1 - i64.const 4503599627370495 - i64.and - i64.const 4503599627370496 - i64.or - local.set $15 - local.get $8 - local.set $14 - local.get $15 - local.set $13 - local.get $14 - i64.const 4294967295 - i64.and - local.set $16 - local.get $13 - i64.const 4294967295 - i64.and - local.set $17 - local.get $14 - i64.const 32 - i64.shr_u - local.set $14 - local.get $13 - i64.const 32 - i64.shr_u - local.set $13 - local.get $16 - local.get $17 - i64.mul - local.set $20 - local.get $20 - i64.const 4294967295 - i64.and - local.set $18 - local.get $14 - local.get $17 - i64.mul - local.get $20 - i64.const 32 - i64.shr_u - i64.add - local.set $20 - local.get $20 - i64.const 32 - i64.shr_u - local.set $19 - local.get $16 - local.get $13 - i64.mul - local.get $20 - i64.const 4294967295 - i64.and - i64.add - local.set $20 - local.get $14 - local.get $13 - i64.mul - local.get $19 - i64.add - local.get $20 - i64.const 32 - i64.shr_u - i64.add - global.set $~lib/math/res128_hi - local.get $20 - i64.const 32 - i64.shl - local.get $18 - i64.add - local.set $21 - global.get $~lib/math/res128_hi - local.set $22 - local.get $7 - local.get $15 - i64.mul - local.set $23 - local.get $9 - i64.const 32 - i64.shr_u - local.get $15 - i64.const 32 - i64.shr_s - i64.mul - local.set $24 - local.get $21 - local.get $24 - i64.add - local.set $25 - local.get $23 - local.get $22 - i64.add - local.get $25 - local.get $24 - i64.lt_u - i64.extend_i32_u - i64.add - local.set $26 - local.get $25 - i64.const 2 - i64.shl - local.set $27 - local.get $26 - i64.const 2 - i64.shl - local.get $25 - i64.const 62 - i64.shr_u - i64.or - local.set $28 - local.get $28 - i64.const 63 - i64.shr_s - local.set $29 - local.get $29 - i64.const 1 - i64.shr_s - local.set $30 - local.get $26 - i64.const 62 - i64.shr_s - local.get $29 - i64.sub - local.set $31 - i64.const 4372995238176751616 - local.get $27 - local.get $29 - i64.xor - local.set $14 - local.get $28 - local.get $30 - i64.xor - local.set $13 - local.get $13 - i64.clz - local.set $20 - local.get $13 - local.get $20 - i64.shl - local.get $14 - i64.const 64 - local.get $20 - i64.sub - i64.shr_u - i64.or - local.set $13 - local.get $14 - local.get $20 - i64.shl - local.set $14 - i64.const -3958705157555305932 - local.set $17 - local.get $13 - local.set $16 - local.get $17 - i64.const 4294967295 - i64.and - local.set $19 - local.get $16 - i64.const 4294967295 - i64.and - local.set $18 - local.get $17 - i64.const 32 - i64.shr_u - local.set $17 - local.get $16 - i64.const 32 - i64.shr_u - local.set $16 - local.get $19 - local.get $18 - i64.mul - local.set $34 - local.get $34 - i64.const 4294967295 - i64.and - local.set $32 - local.get $17 - local.get $18 - i64.mul - local.get $34 - i64.const 32 - i64.shr_u - i64.add - local.set $34 - local.get $34 - i64.const 32 - i64.shr_u - local.set $33 - local.get $19 - local.get $16 - i64.mul - local.get $34 - i64.const 4294967295 - i64.and - i64.add - local.set $34 - local.get $17 - local.get $16 - i64.mul - local.get $33 - i64.add - local.get $34 - i64.const 32 - i64.shr_u - i64.add - global.set $~lib/math/res128_hi - local.get $34 - i64.const 32 - i64.shl - local.get $32 - i64.add - local.set $34 - global.get $~lib/math/res128_hi - local.set $33 - local.get $33 - i64.const 11 - i64.shr_u - local.set $32 - local.get $34 - i64.const 11 - i64.shr_u - local.get $33 - i64.const 53 - i64.shl - i64.or - local.set $18 - f64.const 2.6469779601696886e-23 - i64.const -4267615245585081135 - f64.convert_i64_u - f64.mul - local.get $13 - f64.convert_i64_u - f64.mul - f64.const 2.6469779601696886e-23 - i64.const -3958705157555305932 - f64.convert_i64_u - f64.mul - local.get $14 - f64.convert_i64_u - f64.mul - f64.add - i64.trunc_f64_u - local.set $19 - local.get $32 - local.get $34 - local.get $19 - i64.lt_u - i64.extend_i32_u - i64.add - f64.convert_i64_u - global.set $~lib/math/rempio2_y0 - f64.const 5.421010862427522e-20 - local.get $18 - local.get $19 - i64.add - f64.convert_i64_u - f64.mul - global.set $~lib/math/rempio2_y1 - local.get $20 - i64.const 52 - i64.shl - i64.sub - local.set $35 - local.get $1 - local.get $28 - i64.xor - i64.const -9223372036854775808 - i64.and - local.set $36 - local.get $35 - local.get $36 - i64.or - f64.reinterpret_i64 - local.set $37 - global.get $~lib/math/rempio2_y0 - local.get $37 - f64.mul - global.set $~lib/math/rempio2_y0 - global.get $~lib/math/rempio2_y1 - local.get $37 - f64.mul - global.set $~lib/math/rempio2_y1 - local.get $31 - i32.wrap_i64 - ) - (func $~lib/math/NativeMath.cos (; 90 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 i32) - (local $11 i64) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 f64) - (local $17 i32) - (local $18 f64) - (local $19 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - local.get $2 - i32.const 31 - i32.shr_u - local.set $3 - local.get $2 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1072243195 - i32.le_u - if - local.get $2 - i32.const 1044816030 - i32.lt_u - if - f64.const 1 - return - end - local.get $0 - local.set $5 - f64.const 0 - local.set $4 - local.get $5 - local.get $5 - f64.mul - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $6 - f64.const 0.0416666666666666 - local.get $6 - f64.const -0.001388888888887411 - local.get $6 - f64.const 2.480158728947673e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.get $7 - local.get $7 - f64.mul - f64.const -2.7557314351390663e-07 - local.get $6 - f64.const 2.087572321298175e-09 - local.get $6 - f64.const -1.1359647557788195e-11 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $8 - f64.const 0.5 - local.get $6 - f64.mul - local.set $9 - f64.const 1 - local.get $9 - f64.sub - local.set $7 - local.get $7 - f64.const 1 - local.get $7 - f64.sub - local.get $9 - f64.sub - local.get $6 - local.get $8 - f64.mul - local.get $5 - local.get $4 - f64.mul - f64.sub - f64.add - f64.add - return - end - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - local.get $0 - f64.sub - return - end - block $~lib/math/rempio2|inlined.0 (result i32) - local.get $0 - local.set $4 - local.get $1 - local.set $11 - local.get $3 - local.set $10 - local.get $11 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 2147483647 - i32.and - local.set $12 - local.get $12 - i32.const 1073928572 - i32.lt_u - if - i32.const 1 - local.set $13 - local.get $10 - i32.eqz - if - local.get $4 - f64.const 1.5707963267341256 - f64.sub - local.set $9 - local.get $12 - i32.const 1073291771 - i32.ne - if - local.get $9 - f64.const 6.077100506506192e-11 - f64.sub - local.set $8 - local.get $9 - local.get $8 - f64.sub - f64.const 6.077100506506192e-11 - f64.sub - local.set $7 - else - local.get $9 - f64.const 6.077100506303966e-11 - f64.sub - local.set $9 - local.get $9 - f64.const 2.0222662487959506e-21 - f64.sub - local.set $8 - local.get $9 - local.get $8 - f64.sub - f64.const 2.0222662487959506e-21 - f64.sub - local.set $7 - end - else - local.get $4 - f64.const 1.5707963267341256 - f64.add - local.set $9 - local.get $12 - i32.const 1073291771 - i32.ne - if - local.get $9 - f64.const 6.077100506506192e-11 - f64.add - local.set $8 - local.get $9 - local.get $8 - f64.sub - f64.const 6.077100506506192e-11 - f64.add - local.set $7 - else - local.get $9 - f64.const 6.077100506303966e-11 - f64.add - local.set $9 - local.get $9 - f64.const 2.0222662487959506e-21 - f64.add - local.set $8 - local.get $9 - local.get $8 - f64.sub - f64.const 2.0222662487959506e-21 - f64.add - local.set $7 - end - i32.const -1 - local.set $13 - end - local.get $8 - global.set $~lib/math/rempio2_y0 - local.get $7 - global.set $~lib/math/rempio2_y1 - local.get $13 - br $~lib/math/rempio2|inlined.0 - end - local.get $12 - i32.const 1094263291 - i32.lt_u - if - local.get $4 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $7 - local.get $4 - local.get $7 - f64.const 1.5707963267341256 - f64.mul - f64.sub - local.set $8 - local.get $7 - f64.const 6.077100506506192e-11 - f64.mul - local.set $9 - local.get $12 - i32.const 20 - i32.shr_u - local.set $13 - local.get $8 - local.get $9 - f64.sub - local.set $6 - local.get $6 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $14 - local.get $13 - local.get $14 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $15 - local.get $15 - i32.const 16 - i32.gt_u - if - local.get $8 - local.set $5 - local.get $7 - f64.const 6.077100506303966e-11 - f64.mul - local.set $9 - local.get $5 - local.get $9 - f64.sub - local.set $8 - local.get $7 - f64.const 2.0222662487959506e-21 - f64.mul - local.get $5 - local.get $8 - f64.sub - local.get $9 - f64.sub - f64.sub - local.set $9 - local.get $8 - local.get $9 - f64.sub - local.set $6 - local.get $6 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $14 - local.get $13 - local.get $14 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $15 - local.get $15 - i32.const 49 - i32.gt_u - if - local.get $8 - local.set $16 - local.get $7 - f64.const 2.0222662487111665e-21 - f64.mul - local.set $9 - local.get $16 - local.get $9 - f64.sub - local.set $8 - local.get $7 - f64.const 8.4784276603689e-32 - f64.mul - local.get $16 - local.get $8 - f64.sub - local.get $9 - f64.sub - f64.sub - local.set $9 - local.get $8 - local.get $9 - f64.sub - local.set $6 - end - end - local.get $8 - local.get $6 - f64.sub - local.get $9 - f64.sub - local.set $5 - local.get $6 - global.set $~lib/math/rempio2_y0 - local.get $5 - global.set $~lib/math/rempio2_y1 - local.get $7 - i32.trunc_f64_s - br $~lib/math/rempio2|inlined.0 - end - local.get $4 - local.get $11 - call $~lib/math/pio2_large_quot - local.set $15 - i32.const 0 - local.get $15 - i32.sub - local.get $15 - local.get $10 - select - end - local.set $17 - global.get $~lib/math/rempio2_y0 - local.set $18 - global.get $~lib/math/rempio2_y1 - local.set $19 - local.get $17 - i32.const 1 - i32.and - if (result f64) - block $~lib/math/sin_kern|inlined.0 (result f64) - local.get $18 - local.set $7 - local.get $19 - local.set $16 - i32.const 1 - local.set $13 - local.get $7 - local.get $7 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const 0.00833333333332249 - local.get $4 - f64.const -1.984126982985795e-04 - local.get $4 - f64.const 2.7557313707070068e-06 - f64.mul - f64.add - f64.mul - f64.add - local.get $4 - local.get $5 - f64.mul - f64.const -2.5050760253406863e-08 - local.get $4 - f64.const 1.58969099521155e-10 - f64.mul - f64.add - f64.mul - f64.add - local.set $6 - local.get $4 - local.get $7 - f64.mul - local.set $9 - local.get $13 - i32.eqz - if - local.get $7 - local.get $9 - f64.const -0.16666666666666632 - local.get $4 - local.get $6 - f64.mul - f64.add - f64.mul - f64.add - br $~lib/math/sin_kern|inlined.0 - else - local.get $7 - local.get $4 - f64.const 0.5 - local.get $16 - f64.mul - local.get $9 - local.get $6 - f64.mul - f64.sub - f64.mul - local.get $16 - f64.sub - local.get $9 - f64.const -0.16666666666666632 - f64.mul - f64.sub - f64.sub - br $~lib/math/sin_kern|inlined.0 - end - unreachable - end - else - local.get $18 - local.set $16 - local.get $19 - local.set $8 - local.get $16 - local.get $16 - f64.mul - local.set $9 - local.get $9 - local.get $9 - f64.mul - local.set $6 - local.get $9 - f64.const 0.0416666666666666 - local.get $9 - f64.const -0.001388888888887411 - local.get $9 - f64.const 2.480158728947673e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.get $6 - local.get $6 - f64.mul - f64.const -2.7557314351390663e-07 - local.get $9 - f64.const 2.087572321298175e-09 - local.get $9 - f64.const -1.1359647557788195e-11 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $5 - f64.const 0.5 - local.get $9 - f64.mul - local.set $4 - f64.const 1 - local.get $4 - f64.sub - local.set $6 - local.get $6 - f64.const 1 - local.get $6 - f64.sub - local.get $4 - f64.sub - local.get $9 - local.get $5 - f64.mul - local.get $16 - local.get $8 - f64.mul - f64.sub - f64.add - f64.add - end - local.set $0 - local.get $17 - i32.const 1 - i32.add - i32.const 2 - i32.and - if (result f64) - local.get $0 - f64.neg - else - local.get $0 - end - ) - (func $std/math/test_cos (; 91 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.cos - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/cos - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.cos (; 92 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f64) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 i32) - (local $9 i32) - (local $10 f32) - (local $11 i32) - (local $12 f32) - (local $13 i32) - (local $14 i32) - (local $15 i64) - (local $16 i32) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i32) - (local $25 i32) - (local $26 f64) - (local $27 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 31 - i32.shr_u - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1061752794 - i32.le_u - if - local.get $1 - i32.const 964689920 - i32.lt_u - if - f32.const 1 - return - end - local.get $0 - f64.promote_f32 - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const -0.001388676377460993 - local.get $4 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $6 - f32.const 1 - f64.promote_f32 - local.get $4 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $5 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $5 - local.get $4 - f64.mul - local.get $6 - f64.mul - f64.add - f32.demote_f64 - return - end - local.get $1 - i32.const 1081824209 - i32.le_u - if - local.get $1 - i32.const 1075235811 - i32.gt_u - if - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 3.141592653589793 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 3.141592653589793 - f64.sub - end - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $5 - f64.const -0.001388676377460993 - local.get $6 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $4 - f32.const 1 - f64.promote_f32 - local.get $6 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $5 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $5 - local.get $6 - f64.mul - local.get $4 - f64.mul - f64.add - f32.demote_f64 - f32.neg - return - else - local.get $2 - if (result f32) - local.get $0 - f64.promote_f32 - f64.const 1.5707963267948966 - f64.add - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const -1.9839334836096632e-04 - local.get $4 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $6 - local.get $4 - local.get $3 - f64.mul - local.set $7 - local.get $3 - local.get $7 - f64.const -0.16666666641626524 - local.get $4 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $7 - local.get $5 - f64.mul - local.get $6 - f64.mul - f64.add - f32.demote_f64 - else - f64.const 1.5707963267948966 - local.get $0 - f64.promote_f32 - f64.sub - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - f64.const -1.9839334836096632e-04 - local.get $7 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $5 - local.get $7 - local.get $3 - f64.mul - local.set $4 - local.get $3 - local.get $4 - f64.const -0.16666666641626524 - local.get $7 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $4 - local.get $6 - f64.mul - local.get $5 - f64.mul - f64.add - f32.demote_f64 - end - return - end - unreachable - end - local.get $1 - i32.const 1088565717 - i32.le_u - if - local.get $1 - i32.const 1085271519 - i32.gt_u - if - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 6.283185307179586 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 6.283185307179586 - f64.sub - end - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const -0.001388676377460993 - local.get $4 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $6 - f32.const 1 - f64.promote_f32 - local.get $4 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $5 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $5 - local.get $4 - f64.mul - local.get $6 - f64.mul - f64.add - f32.demote_f64 - return - else - local.get $2 - if (result f32) - local.get $0 - f32.neg - f64.promote_f32 - f64.const 4.71238898038469 - f64.sub - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $5 - f64.const -1.9839334836096632e-04 - local.get $6 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $4 - local.get $6 - local.get $7 - f64.mul - local.set $3 - local.get $7 - local.get $3 - f64.const -0.16666666641626524 - local.get $6 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $3 - local.get $5 - f64.mul - local.get $4 - f64.mul - f64.add - f32.demote_f64 - else - local.get $0 - f64.promote_f32 - f64.const 4.71238898038469 - f64.sub - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - f64.const -1.9839334836096632e-04 - local.get $3 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $5 - local.get $3 - local.get $7 - f64.mul - local.set $6 - local.get $7 - local.get $6 - f64.const -0.16666666641626524 - local.get $3 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $6 - local.get $4 - f64.mul - local.get $5 - f64.mul - f64.add - f32.demote_f64 - end - return - end - unreachable - end - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - local.get $0 - f32.sub - return - end - block $~lib/math/rempio2f|inlined.0 (result i32) - local.get $0 - local.set $10 - local.get $1 - local.set $9 - local.get $2 - local.set $8 - local.get $9 - i32.const 1305022427 - i32.lt_u - if - local.get $10 - f64.promote_f32 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $6 - local.get $10 - f64.promote_f32 - local.get $6 - f64.const 1.5707963109016418 - f64.mul - f64.sub - local.get $6 - f64.const 1.5893254773528196e-08 - f64.mul - f64.sub - global.set $~lib/math/rempio2f_y - local.get $6 - i32.trunc_f64_s - br $~lib/math/rempio2f|inlined.0 - end - local.get $10 - local.set $12 - local.get $9 - local.set $11 - i32.const 352 - i32.load offset=4 - local.set $13 - local.get $11 - i32.const 23 - i32.shr_s - i32.const 152 - i32.sub - local.set $14 - local.get $14 - i32.const 63 - i32.and - i64.extend_i32_s - local.set $15 - local.get $13 - local.get $14 - i32.const 6 - i32.shr_s - i32.const 3 - i32.shl - i32.add - local.set $16 - local.get $16 - i64.load - local.set $17 - local.get $16 - i64.load offset=8 - local.set $18 - local.get $15 - i64.const 32 - i64.gt_u - if - local.get $16 - i64.load offset=16 - local.set $20 - local.get $20 - i64.const 96 - local.get $15 - i64.sub - i64.shr_u - local.set $19 - local.get $19 - local.get $18 - local.get $15 - i64.const 32 - i64.sub - i64.shl - i64.or - local.set $19 - else - local.get $18 - i64.const 32 - local.get $15 - i64.sub - i64.shr_u - local.set $19 - end - local.get $18 - i64.const 64 - local.get $15 - i64.sub - i64.shr_u - local.get $17 - local.get $15 - i64.shl - i64.or - local.set $20 - local.get $11 - i32.const 8388607 - i32.and - i32.const 8388608 - i32.or - i64.extend_i32_s - local.set $21 - local.get $21 - local.get $20 - i64.mul - local.get $21 - local.get $19 - i64.mul - i64.const 32 - i64.shr_u - i64.add - local.set $22 - local.get $22 - i64.const 2 - i64.shl - local.set $23 - local.get $22 - i64.const 62 - i64.shr_u - local.get $23 - i64.const 63 - i64.shr_u - i64.add - i32.wrap_i64 - local.set $24 - f64.const 8.515303950216386e-20 - local.get $12 - f64.promote_f32 - f64.copysign - local.get $23 - f64.convert_i64_s - f64.mul - global.set $~lib/math/rempio2f_y - local.get $24 - local.set $24 - i32.const 0 - local.get $24 - i32.sub - local.get $24 - local.get $8 - select - end - local.set $25 - global.get $~lib/math/rempio2f_y - local.set $26 - local.get $25 - i32.const 1 - i32.and - if (result f32) - local.get $26 - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $5 - f64.const -1.9839334836096632e-04 - local.get $6 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $4 - local.get $6 - local.get $7 - f64.mul - local.set $3 - local.get $7 - local.get $3 - f64.const -0.16666666641626524 - local.get $6 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $3 - local.get $5 - f64.mul - local.get $4 - f64.mul - f64.add - f32.demote_f64 - else - local.get $26 - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - f64.const -0.001388676377460993 - local.get $3 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $5 - f32.const 1 - f64.promote_f32 - local.get $3 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $4 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $4 - local.get $3 - f64.mul - local.get $5 - f64.mul - f64.add - f32.demote_f64 - end - local.set $27 - local.get $25 - i32.const 1 - i32.add - i32.const 2 - i32.and - if (result f32) - local.get $27 - f32.neg - else - local.get $27 - end - ) - (func $std/math/test_cosf (; 93 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.cos - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.expm1 (; 94 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - (local $13 f64) - (local $14 f64) - (local $15 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i64.const 2147483647 - i64.and - i32.wrap_i64 - local.set $2 - i32.const 0 - local.set $3 - local.get $1 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.set $4 - local.get $2 - i32.const 1078159482 - i32.ge_u - if - local.get $0 - call $~lib/number/isNaN - if - local.get $0 - return - end - local.get $4 - if - f64.const -1 - return - end - local.get $0 - f64.const 709.782712893384 - f64.gt - if - local.get $0 - f64.const 8988465674311579538646525e283 - f64.mul - return - end - end - f64.const 0 - local.set $5 - local.get $2 - i32.const 1071001154 - i32.gt_u - if - i32.const 1 - local.get $4 - i32.const 1 - i32.shl - i32.sub - f64.const 1.4426950408889634 - local.get $0 - f64.mul - f64.const 0.5 - local.get $0 - f64.copysign - f64.add - i32.trunc_f64_s - local.get $2 - i32.const 1072734898 - i32.lt_u - select - local.set $3 - local.get $3 - f64.convert_i32_s - local.set $6 - local.get $0 - local.get $6 - f64.const 0.6931471803691238 - f64.mul - f64.sub - local.set $7 - local.get $6 - f64.const 1.9082149292705877e-10 - f64.mul - local.set $8 - local.get $7 - local.get $8 - f64.sub - local.set $0 - local.get $7 - local.get $0 - f64.sub - local.get $8 - f64.sub - local.set $5 - else - local.get $2 - i32.const 1016070144 - i32.lt_u - if - local.get $0 - return - end - end - f64.const 0.5 - local.get $0 - f64.mul - local.set $9 - local.get $0 - local.get $9 - f64.mul - local.set $10 - local.get $10 - local.get $10 - f64.mul - local.set $11 - f64.const 1 - local.get $10 - f64.const -0.03333333333333313 - f64.mul - f64.add - local.get $11 - f64.const 1.5873015872548146e-03 - local.get $10 - f64.const -7.93650757867488e-05 - f64.mul - f64.add - local.get $11 - f64.const 4.008217827329362e-06 - local.get $10 - f64.const -2.0109921818362437e-07 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $12 - f64.const 3 - local.get $12 - local.get $9 - f64.mul - f64.sub - local.set $6 - local.get $10 - local.get $12 - local.get $6 - f64.sub - f64.const 6 - local.get $0 - local.get $6 - f64.mul - f64.sub - f64.div - f64.mul - local.set $13 - local.get $3 - i32.const 0 - i32.eq - if - local.get $0 - local.get $0 - local.get $13 - f64.mul - local.get $10 - f64.sub - f64.sub - return - end - local.get $0 - local.get $13 - local.get $5 - f64.sub - f64.mul - local.get $5 - f64.sub - local.set $13 - local.get $13 - local.get $10 - f64.sub - local.set $13 - local.get $3 - i32.const -1 - i32.eq - if - f64.const 0.5 - local.get $0 - local.get $13 - f64.sub - f64.mul - f64.const 0.5 - f64.sub - return - end - local.get $3 - i32.const 1 - i32.eq - if - local.get $0 - f64.const -0.25 - f64.lt - if - f64.const -2 - local.get $13 - local.get $0 - f64.const 0.5 - f64.add - f64.sub - f64.mul - return - end - f64.const 1 - f64.const 2 - local.get $0 - local.get $13 - f64.sub - f64.mul - f64.add - return - end - i64.const 1023 - local.get $3 - i64.extend_i32_s - i64.add - i64.const 52 - i64.shl - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $14 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - i32.const 1 - else - local.get $3 - i32.const 56 - i32.gt_s - end - if - local.get $0 - local.get $13 - f64.sub - f64.const 1 - f64.add - local.set $15 - local.get $3 - i32.const 1024 - i32.eq - if - local.get $15 - f64.const 2 - f64.mul - f64.const 8988465674311579538646525e283 - f64.mul - local.set $15 - else - local.get $15 - local.get $14 - f64.mul - local.set $15 - end - local.get $15 - f64.const 1 - f64.sub - return - end - i64.const 1023 - local.get $3 - i64.extend_i32_s - i64.sub - i64.const 52 - i64.shl - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $15 - local.get $3 - i32.const 20 - i32.lt_s - if - f64.const 1 - local.get $15 - f64.sub - local.get $13 - f64.sub - local.set $15 - else - f64.const 1 - local.get $13 - local.get $15 - f64.add - f64.sub - local.set $15 - end - local.get $0 - local.get $15 - f64.add - local.get $14 - f64.mul - ) - (func $~lib/math/NativeMath.exp (; 95 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i32) - (local $2 i32) - (local $3 f64) - (local $4 f64) - (local $5 i32) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - local.get $0 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $1 - local.get $1 - i32.const 31 - i32.shr_u - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1082532651 - i32.ge_u - if - local.get $0 - call $~lib/number/isNaN - if - local.get $0 - return - end - local.get $0 - f64.const 709.782712893384 - f64.gt - if - local.get $0 - f64.const 8988465674311579538646525e283 - f64.mul - return - end - local.get $0 - f64.const -745.1332191019411 - f64.lt - if - f64.const 0 - return - end - end - f64.const 0 - local.set $4 - i32.const 0 - local.set $5 - local.get $1 - i32.const 1071001154 - i32.gt_u - if - local.get $1 - i32.const 1072734898 - i32.ge_u - if - f64.const 1.4426950408889634 - local.get $0 - f64.mul - f64.const 0.5 - local.get $0 - f64.copysign - f64.add - i32.trunc_f64_s - local.set $5 - else - i32.const 1 - local.get $2 - i32.const 1 - i32.shl - i32.sub - local.set $5 - end - local.get $0 - local.get $5 - f64.convert_i32_s - f64.const 0.6931471803691238 - f64.mul - f64.sub - local.set $3 - local.get $5 - f64.convert_i32_s - f64.const 1.9082149292705877e-10 - f64.mul - local.set $4 - local.get $3 - local.get $4 - f64.sub - local.set $0 - else - local.get $1 - i32.const 1043333120 - i32.gt_u - if - local.get $0 - local.set $3 - else - f64.const 1 - local.get $0 - f64.add - return - end - end - local.get $0 - local.get $0 - f64.mul - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $0 - local.get $6 - f64.const 0.16666666666666602 - f64.mul - local.get $7 - f64.const -2.7777777777015593e-03 - local.get $6 - f64.const 6.613756321437934e-05 - f64.mul - f64.add - local.get $7 - f64.const -1.6533902205465252e-06 - local.get $6 - f64.const 4.1381367970572385e-08 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.sub - local.set $8 - f64.const 1 - local.get $0 - local.get $8 - f64.mul - f64.const 2 - local.get $8 - f64.sub - f64.div - local.get $4 - f64.sub - local.get $3 - f64.add - f64.add - local.set $9 - local.get $5 - i32.const 0 - i32.eq - if - local.get $9 - return - end - local.get $9 - local.get $5 - call $~lib/math/NativeMath.scalbn - ) - (func $~lib/math/NativeMath.cosh (; 96 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 f64) - (local $4 f64) - (local $5 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 9223372036854775807 - i64.and - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $0 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - local.get $2 - i32.const 1072049730 - i32.lt_u - if - local.get $2 - i32.const 1045430272 - i32.lt_u - if - f64.const 1 - return - end - local.get $0 - call $~lib/math/NativeMath.expm1 - local.set $3 - f64.const 1 - local.get $3 - local.get $3 - f64.mul - f64.const 2 - f64.const 2 - local.get $3 - f64.mul - f64.add - f64.div - f64.add - return - end - local.get $2 - i32.const 1082535490 - i32.lt_u - if - local.get $0 - call $~lib/math/NativeMath.exp - local.set $3 - f64.const 0.5 - local.get $3 - f64.const 1 - local.get $3 - f64.div - f64.add - f64.mul - return - end - local.get $0 - local.set $4 - i32.const 1023 - i32.const 2043 - i32.const 2 - i32.div_u - i32.add - i32.const 20 - i32.shl - i64.extend_i32_u - i64.const 32 - i64.shl - f64.reinterpret_i64 - local.set $5 - local.get $4 - f64.const 1416.0996898839683 - f64.sub - call $~lib/math/NativeMath.exp - local.get $5 - f64.mul - local.get $5 - f64.mul - local.set $3 - local.get $3 - ) - (func $std/math/test_cosh (; 97 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.cosh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/cosh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.expm1 (; 98 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 f32) - (local $5 f32) - (local $6 i32) - (local $7 f32) - (local $8 f32) - (local $9 f32) - (local $10 f32) - (local $11 f32) - (local $12 f32) - (local $13 f32) - (local $14 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $2 - local.get $1 - i32.const 31 - i32.shr_u - local.set $3 - local.get $2 - i32.const 1100331076 - i32.ge_u - if - local.get $2 - i32.const 2139095040 - i32.gt_u - if - local.get $0 - return - end - local.get $3 - if - f32.const -1 - return - end - local.get $0 - f32.const 88.7216796875 - f32.gt - if - local.get $0 - f32.const 1701411834604692317316873e14 - f32.mul - local.set $0 - local.get $0 - return - end - end - f32.const 0 - local.set $4 - local.get $2 - i32.const 1051816472 - i32.gt_u - if - i32.const 1 - local.get $3 - i32.const 1 - i32.shl - i32.sub - f32.const 1.4426950216293335 - local.get $0 - f32.mul - f32.const 0.5 - local.get $0 - f32.copysign - f32.add - i32.trunc_f32_s - local.get $2 - i32.const 1065686418 - i32.lt_u - select - local.set $6 - local.get $6 - f32.convert_i32_s - local.set $5 - local.get $0 - local.get $5 - f32.const 0.6931381225585938 - f32.mul - f32.sub - local.set $7 - local.get $5 - f32.const 9.05800061445916e-06 - f32.mul - local.set $8 - local.get $7 - local.get $8 - f32.sub - local.set $0 - local.get $7 - local.get $0 - f32.sub - local.get $8 - f32.sub - local.set $4 - else - local.get $2 - i32.const 855638016 - i32.lt_u - if - local.get $0 - return - else - i32.const 0 - local.set $6 - end - end - f32.const 0.5 - local.get $0 - f32.mul - local.set $9 - local.get $0 - local.get $9 - f32.mul - local.set $10 - f32.const 1 - local.get $10 - f32.const -0.03333321213722229 - local.get $10 - f32.const 1.5807170420885086e-03 - f32.mul - f32.add - f32.mul - f32.add - local.set $11 - f32.const 3 - local.get $11 - local.get $9 - f32.mul - f32.sub - local.set $5 - local.get $10 - local.get $11 - local.get $5 - f32.sub - f32.const 6 - local.get $0 - local.get $5 - f32.mul - f32.sub - f32.div - f32.mul - local.set $12 - local.get $6 - i32.const 0 - i32.eq - if - local.get $0 - local.get $0 - local.get $12 - f32.mul - local.get $10 - f32.sub - f32.sub - return - end - local.get $0 - local.get $12 - local.get $4 - f32.sub - f32.mul - local.get $4 - f32.sub - local.set $12 - local.get $12 - local.get $10 - f32.sub - local.set $12 - local.get $6 - i32.const -1 - i32.eq - if - f32.const 0.5 - local.get $0 - local.get $12 - f32.sub - f32.mul - f32.const 0.5 - f32.sub - return - end - local.get $6 - i32.const 1 - i32.eq - if - local.get $0 - f32.const -0.25 - f32.lt - if - f32.const -2 - local.get $12 - local.get $0 - f32.const 0.5 - f32.add - f32.sub - f32.mul - return - end - f32.const 1 - f32.const 2 - local.get $0 - local.get $12 - f32.sub - f32.mul - f32.add - return - end - i32.const 127 - local.get $6 - i32.add - i32.const 23 - i32.shl - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $13 - local.get $6 - i32.const 0 - i32.lt_s - if (result i32) - i32.const 1 - else - local.get $6 - i32.const 56 - i32.gt_s - end - if - local.get $0 - local.get $12 - f32.sub - f32.const 1 - f32.add - local.set $14 - local.get $6 - i32.const 128 - i32.eq - if - local.get $14 - f32.const 2 - f32.mul - f32.const 1701411834604692317316873e14 - f32.mul - local.set $14 - else - local.get $14 - local.get $13 - f32.mul - local.set $14 - end - local.get $14 - f32.const 1 - f32.sub - return - end - i32.const 127 - local.get $6 - i32.sub - i32.const 23 - i32.shl - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $14 - local.get $6 - i32.const 20 - i32.lt_s - if - f32.const 1 - local.get $14 - f32.sub - local.get $12 - f32.sub - local.set $14 - else - f32.const 1 - local.get $12 - local.get $14 - f32.add - f32.sub - local.set $14 - end - local.get $0 - local.get $14 - f32.add - local.get $13 - f32.mul - ) - (func $~lib/math/NativeMathf.exp (; 99 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f32) - (local $4 f32) - (local $5 i32) - (local $6 f32) - (local $7 f32) - (local $8 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 31 - i32.shr_u - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1118743632 - i32.ge_u - if - local.get $1 - i32.const 1118925336 - i32.ge_u - if - local.get $2 - i32.eqz - if - local.get $0 - f32.const 1701411834604692317316873e14 - f32.mul - return - else - local.get $1 - i32.const 1120924085 - i32.ge_u - if - f32.const 0 - return - end - end - end - end - local.get $1 - i32.const 1051816472 - i32.gt_u - if - local.get $1 - i32.const 1065686418 - i32.gt_u - if - f32.const 1.4426950216293335 - local.get $0 - f32.mul - f32.const 0.5 - local.get $0 - f32.copysign - f32.add - i32.trunc_f32_s - local.set $5 - else - i32.const 1 - local.get $2 - i32.const 1 - i32.shl - i32.sub - local.set $5 - end - local.get $0 - local.get $5 - f32.convert_i32_s - f32.const 0.693145751953125 - f32.mul - f32.sub - local.set $3 - local.get $5 - f32.convert_i32_s - f32.const 1.428606765330187e-06 - f32.mul - local.set $4 - local.get $3 - local.get $4 - f32.sub - local.set $0 - else - local.get $1 - i32.const 956301312 - i32.gt_u - if - i32.const 0 - local.set $5 - local.get $0 - local.set $3 - f32.const 0 - local.set $4 - else - f32.const 1 - local.get $0 - f32.add - return - end - end - local.get $0 - local.get $0 - f32.mul - local.set $6 - local.get $0 - local.get $6 - f32.const 0.16666625440120697 - local.get $6 - f32.const -2.7667332906275988e-03 - f32.mul - f32.add - f32.mul - f32.sub - local.set $7 - f32.const 1 - local.get $0 - local.get $7 - f32.mul - f32.const 2 - local.get $7 - f32.sub - f32.div - local.get $4 - f32.sub - local.get $3 - f32.add - f32.add - local.set $8 - local.get $5 - i32.const 0 - i32.eq - if - local.get $8 - return - end - local.get $8 - local.get $5 - call $~lib/math/NativeMathf.scalbn - ) - (func $~lib/math/NativeMathf.cosh (; 100 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - (local $3 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $0 - local.get $1 - i32.const 1060205079 - i32.lt_u - if - local.get $1 - i32.const 964689920 - i32.lt_u - if - f32.const 1 - return - end - local.get $0 - call $~lib/math/NativeMathf.expm1 - local.set $2 - f32.const 1 - local.get $2 - local.get $2 - f32.mul - f32.const 2 - f32.const 2 - local.get $2 - f32.mul - f32.add - f32.div - f32.add - return - end - local.get $1 - i32.const 1118925335 - i32.lt_u - if - local.get $0 - call $~lib/math/NativeMathf.exp - local.set $2 - f32.const 0.5 - local.get $2 - f32.mul - f32.const 0.5 - local.get $2 - f32.div - f32.add - return - end - local.get $0 - local.set $2 - i32.const 127 - i32.const 235 - i32.const 1 - i32.shr_u - i32.add - i32.const 23 - i32.shl - f32.reinterpret_i32 - local.set $3 - local.get $2 - f32.const 162.88958740234375 - f32.sub - call $~lib/math/NativeMathf.exp - local.get $3 - f32.mul - local.get $3 - f32.mul - ) - (func $std/math/test_coshf (; 101 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.cosh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $std/math/test_exp (; 102 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.exp - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/exp - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $std/math/test_expf (; 103 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.exp - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $std/math/test_expm1 (; 104 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.expm1 - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/expm1 - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $std/math/test_expm1f (; 105 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.expm1 - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $std/math/test_floor (; 106 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - (local $4 f64) - local.get $0 - local.set $4 - local.get $4 - f64.floor - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/floor - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $std/math/test_floorf (; 107 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - (local $4 f32) - local.get $0 - local.set $4 - local.get $4 - f32.floor - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.hypot (; 108 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - (local $2 i64) - (local $3 i64) - (local $4 i64) - (local $5 i32) - (local $6 i32) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - (local $13 f64) - (local $14 f64) - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $1 - i64.reinterpret_f64 - local.set $3 - local.get $2 - i64.const 9223372036854775807 - i64.and - local.set $2 - local.get $3 - i64.const 9223372036854775807 - i64.and - local.set $3 - local.get $2 - local.get $3 - i64.lt_u - if - local.get $2 - local.set $4 - local.get $3 - local.set $2 - local.get $4 - local.set $3 - end - local.get $2 - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.set $5 - local.get $3 - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.set $6 - local.get $3 - f64.reinterpret_i64 - local.set $1 - local.get $6 - i32.const 2047 - i32.eq - if - local.get $1 - return - end - local.get $2 - f64.reinterpret_i64 - local.set $0 - local.get $5 - i32.const 2047 - i32.eq - if (result i32) - i32.const 1 - else - local.get $3 - i64.const 0 - i64.eq - end - if - local.get $0 - return - end - local.get $5 - local.get $6 - i32.sub - i32.const 64 - i32.gt_s - if - local.get $0 - local.get $1 - f64.add - return - end - f64.const 1 - local.set $7 - local.get $5 - i32.const 1533 - i32.gt_s - if - f64.const 5260135901548373507240989e186 - local.set $7 - local.get $0 - f64.const 1.90109156629516e-211 - f64.mul - local.set $0 - local.get $1 - f64.const 1.90109156629516e-211 - f64.mul - local.set $1 - else - local.get $6 - i32.const 573 - i32.lt_s - if - f64.const 1.90109156629516e-211 - local.set $7 - local.get $0 - f64.const 5260135901548373507240989e186 - f64.mul - local.set $0 - local.get $1 - f64.const 5260135901548373507240989e186 - f64.mul - local.set $1 - end - end - local.get $0 - f64.const 134217729 - f64.mul - local.set $8 - local.get $0 - local.get $8 - f64.sub - local.get $8 - f64.add - local.set $9 - local.get $0 - local.get $9 - f64.sub - local.set $10 - local.get $0 - local.get $0 - f64.mul - local.set $11 - local.get $9 - local.get $9 - f64.mul - local.get $11 - f64.sub - f64.const 2 - local.get $9 - f64.mul - local.get $10 - f64.add - local.get $10 - f64.mul - f64.add - local.set $12 - local.get $1 - f64.const 134217729 - f64.mul - local.set $8 - local.get $1 - local.get $8 - f64.sub - local.get $8 - f64.add - local.set $9 - local.get $1 - local.get $9 - f64.sub - local.set $10 - local.get $1 - local.get $1 - f64.mul - local.set $13 - local.get $9 - local.get $9 - f64.mul - local.get $13 - f64.sub - f64.const 2 - local.get $9 - f64.mul - local.get $10 - f64.add - local.get $10 - f64.mul - f64.add - local.set $14 - local.get $7 - local.get $14 - local.get $12 - f64.add - local.get $13 - f64.add - local.get $11 - f64.add - f64.sqrt - f64.mul - ) - (func $std/math/test_hypot (; 109 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) - local.get $0 - local.get $1 - call $~lib/math/NativeMath.hypot - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - local.get $1 - call $~lib/bindings/Math/hypot - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.hypot (; 110 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f32) - local.get $0 - i32.reinterpret_f32 - local.set $2 - local.get $1 - i32.reinterpret_f32 - local.set $3 - local.get $2 - i32.const 2147483647 - i32.and - local.set $2 - local.get $3 - i32.const 2147483647 - i32.and - local.set $3 - local.get $2 - local.get $3 - i32.lt_u - if - local.get $2 - local.set $4 - local.get $3 - local.set $2 - local.get $4 - local.set $3 - end - local.get $2 - f32.reinterpret_i32 - local.set $0 - local.get $3 - f32.reinterpret_i32 - local.set $1 - local.get $3 - i32.const 2139095040 - i32.eq - if - local.get $1 - return - end - local.get $2 - i32.const 2139095040 - i32.ge_u - if (result i32) - i32.const 1 - else - local.get $3 - i32.const 0 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $2 - local.get $3 - i32.sub - i32.const 209715200 - i32.ge_u - end - if - local.get $0 - local.get $1 - f32.add - return - end - f32.const 1 - local.set $5 - local.get $2 - i32.const 1568669696 - i32.ge_u - if - f32.const 1237940039285380274899124e3 - local.set $5 - local.get $0 - f32.const 8.077935669463161e-28 - f32.mul - local.set $0 - local.get $1 - f32.const 8.077935669463161e-28 - f32.mul - local.set $1 - else - local.get $3 - i32.const 562036736 - i32.lt_u - if - f32.const 8.077935669463161e-28 - local.set $5 - local.get $0 - f32.const 1237940039285380274899124e3 - f32.mul - local.set $0 - local.get $1 - f32.const 1237940039285380274899124e3 - f32.mul - local.set $1 - end - end - local.get $5 - local.get $0 - f64.promote_f32 - local.get $0 - f64.promote_f32 - f64.mul - local.get $1 - f64.promote_f32 - local.get $1 - f64.promote_f32 - f64.mul - f64.add - f32.demote_f64 - f32.sqrt - f32.mul - ) - (func $std/math/test_hypotf (; 111 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) - local.get $0 - local.get $1 - call $~lib/math/NativeMathf.hypot - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - ) - (func $std/math/test_log (; 112 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.log - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/log - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $std/math/test_logf (; 113 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.log - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.log10 (; 114 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - (local $13 f64) - (local $14 f64) - (local $15 f64) - (local $16 f64) - (local $17 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - i32.const 0 - local.set $3 - local.get $2 - i32.const 1048576 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $2 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i64.const 1 - i64.shl - i64.const 0 - i64.eq - if - f64.const -1 - local.get $0 - local.get $0 - f64.mul - f64.div - return - end - local.get $2 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.div - return - end - local.get $3 - i32.const 54 - i32.sub - local.set $3 - local.get $0 - f64.const 18014398509481984 - f64.mul - local.set $0 - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - else - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - return - else - local.get $2 - i32.const 1072693248 - i32.eq - if (result i32) - local.get $1 - i64.const 32 - i64.shl - i64.const 0 - i64.eq - else - i32.const 0 - end - if - f64.const 0 - return - end - end - end - local.get $2 - i32.const 1072693248 - i32.const 1072079006 - i32.sub - i32.add - local.set $2 - local.get $3 - local.get $2 - i32.const 20 - i32.shr_u - i32.const 1023 - i32.sub - i32.add - local.set $3 - local.get $2 - i32.const 1048575 - i32.and - i32.const 1072079006 - i32.add - local.set $2 - local.get $2 - i64.extend_i32_u - i64.const 32 - i64.shl - local.get $1 - i64.const 4294967295 - i64.and - i64.or - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $0 - local.get $0 - f64.const 1 - f64.sub - local.set $4 - f64.const 0.5 - local.get $4 - f64.mul - local.get $4 - f64.mul - local.set $5 - local.get $4 - f64.const 2 - local.get $4 - f64.add - f64.div - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $8 - local.get $8 - f64.const 0.3999999999940942 - local.get $8 - f64.const 0.22222198432149784 - local.get $8 - f64.const 0.15313837699209373 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $9 - local.get $7 - f64.const 0.6666666666666735 - local.get $8 - f64.const 0.2857142874366239 - local.get $8 - f64.const 0.1818357216161805 - local.get $8 - f64.const 0.14798198605116586 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $10 - local.get $10 - local.get $9 - f64.add - local.set $11 - local.get $4 - local.get $5 - f64.sub - local.set $12 - local.get $12 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const -4294967296 - i64.and - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $12 - local.get $4 - local.get $12 - f64.sub - local.get $5 - f64.sub - local.get $6 - local.get $5 - local.get $11 - f64.add - f64.mul - f64.add - local.set $13 - local.get $12 - f64.const 0.4342944818781689 - f64.mul - local.set $14 - local.get $3 - f64.convert_i32_s - local.set $15 - local.get $15 - f64.const 0.30102999566361177 - f64.mul - local.set $16 - local.get $15 - f64.const 3.694239077158931e-13 - f64.mul - local.get $13 - local.get $12 - f64.add - f64.const 2.5082946711645275e-11 - f64.mul - f64.add - local.get $13 - f64.const 0.4342944818781689 - f64.mul - f64.add - local.set $17 - local.get $16 - local.get $14 - f64.add - local.set $8 - local.get $17 - local.get $16 - local.get $8 - f64.sub - local.get $14 - f64.add - f64.add - local.set $17 - local.get $17 - local.get $8 - f64.add - ) - (func $std/math/test_log10 (; 115 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.log10 - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/log10 - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.log10 (; 116 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f32) - (local $4 f32) - (local $5 f32) - (local $6 f32) - (local $7 f32) - (local $8 f32) - (local $9 f32) - (local $10 f32) - (local $11 f32) - (local $12 f32) - (local $13 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - i32.const 0 - local.set $2 - local.get $1 - i32.const 8388608 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i32.const 1 - i32.shl - i32.const 0 - i32.eq - if - f32.const -1 - local.get $0 - local.get $0 - f32.mul - f32.div - return - end - local.get $1 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f32.sub - f32.const 0 - f32.div - return - end - local.get $2 - i32.const 25 - i32.sub - local.set $2 - local.get $0 - f32.const 33554432 - f32.mul - local.set $0 - local.get $0 - i32.reinterpret_f32 - local.set $1 - else - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - return - else - local.get $1 - i32.const 1065353216 - i32.eq - if - f32.const 0 - return - end - end - end - local.get $1 - i32.const 1065353216 - i32.const 1060439283 - i32.sub - i32.add - local.set $1 - local.get $2 - local.get $1 - i32.const 23 - i32.shr_u - i32.const 127 - i32.sub - i32.add - local.set $2 - local.get $1 - i32.const 8388607 - i32.and - i32.const 1060439283 - i32.add - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $0 - local.get $0 - f32.const 1 - f32.sub - local.set $3 - local.get $3 - f32.const 2 - local.get $3 - f32.add - f32.div - local.set $4 - local.get $4 - local.get $4 - f32.mul - local.set $5 - local.get $5 - local.get $5 - f32.mul - local.set $6 - local.get $6 - f32.const 0.40000972151756287 - local.get $6 - f32.const 0.24279078841209412 - f32.mul - f32.add - f32.mul - local.set $7 - local.get $5 - f32.const 0.6666666269302368 - local.get $6 - f32.const 0.2849878668785095 - f32.mul - f32.add - f32.mul - local.set $8 - local.get $8 - local.get $7 - f32.add - local.set $9 - f32.const 0.5 - local.get $3 - f32.mul - local.get $3 - f32.mul - local.set $10 - local.get $3 - local.get $10 - f32.sub - local.set $11 - local.get $11 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const -4096 - i32.and - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $11 - local.get $3 - local.get $11 - f32.sub - local.get $10 - f32.sub - local.get $4 - local.get $10 - local.get $9 - f32.add - f32.mul - f32.add - local.set $12 - local.get $2 - f32.convert_i32_s - local.set $13 - local.get $13 - f32.const 7.903415166765626e-07 - f32.mul - local.get $12 - local.get $11 - f32.add - f32.const -3.168997136526741e-05 - f32.mul - f32.add - local.get $12 - f32.const 0.434326171875 - f32.mul - f32.add - local.get $11 - f32.const 0.434326171875 - f32.mul - f32.add - local.get $13 - f32.const 0.3010292053222656 - f32.mul - f32.add - ) - (func $std/math/test_log10f (; 117 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.log10 - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $std/math/test_log1p (; 118 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.log1p - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/log1p - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $std/math/test_log1pf (; 119 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.log1p - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.log2 (; 120 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - (local $13 f64) - (local $14 f64) - (local $15 f64) - (local $16 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - i32.const 0 - local.set $3 - local.get $2 - i32.const 1048576 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $2 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i64.const 1 - i64.shl - i64.const 0 - i64.eq - if - f64.const -1 - local.get $0 - local.get $0 - f64.mul - f64.div - return - end - local.get $2 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.div - return - end - local.get $3 - i32.const 54 - i32.sub - local.set $3 - local.get $0 - f64.const 18014398509481984 - f64.mul - local.set $0 - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - else - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - return - else - local.get $2 - i32.const 1072693248 - i32.eq - if (result i32) - local.get $1 - i64.const 32 - i64.shl - i64.const 0 - i64.eq - else - i32.const 0 - end - if - f64.const 0 - return - end - end - end - local.get $2 - i32.const 1072693248 - i32.const 1072079006 - i32.sub - i32.add - local.set $2 - local.get $3 - local.get $2 - i32.const 20 - i32.shr_u - i32.const 1023 - i32.sub - i32.add - local.set $3 - local.get $2 - i32.const 1048575 - i32.and - i32.const 1072079006 - i32.add - local.set $2 - local.get $2 - i64.extend_i32_u - i64.const 32 - i64.shl - local.get $1 - i64.const 4294967295 - i64.and - i64.or - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $0 - local.get $0 - f64.const 1 - f64.sub - local.set $4 - f64.const 0.5 - local.get $4 - f64.mul - local.get $4 - f64.mul - local.set $5 - local.get $4 - f64.const 2 - local.get $4 - f64.add - f64.div - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $8 - local.get $8 - f64.const 0.3999999999940942 - local.get $8 - f64.const 0.22222198432149784 - local.get $8 - f64.const 0.15313837699209373 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $9 - local.get $7 - f64.const 0.6666666666666735 - local.get $8 - f64.const 0.2857142874366239 - local.get $8 - f64.const 0.1818357216161805 - local.get $8 - f64.const 0.14798198605116586 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $10 - local.get $10 - local.get $9 - f64.add - local.set $11 - local.get $4 - local.get $5 - f64.sub - local.set $12 - local.get $12 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const -4294967296 - i64.and - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $12 - local.get $4 - local.get $12 - f64.sub - local.get $5 - f64.sub - local.get $6 - local.get $5 - local.get $11 - f64.add - f64.mul - f64.add - local.set $13 - local.get $12 - f64.const 1.4426950407214463 - f64.mul - local.set $14 - local.get $13 - local.get $12 - f64.add - f64.const 1.6751713164886512e-10 - f64.mul - local.get $13 - f64.const 1.4426950407214463 - f64.mul - f64.add - local.set $15 - local.get $3 - f64.convert_i32_s - local.set $16 - local.get $16 - local.get $14 - f64.add - local.set $8 - local.get $15 - local.get $16 - local.get $8 - f64.sub - local.get $14 - f64.add - f64.add - local.set $15 - local.get $8 - local.set $14 - local.get $15 - local.get $14 - f64.add - ) - (func $std/math/test_log2 (; 121 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.log2 - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/log2 - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.log2 (; 122 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f32) - (local $4 f32) - (local $5 f32) - (local $6 f32) - (local $7 f32) - (local $8 f32) - (local $9 f32) - (local $10 f32) - (local $11 f32) - (local $12 i32) - (local $13 f32) - (local $14 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - i32.const 0 - local.set $2 - local.get $1 - i32.const 8388608 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 31 - i32.shr_u - end - if - local.get $1 - i32.const 1 - i32.shl - i32.const 0 - i32.eq - if - f32.const -1 - local.get $0 - local.get $0 - f32.mul - f32.div - return - end - local.get $1 - i32.const 31 - i32.shr_u - if - local.get $0 - local.get $0 - f32.sub - f32.const 0 - f32.div - return - end - local.get $2 - i32.const 25 - i32.sub - local.set $2 - local.get $0 - f32.const 33554432 - f32.mul - local.set $0 - local.get $0 - i32.reinterpret_f32 - local.set $1 - else - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - return - else - local.get $1 - i32.const 1065353216 - i32.eq - if - f32.const 0 - return - end - end - end - local.get $1 - i32.const 1065353216 - i32.const 1060439283 - i32.sub - i32.add - local.set $1 - local.get $2 - local.get $1 - i32.const 23 - i32.shr_u - i32.const 127 - i32.sub - i32.add - local.set $2 - local.get $1 - i32.const 8388607 - i32.and - i32.const 1060439283 - i32.add - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $0 - local.get $0 - f32.const 1 - f32.sub - local.set $3 - local.get $3 - f32.const 2 - local.get $3 - f32.add - f32.div - local.set $4 - local.get $4 - local.get $4 - f32.mul - local.set $5 - local.get $5 - local.get $5 - f32.mul - local.set $6 - local.get $6 - f32.const 0.40000972151756287 - local.get $6 - f32.const 0.24279078841209412 - f32.mul - f32.add - f32.mul - local.set $7 - local.get $5 - f32.const 0.6666666269302368 - local.get $6 - f32.const 0.2849878668785095 - f32.mul - f32.add - f32.mul - local.set $8 - local.get $8 - local.get $7 - f32.add - local.set $9 - f32.const 0.5 - local.get $3 - f32.mul - local.get $3 - f32.mul - local.set $10 - local.get $3 - local.get $10 - f32.sub - local.set $11 - local.get $11 - i32.reinterpret_f32 - local.set $12 - local.get $12 - i32.const -4096 - i32.and - local.set $12 - local.get $12 - f32.reinterpret_i32 - local.set $11 - local.get $3 - local.get $11 - f32.sub - local.get $10 - f32.sub - local.get $4 - local.get $10 - local.get $9 - f32.add - f32.mul - f32.add - local.set $13 - local.get $2 - f32.convert_i32_s - local.set $14 - local.get $13 - local.get $11 - f32.add - f32.const -1.7605285393074155e-04 - f32.mul - local.get $13 - f32.const 1.44287109375 - f32.mul - f32.add - local.get $11 - f32.const 1.44287109375 - f32.mul - f32.add - local.get $14 - f32.add - ) - (func $std/math/test_log2f (; 123 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.log2 - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $std/math/test_max (; 124 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) - (local $5 f64) - (local $6 f64) - local.get $0 - local.set $6 - local.get $1 - local.set $5 - local.get $6 - local.get $5 - f64.max - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - local.get $1 - call $~lib/bindings/Math/max - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $std/math/test_maxf (; 125 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) - (local $5 f32) - (local $6 f32) - local.get $0 - local.set $6 - local.get $1 - local.set $5 - local.get $6 - local.get $5 - f32.max - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - ) - (func $std/math/test_min (; 126 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) - (local $5 f64) - (local $6 f64) - local.get $0 - local.set $6 - local.get $1 - local.set $5 - local.get $6 - local.get $5 - f64.min - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - local.get $1 - call $~lib/bindings/Math/min - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $std/math/test_minf (; 127 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) - (local $5 f32) - (local $6 f32) - local.get $0 - local.set $6 - local.get $1 - local.set $5 - local.get $6 - local.get $5 - f32.min - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - ) - (func $~lib/math/NativeMath.mod (; 128 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - (local $2 i64) - (local $3 i64) - (local $4 i64) - (local $5 i64) - (local $6 i64) - (local $7 i64) - (local $8 f64) - (local $9 i64) - (local $10 i64) - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $1 - i64.reinterpret_f64 - local.set $3 - local.get $2 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $4 - local.get $3 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $5 - local.get $2 - i64.const 63 - i64.shr_u - local.set $6 - local.get $3 - i64.const 1 - i64.shl - local.set $7 - local.get $7 - i64.const 0 - i64.eq - if (result i32) - i32.const 1 - else - local.get $4 - i64.const 2047 - i64.eq - end - if (result i32) - i32.const 1 - else - local.get $1 - call $~lib/number/isNaN - end - if - local.get $0 - local.get $1 - f64.mul - local.set $8 - local.get $8 - local.get $8 - f64.div - return - end - local.get $2 - i64.const 1 - i64.shl - local.set $9 - local.get $9 - local.get $7 - i64.le_u - if - local.get $9 - local.get $7 - i64.eq - if - f64.const 0 - local.get $0 - f64.mul - return - end - local.get $0 - return - end - local.get $4 - i64.eqz - if - local.get $4 - local.get $2 - i64.const 12 - i64.shl - i64.clz - i64.sub - local.set $4 - local.get $2 - i64.const 0 - local.get $4 - i64.sub - i64.const 1 - i64.add - i64.shl - local.set $2 - else - local.get $2 - i64.const -1 - i64.const 12 - i64.shr_u - i64.and - local.set $2 - local.get $2 - i64.const 1 - i64.const 52 - i64.shl - i64.or - local.set $2 - end - local.get $5 - i64.eqz - if - local.get $5 - local.get $3 - i64.const 12 - i64.shl - i64.clz - i64.sub - local.set $5 - local.get $3 - i64.const 0 - local.get $5 - i64.sub - i64.const 1 - i64.add - i64.shl - local.set $3 - else - local.get $3 - i64.const -1 - i64.const 12 - i64.shr_u - i64.and - local.set $3 - local.get $3 - i64.const 1 - i64.const 52 - i64.shl - i64.or - local.set $3 - end - block $break|0 - loop $continue|0 - local.get $4 - local.get $5 - i64.gt_s - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i64.ge_u - if - local.get $2 - local.get $3 - i64.eq - if - f64.const 0 - local.get $0 - f64.mul - return - end - local.get $2 - local.get $3 - i64.sub - local.set $2 - end - local.get $2 - i64.const 1 - i64.shl - local.set $2 - local.get $4 - i64.const 1 - i64.sub - local.set $4 - br $continue|0 - end - unreachable - end - local.get $2 - local.get $3 - i64.ge_u - if - local.get $2 - local.get $3 - i64.eq - if - f64.const 0 - local.get $0 - f64.mul - return - end - local.get $2 - local.get $3 - i64.sub - local.set $2 - end - local.get $2 - i64.const 11 - i64.shl - i64.clz - local.set $10 - local.get $4 - local.get $10 - i64.sub - local.set $4 - local.get $2 - local.get $10 - i64.shl - local.set $2 - local.get $4 - i64.const 0 - i64.gt_s - if - local.get $2 - i64.const 1 - i64.const 52 - i64.shl - i64.sub - local.set $2 - local.get $2 - local.get $4 - i64.const 52 - i64.shl - i64.or - local.set $2 - else - local.get $2 - i64.const 0 - local.get $4 - i64.sub - i64.const 1 - i64.add - i64.shr_u - local.set $2 - end - local.get $2 - local.get $6 - i64.const 63 - i64.shl - i64.or - local.set $2 - local.get $2 - f64.reinterpret_i64 - ) - (func $std/math/test_mod (; 129 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) - local.get $0 - local.get $1 - call $~lib/math/NativeMath.mod - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - local.get $1 - call $std/math/mod - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.mod (; 130 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 f32) - (local $9 i32) - (local $10 i32) - local.get $0 - i32.reinterpret_f32 - local.set $2 - local.get $1 - i32.reinterpret_f32 - local.set $3 - local.get $2 - i32.const 23 - i32.shr_u - i32.const 255 - i32.and - local.set $4 - local.get $3 - i32.const 23 - i32.shr_u - i32.const 255 - i32.and - local.set $5 - local.get $2 - i32.const -2147483648 - i32.and - local.set $6 - local.get $3 - i32.const 1 - i32.shl - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $4 - i32.const 255 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $1 - call $~lib/number/isNaN - end - if - local.get $0 - local.get $1 - f32.mul - local.set $8 - local.get $8 - local.get $8 - f32.div - return - end - local.get $2 - i32.const 1 - i32.shl - local.set $9 - local.get $9 - local.get $7 - i32.le_u - if - local.get $9 - local.get $7 - i32.eq - if - f32.const 0 - local.get $0 - f32.mul - return - end - local.get $0 - return - end - local.get $4 - i32.eqz - if - local.get $4 - local.get $2 - i32.const 9 - i32.shl - i32.clz - i32.sub - local.set $4 - local.get $2 - i32.const 0 - local.get $4 - i32.sub - i32.const 1 - i32.add - i32.shl - local.set $2 - else - local.get $2 - i32.const -1 - i32.const 9 - i32.shr_u - i32.and - local.set $2 - local.get $2 - i32.const 1 - i32.const 23 - i32.shl - i32.or - local.set $2 - end - local.get $5 - i32.eqz - if - local.get $5 - local.get $3 - i32.const 9 - i32.shl - i32.clz - i32.sub - local.set $5 - local.get $3 - i32.const 0 - local.get $5 - i32.sub - i32.const 1 - i32.add - i32.shl - local.set $3 - else - local.get $3 - i32.const -1 - i32.const 9 - i32.shr_u - i32.and - local.set $3 - local.get $3 - i32.const 1 - i32.const 23 - i32.shl - i32.or - local.set $3 - end - block $break|0 - loop $continue|0 - local.get $4 - local.get $5 - i32.gt_s - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.ge_u - if - local.get $2 - local.get $3 - i32.eq - if - f32.const 0 - local.get $0 - f32.mul - return - end - local.get $2 - local.get $3 - i32.sub - local.set $2 - end - local.get $2 - i32.const 1 - i32.shl - local.set $2 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $continue|0 - end - unreachable - end - local.get $2 - local.get $3 - i32.ge_u - if - local.get $2 - local.get $3 - i32.eq - if - f32.const 0 - local.get $0 - f32.mul - return - end - local.get $2 - local.get $3 - i32.sub - local.set $2 - end - local.get $2 - i32.const 8 - i32.shl - i32.clz - local.set $10 - local.get $4 - local.get $10 - i32.sub - local.set $4 - local.get $2 - local.get $10 - i32.shl - local.set $2 - local.get $4 - i32.const 0 - i32.gt_s - if - local.get $2 - i32.const 1 - i32.const 23 - i32.shl - i32.sub - local.set $2 - local.get $2 - local.get $4 - i32.const 23 - i32.shl - i32.or - local.set $2 - else - local.get $2 - i32.const 0 - local.get $4 - i32.sub - i32.const 1 - i32.add - i32.shr_u - local.set $2 - end - local.get $2 - local.get $6 - i32.or - local.set $2 - local.get $2 - f32.reinterpret_i32 - ) - (func $std/math/test_modf (; 131 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) - local.get $0 - local.get $1 - call $~lib/math/NativeMathf.mod - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - ) - (func $~lib/math/NativeMath.pow (; 132 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - (local $2 i64) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 f64) - (local $16 f64) - (local $17 f64) - (local $18 f64) - (local $19 f64) - (local $20 f64) - (local $21 f64) - (local $22 f64) - (local $23 f64) - (local $24 f64) - (local $25 f64) - (local $26 f64) - (local $27 f64) - (local $28 i32) - (local $29 i32) - (local $30 f64) - (local $31 f64) - (local $32 f64) - (local $33 f64) - (local $34 f64) - (local $35 f64) - (local $36 f64) - (local $37 f64) - (local $38 f64) - (local $39 f64) - (local $40 f64) - (local $41 i32) - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $3 - local.get $2 - i32.wrap_i64 - local.set $4 - local.get $1 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $5 - local.get $2 - i32.wrap_i64 - local.set $6 - local.get $3 - i32.const 2147483647 - i32.and - local.set $7 - local.get $5 - i32.const 2147483647 - i32.and - local.set $8 - local.get $8 - local.get $6 - i32.or - i32.const 0 - i32.eq - if - f64.const 1 - return - end - local.get $7 - i32.const 2146435072 - i32.gt_s - if (result i32) - i32.const 1 - else - local.get $7 - i32.const 2146435072 - i32.eq - if (result i32) - local.get $4 - i32.const 0 - i32.ne - else - i32.const 0 - end - end - if (result i32) - i32.const 1 - else - local.get $8 - i32.const 2146435072 - i32.gt_s - end - if (result i32) - i32.const 1 - else - local.get $8 - i32.const 2146435072 - i32.eq - if (result i32) - local.get $6 - i32.const 0 - i32.ne - else - i32.const 0 - end - end - if - local.get $0 - local.get $1 - f64.add - return - end - i32.const 0 - local.set $9 - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $8 - i32.const 1128267776 - i32.ge_s - if - i32.const 2 - local.set $9 - else - local.get $8 - i32.const 1072693248 - i32.ge_s - if - local.get $8 - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - local.set $10 - local.get $10 - i32.const 20 - i32.gt_s - local.set $11 - i32.const 52 - i32.const 20 - local.get $11 - select - local.get $10 - i32.sub - local.set $12 - local.get $6 - local.get $8 - local.get $11 - select - local.set $13 - local.get $13 - local.get $12 - i32.shr_s - local.set $14 - local.get $14 - local.get $12 - i32.shl - local.get $13 - i32.eq - if - i32.const 2 - local.get $14 - i32.const 1 - i32.and - i32.sub - local.set $9 - end - end - end - end - local.get $6 - i32.const 0 - i32.eq - if - local.get $8 - i32.const 2146435072 - i32.eq - if - local.get $7 - i32.const 1072693248 - i32.sub - local.get $4 - i32.or - i32.const 0 - i32.eq - if - f64.const nan:0x8000000000000 - return - else - local.get $7 - i32.const 1072693248 - i32.ge_s - if - local.get $5 - i32.const 0 - i32.ge_s - if (result f64) - local.get $1 - else - f64.const 0 - end - return - else - local.get $5 - i32.const 0 - i32.ge_s - if (result f64) - f64.const 0 - else - local.get $1 - f64.neg - end - return - end - unreachable - end - unreachable - end - local.get $8 - i32.const 1072693248 - i32.eq - if - local.get $5 - i32.const 0 - i32.ge_s - if - local.get $0 - return - end - f64.const 1 - local.get $0 - f64.div - return - end - local.get $5 - i32.const 1073741824 - i32.eq - if - local.get $0 - local.get $0 - f64.mul - return - end - local.get $5 - i32.const 1071644672 - i32.eq - if - local.get $3 - i32.const 0 - i32.ge_s - if - local.get $0 - f64.sqrt - return - end - end - end - local.get $0 - f64.abs - local.set $15 - local.get $4 - i32.const 0 - i32.eq - if - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $7 - i32.const 2146435072 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $7 - i32.const 1072693248 - i32.eq - end - if - local.get $15 - local.set $16 - local.get $5 - i32.const 0 - i32.lt_s - if - f64.const 1 - local.get $16 - f64.div - local.set $16 - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $7 - i32.const 1072693248 - i32.sub - local.get $9 - i32.or - i32.const 0 - i32.eq - if - local.get $16 - local.get $16 - f64.sub - local.set $17 - local.get $17 - local.get $17 - f64.div - local.set $16 - else - local.get $9 - i32.const 1 - i32.eq - if - local.get $16 - f64.neg - local.set $16 - end - end - end - local.get $16 - return - end - end - f64.const 1 - local.set $18 - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $9 - i32.const 0 - i32.eq - if - local.get $0 - local.get $0 - f64.sub - local.set $17 - local.get $17 - local.get $17 - f64.div - return - end - local.get $9 - i32.const 1 - i32.eq - if - f64.const -1 - local.set $18 - end - end - local.get $8 - i32.const 1105199104 - i32.gt_s - if - local.get $8 - i32.const 1139802112 - i32.gt_s - if - local.get $7 - i32.const 1072693247 - i32.le_s - if - local.get $5 - i32.const 0 - i32.lt_s - if (result f64) - f64.const 1.e+300 - f64.const 1.e+300 - f64.mul - else - f64.const 1e-300 - f64.const 1e-300 - f64.mul - end - return - end - local.get $7 - i32.const 1072693248 - i32.ge_s - if - local.get $5 - i32.const 0 - i32.gt_s - if (result f64) - f64.const 1.e+300 - f64.const 1.e+300 - f64.mul - else - f64.const 1e-300 - f64.const 1e-300 - f64.mul - end - return - end - end - local.get $7 - i32.const 1072693247 - i32.lt_s - if - local.get $5 - i32.const 0 - i32.lt_s - if (result f64) - local.get $18 - f64.const 1.e+300 - f64.mul - f64.const 1.e+300 - f64.mul - else - local.get $18 - f64.const 1e-300 - f64.mul - f64.const 1e-300 - f64.mul - end - return - end - local.get $7 - i32.const 1072693248 - i32.gt_s - if - local.get $5 - i32.const 0 - i32.gt_s - if (result f64) - local.get $18 - f64.const 1.e+300 - f64.mul - f64.const 1.e+300 - f64.mul - else - local.get $18 - f64.const 1e-300 - f64.mul - f64.const 1e-300 - f64.mul - end - return - end - local.get $15 - f64.const 1 - f64.sub - local.set $24 - local.get $24 - local.get $24 - f64.mul - f64.const 0.5 - local.get $24 - f64.const 0.3333333333333333 - local.get $24 - f64.const 0.25 - f64.mul - f64.sub - f64.mul - f64.sub - f64.mul - local.set $27 - f64.const 1.4426950216293335 - local.get $24 - f64.mul - local.set $25 - local.get $24 - f64.const 1.9259629911266175e-08 - f64.mul - local.get $27 - f64.const 1.4426950408889634 - f64.mul - f64.sub - local.set $26 - local.get $25 - local.get $26 - f64.add - local.set $19 - local.get $19 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $19 - local.get $26 - local.get $19 - local.get $25 - f64.sub - f64.sub - local.set $20 - else - i32.const 0 - local.set $29 - local.get $7 - i32.const 1048576 - i32.lt_s - if - local.get $15 - f64.const 9007199254740992 - f64.mul - local.set $15 - local.get $29 - i32.const 53 - i32.sub - local.set $29 - local.get $15 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $7 - end - local.get $29 - local.get $7 - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - i32.add - local.set $29 - local.get $7 - i32.const 1048575 - i32.and - local.set $28 - local.get $28 - i32.const 1072693248 - i32.or - local.set $7 - local.get $28 - i32.const 235662 - i32.le_s - if - i32.const 0 - local.set $10 - else - local.get $28 - i32.const 767610 - i32.lt_s - if - i32.const 1 - local.set $10 - else - i32.const 0 - local.set $10 - local.get $29 - i32.const 1 - i32.add - local.set $29 - local.get $7 - i32.const 1048576 - i32.sub - local.set $7 - end - end - local.get $15 - i64.reinterpret_f64 - i64.const 4294967295 - i64.and - local.get $7 - i64.extend_i32_s - i64.const 32 - i64.shl - i64.or - f64.reinterpret_i64 - local.set $15 - f64.const 1.5 - f64.const 1 - local.get $10 - select - local.set $35 - local.get $15 - local.get $35 - f64.sub - local.set $25 - f64.const 1 - local.get $15 - local.get $35 - f64.add - f64.div - local.set $26 - local.get $25 - local.get $26 - f64.mul - local.set $17 - local.get $17 - local.set $31 - local.get $31 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $31 - local.get $7 - i32.const 1 - i32.shr_s - i32.const 536870912 - i32.or - i32.const 524288 - i32.add - local.get $10 - i32.const 18 - i32.shl - i32.add - i64.extend_i32_s - i64.const 32 - i64.shl - f64.reinterpret_i64 - local.set $33 - local.get $15 - local.get $33 - local.get $35 - f64.sub - f64.sub - local.set $34 - local.get $26 - local.get $25 - local.get $31 - local.get $33 - f64.mul - f64.sub - local.get $31 - local.get $34 - f64.mul - f64.sub - f64.mul - local.set $32 - local.get $17 - local.get $17 - f64.mul - local.set $30 - local.get $30 - local.get $30 - f64.mul - f64.const 0.5999999999999946 - local.get $30 - f64.const 0.4285714285785502 - local.get $30 - f64.const 0.33333332981837743 - local.get $30 - f64.const 0.272728123808534 - local.get $30 - f64.const 0.23066074577556175 - local.get $30 - f64.const 0.20697501780033842 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $23 - local.get $23 - local.get $32 - local.get $31 - local.get $17 - f64.add - f64.mul - f64.add - local.set $23 - local.get $31 - local.get $31 - f64.mul - local.set $30 - f64.const 3 - local.get $30 - f64.add - local.get $23 - f64.add - local.set $33 - local.get $33 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $33 - local.get $23 - local.get $33 - f64.const 3 - f64.sub - local.get $30 - f64.sub - f64.sub - local.set $34 - local.get $31 - local.get $33 - f64.mul - local.set $25 - local.get $32 - local.get $33 - f64.mul - local.get $34 - local.get $17 - f64.mul - f64.add - local.set $26 - local.get $25 - local.get $26 - f64.add - local.set $21 - local.get $21 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $21 - local.get $26 - local.get $21 - local.get $25 - f64.sub - f64.sub - local.set $22 - f64.const 0.9617967009544373 - local.get $21 - f64.mul - local.set $36 - f64.const 1.350039202129749e-08 - f64.const 0 - local.get $10 - select - local.set $37 - f64.const -7.028461650952758e-09 - local.get $21 - f64.mul - local.get $22 - f64.const 0.9617966939259756 - f64.mul - f64.add - local.get $37 - f64.add - local.set $38 - local.get $29 - f64.convert_i32_s - local.set $24 - f64.const 0.5849624872207642 - f64.const 0 - local.get $10 - select - local.set $39 - local.get $36 - local.get $38 - f64.add - local.get $39 - f64.add - local.get $24 - f64.add - local.set $19 - local.get $19 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $19 - local.get $38 - local.get $19 - local.get $24 - f64.sub - local.get $39 - f64.sub - local.get $36 - f64.sub - f64.sub - local.set $20 - end - local.get $1 - local.set $40 - local.get $40 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $40 - local.get $1 - local.get $40 - f64.sub - local.get $19 - f64.mul - local.get $1 - local.get $20 - f64.mul - f64.add - local.set $22 - local.get $40 - local.get $19 - f64.mul - local.set $21 - local.get $22 - local.get $21 - f64.add - local.set $16 - local.get $16 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $28 - local.get $2 - i32.wrap_i64 - local.set $41 - local.get $28 - i32.const 1083179008 - i32.ge_s - if - local.get $28 - i32.const 1083179008 - i32.sub - local.get $41 - i32.or - i32.const 0 - i32.ne - if - local.get $18 - f64.const 1.e+300 - f64.mul - f64.const 1.e+300 - f64.mul - return - end - local.get $22 - f64.const 8.008566259537294e-17 - f64.add - local.get $16 - local.get $21 - f64.sub - f64.gt - if - local.get $18 - f64.const 1.e+300 - f64.mul - f64.const 1.e+300 - f64.mul - return - end - else - local.get $28 - i32.const 2147483647 - i32.and - i32.const 1083231232 - i32.ge_s - if - local.get $28 - i32.const -1064252416 - i32.sub - local.get $41 - i32.or - i32.const 0 - i32.ne - if - local.get $18 - f64.const 1e-300 - f64.mul - f64.const 1e-300 - f64.mul - return - end - local.get $22 - local.get $16 - local.get $21 - f64.sub - f64.le - if - local.get $18 - f64.const 1e-300 - f64.mul - f64.const 1e-300 - f64.mul - return - end - end - end - local.get $28 - i32.const 2147483647 - i32.and - local.set $41 - local.get $41 - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - local.set $10 - i32.const 0 - local.set $29 - local.get $41 - i32.const 1071644672 - i32.gt_s - if - local.get $28 - i32.const 1048576 - local.get $10 - i32.const 1 - i32.add - i32.shr_s - i32.add - local.set $29 - local.get $29 - i32.const 2147483647 - i32.and - i32.const 20 - i32.shr_s - i32.const 1023 - i32.sub - local.set $10 - f64.const 0 - local.set $24 - local.get $29 - i32.const 1048575 - local.get $10 - i32.shr_s - i32.const -1 - i32.xor - i32.and - i64.extend_i32_s - i64.const 32 - i64.shl - f64.reinterpret_i64 - local.set $24 - local.get $29 - i32.const 1048575 - i32.and - i32.const 1048576 - i32.or - i32.const 20 - local.get $10 - i32.sub - i32.shr_s - local.set $29 - local.get $28 - i32.const 0 - i32.lt_s - if - i32.const 0 - local.get $29 - i32.sub - local.set $29 - end - local.get $21 - local.get $24 - f64.sub - local.set $21 - end - local.get $22 - local.get $21 - f64.add - local.set $24 - local.get $24 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $24 - local.get $24 - f64.const 0.6931471824645996 - f64.mul - local.set $25 - local.get $22 - local.get $24 - local.get $21 - f64.sub - f64.sub - f64.const 0.6931471805599453 - f64.mul - local.get $24 - f64.const -1.904654299957768e-09 - f64.mul - f64.add - local.set $26 - local.get $25 - local.get $26 - f64.add - local.set $16 - local.get $26 - local.get $16 - local.get $25 - f64.sub - f64.sub - local.set $27 - local.get $16 - local.get $16 - f64.mul - local.set $24 - local.get $16 - local.get $24 - f64.const 0.16666666666666602 - local.get $24 - f64.const -2.7777777777015593e-03 - local.get $24 - f64.const 6.613756321437934e-05 - local.get $24 - f64.const -1.6533902205465252e-06 - local.get $24 - f64.const 4.1381367970572385e-08 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.sub - local.set $19 - local.get $16 - local.get $19 - f64.mul - local.get $19 - f64.const 2 - f64.sub - f64.div - local.get $27 - local.get $16 - local.get $27 - f64.mul - f64.add - f64.sub - local.set $23 - f64.const 1 - local.get $23 - local.get $16 - f64.sub - f64.sub - local.set $16 - local.get $16 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $28 - local.get $28 - local.get $29 - i32.const 20 - i32.shl - i32.add - local.set $28 - local.get $28 - i32.const 20 - i32.shr_s - i32.const 0 - i32.le_s - if - local.get $16 - local.get $29 - call $~lib/math/NativeMath.scalbn - local.set $16 - else - local.get $16 - i64.reinterpret_f64 - i64.const 4294967295 - i64.and - local.get $28 - i64.extend_i32_s - i64.const 32 - i64.shl - i64.or - f64.reinterpret_i64 - local.set $16 - end - local.get $18 - local.get $16 - f64.mul - ) - (func $std/math/test_pow (; 133 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) - local.get $0 - local.get $1 - call $~lib/math/NativeMath.pow - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - local.get $1 - call $~lib/bindings/Math/pow - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.pow (; 134 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 f32) - (local $11 f32) - (local $12 f32) - (local $13 f32) - (local $14 f32) - (local $15 f32) - (local $16 f32) - (local $17 f32) - (local $18 f32) - (local $19 f32) - (local $20 f32) - (local $21 f32) - (local $22 f32) - (local $23 f32) - (local $24 i32) - (local $25 i32) - (local $26 f32) - (local $27 f32) - (local $28 f32) - (local $29 f32) - (local $30 f32) - (local $31 f32) - (local $32 f32) - (local $33 f32) - (local $34 f32) - (local $35 f32) - (local $36 i32) - local.get $0 - i32.reinterpret_f32 - local.set $2 - local.get $1 - i32.reinterpret_f32 - local.set $3 - local.get $2 - i32.const 2147483647 - i32.and - local.set $4 - local.get $3 - i32.const 2147483647 - i32.and - local.set $5 - local.get $5 - i32.const 0 - i32.eq - if - f32.const 1 - return - end - local.get $4 - i32.const 2139095040 - i32.gt_s - if (result i32) - i32.const 1 - else - local.get $5 - i32.const 2139095040 - i32.gt_s - end - if - local.get $0 - local.get $1 - f32.add - return - end - i32.const 0 - local.set $6 - local.get $2 - i32.const 0 - i32.lt_s - if - local.get $5 - i32.const 1266679808 - i32.ge_s - if - i32.const 2 - local.set $6 - else - local.get $5 - i32.const 1065353216 - i32.ge_s - if - local.get $5 - i32.const 23 - i32.shr_s - i32.const 127 - i32.sub - local.set $8 - i32.const 23 - local.get $8 - i32.sub - local.set $9 - local.get $5 - local.get $9 - i32.shr_s - local.set $7 - local.get $7 - local.get $9 - i32.shl - local.get $5 - i32.eq - if - i32.const 2 - local.get $7 - i32.const 1 - i32.and - i32.sub - local.set $6 - end - end - end - end - local.get $5 - i32.const 2139095040 - i32.eq - if - local.get $4 - i32.const 1065353216 - i32.eq - if - f32.const nan:0x400000 - return - else - local.get $4 - i32.const 1065353216 - i32.gt_s - if - local.get $3 - i32.const 0 - i32.ge_s - if (result f32) - local.get $1 - else - f32.const 0 - end - return - else - local.get $3 - i32.const 0 - i32.ge_s - if (result f32) - f32.const 0 - else - local.get $1 - f32.neg - end - return - end - unreachable - end - unreachable - end - local.get $5 - i32.const 1065353216 - i32.eq - if - local.get $3 - i32.const 0 - i32.ge_s - if (result f32) - local.get $0 - else - f32.const 1 - local.get $0 - f32.div - end - return - end - local.get $3 - i32.const 1073741824 - i32.eq - if - local.get $0 - local.get $0 - f32.mul - return - end - local.get $3 - i32.const 1056964608 - i32.eq - if - local.get $2 - i32.const 0 - i32.ge_s - if - local.get $0 - f32.sqrt - return - end - end - local.get $0 - f32.abs - local.set $10 - local.get $4 - i32.const 2139095040 - i32.eq - if (result i32) - i32.const 1 - else - local.get $4 - i32.const 0 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $4 - i32.const 1065353216 - i32.eq - end - if - local.get $10 - local.set $11 - local.get $3 - i32.const 0 - i32.lt_s - if - f32.const 1 - local.get $11 - f32.div - local.set $11 - end - local.get $2 - i32.const 0 - i32.lt_s - if - local.get $4 - i32.const 1065353216 - i32.sub - local.get $6 - i32.or - i32.const 0 - i32.eq - if - local.get $11 - local.get $11 - f32.sub - local.set $12 - local.get $12 - local.get $12 - f32.div - local.set $11 - else - local.get $6 - i32.const 1 - i32.eq - if - local.get $11 - f32.neg - local.set $11 - end - end - end - local.get $11 - return - end - f32.const 1 - local.set $13 - local.get $2 - i32.const 0 - i32.lt_s - if - local.get $6 - i32.const 0 - i32.eq - if - local.get $0 - local.get $0 - f32.sub - local.set $12 - local.get $12 - local.get $12 - f32.div - return - end - local.get $6 - i32.const 1 - i32.eq - if - f32.const -1 - local.set $13 - end - end - local.get $5 - i32.const 1291845632 - i32.gt_s - if - local.get $4 - i32.const 1065353208 - i32.lt_s - if - local.get $3 - i32.const 0 - i32.lt_s - if (result f32) - local.get $13 - f32.const 1000000015047466219876688e6 - f32.mul - f32.const 1000000015047466219876688e6 - f32.mul - else - local.get $13 - f32.const 1.0000000031710769e-30 - f32.mul - f32.const 1.0000000031710769e-30 - f32.mul - end - return - end - local.get $4 - i32.const 1065353223 - i32.gt_s - if - local.get $3 - i32.const 0 - i32.gt_s - if (result f32) - local.get $13 - f32.const 1000000015047466219876688e6 - f32.mul - f32.const 1000000015047466219876688e6 - f32.mul - else - local.get $13 - f32.const 1.0000000031710769e-30 - f32.mul - f32.const 1.0000000031710769e-30 - f32.mul - end - return - end - local.get $10 - f32.const 1 - f32.sub - local.set $18 - local.get $18 - local.get $18 - f32.mul - f32.const 0.5 - local.get $18 - f32.const 0.3333333432674408 - local.get $18 - f32.const 0.25 - f32.mul - f32.sub - f32.mul - f32.sub - f32.mul - local.set $21 - f32.const 1.44268798828125 - local.get $18 - f32.mul - local.set $19 - local.get $18 - f32.const 7.052607543300837e-06 - f32.mul - local.get $21 - f32.const 1.4426950216293335 - f32.mul - f32.sub - local.set $20 - local.get $19 - local.get $20 - f32.add - local.set $14 - local.get $14 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $14 - local.get $20 - local.get $14 - local.get $19 - f32.sub - f32.sub - local.set $15 - else - i32.const 0 - local.set $24 - local.get $4 - i32.const 8388608 - i32.lt_s - if - local.get $10 - f32.const 16777216 - f32.mul - local.set $10 - local.get $24 - i32.const 24 - i32.sub - local.set $24 - local.get $10 - i32.reinterpret_f32 - local.set $4 - end - local.get $24 - local.get $4 - i32.const 23 - i32.shr_s - i32.const 127 - i32.sub - i32.add - local.set $24 - local.get $4 - i32.const 8388607 - i32.and - local.set $7 - local.get $7 - i32.const 1065353216 - i32.or - local.set $4 - local.get $7 - i32.const 1885297 - i32.le_s - if - i32.const 0 - local.set $8 - else - local.get $7 - i32.const 6140887 - i32.lt_s - if - i32.const 1 - local.set $8 - else - i32.const 0 - local.set $8 - local.get $24 - i32.const 1 - i32.add - local.set $24 - local.get $4 - i32.const 8388608 - i32.sub - local.set $4 - end - end - local.get $4 - f32.reinterpret_i32 - local.set $10 - f32.const 1.5 - f32.const 1 - local.get $8 - select - local.set $30 - local.get $10 - local.get $30 - f32.sub - local.set $19 - f32.const 1 - local.get $10 - local.get $30 - f32.add - f32.div - local.set $20 - local.get $19 - local.get $20 - f32.mul - local.set $17 - local.get $17 - local.set $26 - local.get $26 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $26 - local.get $4 - i32.const 1 - i32.shr_s - i32.const -4096 - i32.and - i32.const 536870912 - i32.or - local.set $25 - local.get $25 - i32.const 4194304 - i32.add - local.get $8 - i32.const 21 - i32.shl - i32.add - f32.reinterpret_i32 - local.set $28 - local.get $10 - local.get $28 - local.get $30 - f32.sub - f32.sub - local.set $29 - local.get $20 - local.get $19 - local.get $26 - local.get $28 - f32.mul - f32.sub - local.get $26 - local.get $29 - f32.mul - f32.sub - f32.mul - local.set $27 - local.get $17 - local.get $17 - f32.mul - local.set $12 - local.get $12 - local.get $12 - f32.mul - f32.const 0.6000000238418579 - local.get $12 - f32.const 0.4285714328289032 - local.get $12 - f32.const 0.3333333432674408 - local.get $12 - f32.const 0.2727281153202057 - local.get $12 - f32.const 0.23066075146198273 - local.get $12 - f32.const 0.20697501301765442 - f32.mul - f32.add - f32.mul - f32.add - f32.mul - f32.add - f32.mul - f32.add - f32.mul - f32.add - f32.mul - local.set $16 - local.get $16 - local.get $27 - local.get $26 - local.get $17 - f32.add - f32.mul - f32.add - local.set $16 - local.get $26 - local.get $26 - f32.mul - local.set $12 - f32.const 3 - local.get $12 - f32.add - local.get $16 - f32.add - local.set $28 - local.get $28 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $28 - local.get $16 - local.get $28 - f32.const 3 - f32.sub - local.get $12 - f32.sub - f32.sub - local.set $29 - local.get $26 - local.get $28 - f32.mul - local.set $19 - local.get $27 - local.get $28 - f32.mul - local.get $29 - local.get $17 - f32.mul - f32.add - local.set $20 - local.get $19 - local.get $20 - f32.add - local.set $22 - local.get $22 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $22 - local.get $20 - local.get $22 - local.get $19 - f32.sub - f32.sub - local.set $23 - f32.const 0.9619140625 - local.get $22 - f32.mul - local.set $31 - f32.const 1.5632208487659227e-06 - f32.const 0 - local.get $8 - select - local.set $32 - f32.const -1.1736857413779944e-04 - local.get $22 - f32.mul - local.get $23 - f32.const 0.9617967009544373 - f32.mul - f32.add - local.get $32 - f32.add - local.set $33 - local.get $24 - f32.convert_i32_s - local.set $18 - f32.const 0.5849609375 - f32.const 0 - local.get $8 - select - local.set $34 - local.get $31 - local.get $33 - f32.add - local.get $34 - f32.add - local.get $18 - f32.add - local.set $14 - local.get $14 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $14 - local.get $33 - local.get $14 - local.get $18 - f32.sub - local.get $34 - f32.sub - local.get $31 - f32.sub - f32.sub - local.set $15 - end - local.get $1 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -4096 - i32.and - f32.reinterpret_i32 - local.set $35 - local.get $1 - local.get $35 - f32.sub - local.get $14 - f32.mul - local.get $1 - local.get $15 - f32.mul - f32.add - local.set $23 - local.get $35 - local.get $14 - f32.mul - local.set $22 - local.get $23 - local.get $22 - f32.add - local.set $11 - local.get $11 - i32.reinterpret_f32 - local.set $7 - local.get $7 - i32.const 1124073472 - i32.gt_s - if - local.get $13 - f32.const 1000000015047466219876688e6 - f32.mul - f32.const 1000000015047466219876688e6 - f32.mul - return - else - local.get $7 - i32.const 1124073472 - i32.eq - if - local.get $23 - f32.const 4.299566569443414e-08 - f32.add - local.get $11 - local.get $22 - f32.sub - f32.gt - if - local.get $13 - f32.const 1000000015047466219876688e6 - f32.mul - f32.const 1000000015047466219876688e6 - f32.mul - return - end - else - local.get $7 - i32.const 2147483647 - i32.and - i32.const 1125515264 - i32.gt_s - if - local.get $13 - f32.const 1.0000000031710769e-30 - f32.mul - f32.const 1.0000000031710769e-30 - f32.mul - return - else - local.get $7 - i32.const -1021968384 - i32.eq - if - local.get $23 - local.get $11 - local.get $22 - f32.sub - f32.le - if - local.get $13 - f32.const 1.0000000031710769e-30 - f32.mul - f32.const 1.0000000031710769e-30 - f32.mul - return - end - end - end - end - end - local.get $7 - i32.const 2147483647 - i32.and - local.set $36 - local.get $36 - i32.const 23 - i32.shr_s - i32.const 127 - i32.sub - local.set $8 - i32.const 0 - local.set $24 - local.get $36 - i32.const 1056964608 - i32.gt_s - if - local.get $7 - i32.const 8388608 - local.get $8 - i32.const 1 - i32.add - i32.shr_s - i32.add - local.set $24 - local.get $24 - i32.const 2147483647 - i32.and - i32.const 23 - i32.shr_s - i32.const 127 - i32.sub - local.set $8 - local.get $24 - i32.const 8388607 - local.get $8 - i32.shr_s - i32.const -1 - i32.xor - i32.and - f32.reinterpret_i32 - local.set $18 - local.get $24 - i32.const 8388607 - i32.and - i32.const 8388608 - i32.or - i32.const 23 - local.get $8 - i32.sub - i32.shr_s - local.set $24 - local.get $7 - i32.const 0 - i32.lt_s - if - i32.const 0 - local.get $24 - i32.sub - local.set $24 - end - local.get $22 - local.get $18 - f32.sub - local.set $22 - end - local.get $23 - local.get $22 - f32.add - local.set $18 - local.get $18 - i32.reinterpret_f32 - local.set $25 - local.get $25 - i32.const -32768 - i32.and - f32.reinterpret_i32 - local.set $18 - local.get $18 - f32.const 0.693145751953125 - f32.mul - local.set $19 - local.get $23 - local.get $18 - local.get $22 - f32.sub - f32.sub - f32.const 0.6931471824645996 - f32.mul - local.get $18 - f32.const 1.4286065379565116e-06 - f32.mul - f32.add - local.set $20 - local.get $19 - local.get $20 - f32.add - local.set $11 - local.get $20 - local.get $11 - local.get $19 - f32.sub - f32.sub - local.set $21 - local.get $11 - local.get $11 - f32.mul - local.set $18 - local.get $11 - local.get $18 - f32.const 0.1666666716337204 - local.get $18 - f32.const -2.7777778450399637e-03 - local.get $18 - f32.const 6.61375597701408e-05 - local.get $18 - f32.const -1.6533901998627698e-06 - local.get $18 - f32.const 4.138136944220605e-08 - f32.mul - f32.add - f32.mul - f32.add - f32.mul - f32.add - f32.mul - f32.add - f32.mul - f32.sub - local.set $14 - local.get $11 - local.get $14 - f32.mul - local.get $14 - f32.const 2 - f32.sub - f32.div - local.get $21 - local.get $11 - local.get $21 - f32.mul - f32.add - f32.sub - local.set $16 - f32.const 1 - local.get $16 - local.get $11 - f32.sub - f32.sub - local.set $11 - local.get $11 - i32.reinterpret_f32 - local.set $7 - local.get $7 - local.get $24 - i32.const 23 - i32.shl - i32.add - local.set $7 - local.get $7 - i32.const 23 - i32.shr_s - i32.const 0 - i32.le_s - if - local.get $11 - local.get $24 - call $~lib/math/NativeMathf.scalbn - local.set $11 - else - local.get $7 - f32.reinterpret_i32 - local.set $11 - end - local.get $13 - local.get $11 - f32.mul - ) - (func $std/math/test_powf (; 135 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) - local.get $0 - local.get $1 - call $~lib/math/NativeMathf.pow - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - ) - (func $~lib/math/murmurHash3 (; 136 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) - local.get $0 - local.get $0 - i64.const 33 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - i64.const -49064778989728563 - i64.mul - local.set $0 - local.get $0 - local.get $0 - i64.const 33 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - i64.const -4265267296055464877 - i64.mul - local.set $0 - local.get $0 - local.get $0 - i64.const 33 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - ) - (func $~lib/math/splitMix32 (; 137 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 1831565813 - i32.add - local.set $0 - local.get $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - local.get $0 - i32.const 1 - i32.or - i32.mul - local.set $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - i32.const 7 - i32.shr_u - i32.xor - local.get $0 - i32.const 61 - i32.or - i32.mul - i32.add - i32.xor - local.set $0 - local.get $0 - local.get $0 - i32.const 14 - i32.shr_u - i32.xor - ) - (func $~lib/math/NativeMath.seedRandom (; 138 ;) (type $FUNCSIG$vj) (param $0 i64) - i32.const 1 - global.set $~lib/math/random_seeded - local.get $0 - call $~lib/math/murmurHash3 - global.set $~lib/math/random_state0_64 - global.get $~lib/math/random_state0_64 - i64.const -1 - i64.xor - call $~lib/math/murmurHash3 - global.set $~lib/math/random_state1_64 - local.get $0 - i32.wrap_i64 - call $~lib/math/splitMix32 - global.set $~lib/math/random_state0_32 - global.get $~lib/math/random_state0_32 - call $~lib/math/splitMix32 - global.set $~lib/math/random_state1_32 - global.get $~lib/math/random_state0_64 - i64.const 0 - i64.ne - if (result i32) - global.get $~lib/math/random_state1_64 - i64.const 0 - i64.ne - else - i32.const 0 - end - if (result i32) - global.get $~lib/math/random_state0_32 - i32.const 0 - i32.ne - else - i32.const 0 - end - if (result i32) - global.get $~lib/math/random_state1_32 - i32.const 0 - i32.ne - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 384 - i32.const 1369 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - ) - (func $~lib/math/NativeMath.random (; 139 ;) (type $FUNCSIG$d) (result f64) - (local $0 i64) - (local $1 i64) - (local $2 i64) - global.get $~lib/math/random_seeded - i32.eqz - if - i32.const 424 - i32.const 384 - i32.const 1376 - i32.const 24 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/math/random_state0_64 - local.set $0 - global.get $~lib/math/random_state1_64 - local.set $1 - local.get $1 - global.set $~lib/math/random_state0_64 - local.get $0 - local.get $0 - i64.const 23 - i64.shl - i64.xor - local.set $0 - local.get $0 - local.get $0 - i64.const 17 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - local.get $1 - i64.xor - local.set $0 - local.get $0 - local.get $1 - i64.const 26 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - global.set $~lib/math/random_state1_64 - local.get $1 - i64.const 12 - i64.shr_u - i64.const 4607182418800017408 - i64.or - local.set $2 - local.get $2 - f64.reinterpret_i64 - f64.const 1 - f64.sub - ) - (func $~lib/math/NativeMathf.random (; 140 ;) (type $FUNCSIG$f) (result f32) - (local $0 i32) - (local $1 i32) - (local $2 i32) - global.get $~lib/math/random_seeded - i32.eqz - if - i32.const 424 - i32.const 384 - i32.const 2724 - i32.const 24 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/math/random_state0_32 - local.set $0 - global.get $~lib/math/random_state1_32 - local.set $1 - local.get $0 - i32.const -1640531525 - i32.mul - i32.const 5 - i32.rotl - i32.const 5 - i32.mul - local.set $2 - local.get $1 - local.get $0 - i32.xor - local.set $1 - local.get $0 - i32.const 26 - i32.rotl - local.get $1 - i32.xor - local.get $1 - i32.const 9 - i32.shl - i32.xor - global.set $~lib/math/random_state0_32 - local.get $1 - i32.const 13 - i32.rotl - global.set $~lib/math/random_state1_32 - local.get $2 - i32.const 9 - i32.shr_u - i32.const 127 - i32.const 23 - i32.shl - i32.or - f32.reinterpret_i32 - f32.const 1 - f32.sub - ) - (func $std/math/test_round (; 141 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - (local $4 f64) - local.get $0 - local.set $4 - local.get $4 - f64.const 0.5 - f64.add - f64.floor - local.get $4 - f64.copysign - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $std/math/test_roundf (; 142 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - (local $4 f32) - local.get $0 - local.set $4 - local.get $4 - f32.const 0.5 - f32.add - f32.floor - local.get $4 - f32.copysign - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $std/math/test_sign (; 143 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - (local $4 f64) - block $~lib/math/NativeMath.sign|inlined.0 (result f64) - local.get $0 - local.set $4 - local.get $4 - f64.const 0 - f64.gt - if (result f64) - f64.const 1 - else - local.get $4 - f64.const 0 - f64.lt - if (result f64) - f64.const -1 - else - local.get $4 - end - end - br $~lib/math/NativeMath.sign|inlined.0 - end - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/sign - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $std/math/test_signf (; 144 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - (local $4 f32) - block $~lib/math/NativeMathf.sign|inlined.0 (result f32) - local.get $0 - local.set $4 - local.get $4 - f32.const 0 - f32.gt - if (result f32) - f32.const 1 - else - local.get $4 - f32.const 0 - f32.lt - if (result f32) - f32.const -1 - else - local.get $4 - end - end - br $~lib/math/NativeMathf.sign|inlined.0 - end - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.rem (; 145 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - (local $2 i64) - (local $3 i64) - (local $4 i64) - (local $5 i64) - (local $6 i32) - (local $7 f64) - (local $8 i64) - (local $9 i32) - (local $10 i64) - (local $11 f64) - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $1 - i64.reinterpret_f64 - local.set $3 - local.get $2 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $4 - local.get $3 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $5 - local.get $2 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.set $6 - local.get $3 - i64.const 1 - i64.shl - i64.const 0 - i64.eq - if (result i32) - i32.const 1 - else - local.get $4 - i64.const 2047 - i64.eq - end - if (result i32) - i32.const 1 - else - local.get $1 - call $~lib/number/isNaN - end - if - local.get $0 - local.get $1 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.div - return - end - local.get $2 - i64.const 1 - i64.shl - i64.const 0 - i64.eq - if - local.get $0 - return - end - local.get $2 - local.set $8 - local.get $4 - i64.eqz - if - local.get $4 - local.get $8 - i64.const 12 - i64.shl - i64.clz - i64.sub - local.set $4 - local.get $8 - i64.const 0 - local.get $4 - i64.sub - i64.const 1 - i64.add - i64.shl - local.set $8 - else - local.get $8 - i64.const -1 - i64.const 12 - i64.shr_u - i64.and - local.set $8 - local.get $8 - i64.const 1 - i64.const 52 - i64.shl - i64.or - local.set $8 - end - local.get $5 - i64.eqz - if - local.get $5 - local.get $3 - i64.const 12 - i64.shl - i64.clz - i64.sub - local.set $5 - local.get $3 - i64.const 0 - local.get $5 - i64.sub - i64.const 1 - i64.add - i64.shl - local.set $3 - else - local.get $3 - i64.const -1 - i64.const 12 - i64.shr_u - i64.and - local.set $3 - local.get $3 - i64.const 1 - i64.const 52 - i64.shl - i64.or - local.set $3 - end - i32.const 0 - local.set $9 - block $break|0 - local.get $4 - local.get $5 - i64.lt_s - if - local.get $4 - i64.const 1 - i64.add - local.get $5 - i64.eq - if - br $break|0 - end - local.get $0 - return - end - block $break|1 - loop $continue|1 - local.get $4 - local.get $5 - i64.gt_s - i32.eqz - br_if $break|1 - local.get $8 - local.get $3 - i64.ge_u - if - local.get $8 - local.get $3 - i64.sub - local.set $8 - local.get $9 - i32.const 1 - i32.add - local.set $9 - end - local.get $8 - i64.const 1 - i64.shl - local.set $8 - local.get $9 - i32.const 1 - i32.shl - local.set $9 - local.get $4 - i64.const 1 - i64.sub - local.set $4 - br $continue|1 - end - unreachable - end - local.get $8 - local.get $3 - i64.ge_u - if - local.get $8 - local.get $3 - i64.sub - local.set $8 - local.get $9 - i32.const 1 - i32.add - local.set $9 - end - local.get $8 - i64.const 0 - i64.eq - if - i64.const -60 - local.set $4 - else - local.get $8 - i64.const 11 - i64.shl - i64.clz - local.set $10 - local.get $4 - local.get $10 - i64.sub - local.set $4 - local.get $8 - local.get $10 - i64.shl - local.set $8 - end - br $break|0 - end - local.get $4 - i64.const 0 - i64.gt_s - if - local.get $8 - i64.const 1 - i64.const 52 - i64.shl - i64.sub - local.set $8 - local.get $8 - local.get $4 - i64.const 52 - i64.shl - i64.or - local.set $8 - else - local.get $8 - i64.const 0 - local.get $4 - i64.sub - i64.const 1 - i64.add - i64.shr_u - local.set $8 - end - local.get $8 - f64.reinterpret_i64 - local.set $0 - local.get $1 - f64.abs - local.set $1 - local.get $0 - local.get $0 - f64.add - local.set $11 - local.get $4 - local.get $5 - i64.eq - if (result i32) - i32.const 1 - else - local.get $4 - i64.const 1 - i64.add - local.get $5 - i64.eq - if (result i32) - local.get $11 - local.get $1 - f64.gt - if (result i32) - i32.const 1 - else - local.get $11 - local.get $1 - f64.eq - if (result i32) - local.get $9 - i32.const 1 - i32.and - else - i32.const 0 - end - end - else - i32.const 0 - end - end - if - local.get $0 - local.get $1 - f64.sub - local.set $0 - end - local.get $6 - if (result f64) - local.get $0 - f64.neg - else - local.get $0 - end - ) - (func $std/math/test_rem (; 146 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) - local.get $0 - local.get $1 - call $~lib/math/NativeMath.rem - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - ) - (func $~lib/math/NativeMathf.rem (; 147 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 f32) - local.get $0 - i32.reinterpret_f32 - local.set $2 - local.get $1 - i32.reinterpret_f32 - local.set $3 - local.get $2 - i32.const 23 - i32.shr_u - i32.const 255 - i32.and - local.set $4 - local.get $3 - i32.const 23 - i32.shr_u - i32.const 255 - i32.and - local.set $5 - local.get $2 - i32.const 31 - i32.shr_u - local.set $6 - local.get $2 - local.set $7 - local.get $3 - i32.const 1 - i32.shl - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $4 - i32.const 255 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $1 - call $~lib/number/isNaN - end - if - local.get $0 - local.get $1 - f32.mul - local.get $0 - local.get $1 - f32.mul - f32.div - return - end - local.get $2 - i32.const 1 - i32.shl - i32.const 0 - i32.eq - if - local.get $0 - return - end - local.get $4 - i32.eqz - if - local.get $4 - local.get $7 - i32.const 9 - i32.shl - i32.clz - i32.sub - local.set $4 - local.get $7 - i32.const 0 - local.get $4 - i32.sub - i32.const 1 - i32.add - i32.shl - local.set $7 - else - local.get $7 - i32.const -1 - i32.const 9 - i32.shr_u - i32.and - local.set $7 - local.get $7 - i32.const 1 - i32.const 23 - i32.shl - i32.or - local.set $7 - end - local.get $5 - i32.eqz - if - local.get $5 - local.get $3 - i32.const 9 - i32.shl - i32.clz - i32.sub - local.set $5 - local.get $3 - i32.const 0 - local.get $5 - i32.sub - i32.const 1 - i32.add - i32.shl - local.set $3 - else - local.get $3 - i32.const -1 - i32.const 9 - i32.shr_u - i32.and - local.set $3 - local.get $3 - i32.const 1 - i32.const 23 - i32.shl - i32.or - local.set $3 - end - i32.const 0 - local.set $8 - block $break|0 - local.get $4 - local.get $5 - i32.lt_s - if - local.get $4 - i32.const 1 - i32.add - local.get $5 - i32.eq - if - br $break|0 - end - local.get $0 - return - end - block $break|1 - loop $continue|1 - local.get $4 - local.get $5 - i32.gt_s - i32.eqz - br_if $break|1 - local.get $7 - local.get $3 - i32.ge_u - if - local.get $7 - local.get $3 - i32.sub - local.set $7 - local.get $8 - i32.const 1 - i32.add - local.set $8 - end - local.get $7 - i32.const 1 - i32.shl - local.set $7 - local.get $8 - i32.const 1 - i32.shl - local.set $8 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $continue|1 - end - unreachable - end - local.get $7 - local.get $3 - i32.ge_u - if - local.get $7 - local.get $3 - i32.sub - local.set $7 - local.get $8 - i32.const 1 - i32.add - local.set $8 - end - local.get $7 - i32.const 0 - i32.eq - if - i32.const -30 - local.set $4 - else - local.get $7 - i32.const 8 - i32.shl - i32.clz - local.set $9 - local.get $4 - local.get $9 - i32.sub - local.set $4 - local.get $7 - local.get $9 - i32.shl - local.set $7 - end - br $break|0 - end - local.get $4 - i32.const 0 - i32.gt_s - if - local.get $7 - i32.const 1 - i32.const 23 - i32.shl - i32.sub - local.set $7 - local.get $7 - local.get $4 - i32.const 23 - i32.shl - i32.or - local.set $7 - else - local.get $7 - i32.const 0 - local.get $4 - i32.sub - i32.const 1 - i32.add - i32.shr_u - local.set $7 - end - local.get $7 - f32.reinterpret_i32 - local.set $0 - local.get $1 - f32.abs - local.set $1 - local.get $0 - local.get $0 - f32.add - local.set $10 - local.get $4 - local.get $5 - i32.eq - if (result i32) - i32.const 1 - else - local.get $4 - i32.const 1 - i32.add - local.get $5 - i32.eq - if (result i32) - local.get $10 - local.get $1 - f32.gt - if (result i32) - i32.const 1 - else - local.get $10 - local.get $1 - f32.eq - if (result i32) - local.get $8 - i32.const 1 - i32.and - else - i32.const 0 - end - end - else - i32.const 0 - end - end - if - local.get $0 - local.get $1 - f32.sub - local.set $0 - end - local.get $6 - if (result f32) - local.get $0 - f32.neg - else - local.get $0 - end - ) - (func $std/math/test_remf (; 148 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) - local.get $0 - local.get $1 - call $~lib/math/NativeMathf.rem - local.get $2 - local.get $3 - local.get $4 - call $std/math/check - ) - (func $~lib/math/NativeMath.sin (; 149 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 i64) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 f64) - (local $17 i32) - (local $18 f64) - (local $19 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - local.get $2 - i32.const 31 - i32.shr_u - local.set $3 - local.get $2 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1072243195 - i32.le_u - if - local.get $2 - i32.const 1045430272 - i32.lt_u - if - local.get $0 - return - end - block $~lib/math/sin_kern|inlined.1 (result f64) - local.get $0 - local.set $6 - f64.const 0 - local.set $5 - i32.const 0 - local.set $4 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $8 - f64.const 0.00833333333332249 - local.get $7 - f64.const -1.984126982985795e-04 - local.get $7 - f64.const 2.7557313707070068e-06 - f64.mul - f64.add - f64.mul - f64.add - local.get $7 - local.get $8 - f64.mul - f64.const -2.5050760253406863e-08 - local.get $7 - f64.const 1.58969099521155e-10 - f64.mul - f64.add - f64.mul - f64.add - local.set $9 - local.get $7 - local.get $6 - f64.mul - local.set $10 - local.get $4 - i32.eqz - if - local.get $6 - local.get $10 - f64.const -0.16666666666666632 - local.get $7 - local.get $9 - f64.mul - f64.add - f64.mul - f64.add - br $~lib/math/sin_kern|inlined.1 - else - local.get $6 - local.get $7 - f64.const 0.5 - local.get $5 - f64.mul - local.get $10 - local.get $9 - f64.mul - f64.sub - f64.mul - local.get $5 - f64.sub - local.get $10 - f64.const -0.16666666666666632 - f64.mul - f64.sub - f64.sub - br $~lib/math/sin_kern|inlined.1 - end - unreachable - end - return - end - local.get $2 - i32.const 2146435072 - i32.ge_u - if - local.get $0 - local.get $0 - f64.sub - return - end - block $~lib/math/rempio2|inlined.1 (result i32) - local.get $0 - local.set $5 - local.get $1 - local.set $11 - local.get $3 - local.set $4 - local.get $11 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 2147483647 - i32.and - local.set $12 - local.get $12 - i32.const 1073928572 - i32.lt_u - if - i32.const 1 - local.set $13 - local.get $4 - i32.eqz - if - local.get $5 - f64.const 1.5707963267341256 - f64.sub - local.set $10 - local.get $12 - i32.const 1073291771 - i32.ne - if - local.get $10 - f64.const 6.077100506506192e-11 - f64.sub - local.set $9 - local.get $10 - local.get $9 - f64.sub - f64.const 6.077100506506192e-11 - f64.sub - local.set $8 - else - local.get $10 - f64.const 6.077100506303966e-11 - f64.sub - local.set $10 - local.get $10 - f64.const 2.0222662487959506e-21 - f64.sub - local.set $9 - local.get $10 - local.get $9 - f64.sub - f64.const 2.0222662487959506e-21 - f64.sub - local.set $8 - end - else - local.get $5 - f64.const 1.5707963267341256 - f64.add - local.set $10 - local.get $12 - i32.const 1073291771 - i32.ne - if - local.get $10 - f64.const 6.077100506506192e-11 - f64.add - local.set $9 - local.get $10 - local.get $9 - f64.sub - f64.const 6.077100506506192e-11 - f64.add - local.set $8 - else - local.get $10 - f64.const 6.077100506303966e-11 - f64.add - local.set $10 - local.get $10 - f64.const 2.0222662487959506e-21 - f64.add - local.set $9 - local.get $10 - local.get $9 - f64.sub - f64.const 2.0222662487959506e-21 - f64.add - local.set $8 - end - i32.const -1 - local.set $13 - end - local.get $9 - global.set $~lib/math/rempio2_y0 - local.get $8 - global.set $~lib/math/rempio2_y1 - local.get $13 - br $~lib/math/rempio2|inlined.1 - end - local.get $12 - i32.const 1094263291 - i32.lt_u - if - local.get $5 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $8 - local.get $5 - local.get $8 - f64.const 1.5707963267341256 - f64.mul - f64.sub - local.set $9 - local.get $8 - f64.const 6.077100506506192e-11 - f64.mul - local.set $10 - local.get $12 - i32.const 20 - i32.shr_u - local.set $13 - local.get $9 - local.get $10 - f64.sub - local.set $7 - local.get $7 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $14 - local.get $13 - local.get $14 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $15 - local.get $15 - i32.const 16 - i32.gt_u - if - local.get $9 - local.set $6 - local.get $8 - f64.const 6.077100506303966e-11 - f64.mul - local.set $10 - local.get $6 - local.get $10 - f64.sub - local.set $9 - local.get $8 - f64.const 2.0222662487959506e-21 - f64.mul - local.get $6 - local.get $9 - f64.sub - local.get $10 - f64.sub - f64.sub - local.set $10 - local.get $9 - local.get $10 - f64.sub - local.set $7 - local.get $7 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $14 - local.get $13 - local.get $14 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $15 - local.get $15 - i32.const 49 - i32.gt_u - if - local.get $9 - local.set $16 - local.get $8 - f64.const 2.0222662487111665e-21 - f64.mul - local.set $10 - local.get $16 - local.get $10 - f64.sub - local.set $9 - local.get $8 - f64.const 8.4784276603689e-32 - f64.mul - local.get $16 - local.get $9 - f64.sub - local.get $10 - f64.sub - f64.sub - local.set $10 - local.get $9 - local.get $10 - f64.sub - local.set $7 - end - end - local.get $9 - local.get $7 - f64.sub - local.get $10 - f64.sub - local.set $6 - local.get $7 - global.set $~lib/math/rempio2_y0 - local.get $6 - global.set $~lib/math/rempio2_y1 - local.get $8 - i32.trunc_f64_s - br $~lib/math/rempio2|inlined.1 - end - local.get $5 - local.get $11 - call $~lib/math/pio2_large_quot - local.set $15 - i32.const 0 - local.get $15 - i32.sub - local.get $15 - local.get $4 - select - end - local.set $17 - global.get $~lib/math/rempio2_y0 - local.set $18 - global.get $~lib/math/rempio2_y1 - local.set $19 - local.get $17 - i32.const 1 - i32.and - if (result f64) - local.get $18 - local.set $8 - local.get $19 - local.set $16 - local.get $8 - local.get $8 - f64.mul - local.set $5 - local.get $5 - local.get $5 - f64.mul - local.set $6 - local.get $5 - f64.const 0.0416666666666666 - local.get $5 - f64.const -0.001388888888887411 - local.get $5 - f64.const 2.480158728947673e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.get $6 - local.get $6 - f64.mul - f64.const -2.7557314351390663e-07 - local.get $5 - f64.const 2.087572321298175e-09 - local.get $5 - f64.const -1.1359647557788195e-11 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $7 - f64.const 0.5 - local.get $5 - f64.mul - local.set $10 - f64.const 1 - local.get $10 - f64.sub - local.set $6 - local.get $6 - f64.const 1 - local.get $6 - f64.sub - local.get $10 - f64.sub - local.get $5 - local.get $7 - f64.mul - local.get $8 - local.get $16 - f64.mul - f64.sub - f64.add - f64.add - else - block $~lib/math/sin_kern|inlined.2 (result f64) - local.get $18 - local.set $16 - local.get $19 - local.set $9 - i32.const 1 - local.set $13 - local.get $16 - local.get $16 - f64.mul - local.set $10 - local.get $10 - local.get $10 - f64.mul - local.set $7 - f64.const 0.00833333333332249 - local.get $10 - f64.const -1.984126982985795e-04 - local.get $10 - f64.const 2.7557313707070068e-06 - f64.mul - f64.add - f64.mul - f64.add - local.get $10 - local.get $7 - f64.mul - f64.const -2.5050760253406863e-08 - local.get $10 - f64.const 1.58969099521155e-10 - f64.mul - f64.add - f64.mul - f64.add - local.set $6 - local.get $10 - local.get $16 - f64.mul - local.set $5 - local.get $13 - i32.eqz - if - local.get $16 - local.get $5 - f64.const -0.16666666666666632 - local.get $10 - local.get $6 - f64.mul - f64.add - f64.mul - f64.add - br $~lib/math/sin_kern|inlined.2 - else - local.get $16 - local.get $10 - f64.const 0.5 - local.get $9 - f64.mul - local.get $5 - local.get $6 - f64.mul - f64.sub - f64.mul - local.get $9 - f64.sub - local.get $5 - f64.const -0.16666666666666632 - f64.mul - f64.sub - f64.sub - br $~lib/math/sin_kern|inlined.2 - end - unreachable - end - end - local.set $0 - local.get $17 - i32.const 2 - i32.and - if (result f64) - local.get $0 - f64.neg - else - local.get $0 - end - ) - (func $std/math/test_sin (; 150 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.sin - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/sin - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.sin (; 151 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 f64) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 i32) - (local $9 i32) - (local $10 f32) - (local $11 i32) - (local $12 f32) - (local $13 i32) - (local $14 i32) - (local $15 i64) - (local $16 i32) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i32) - (local $25 i32) - (local $26 f64) - (local $27 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 31 - i32.shr_u - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1061752794 - i32.le_u - if - local.get $1 - i32.const 964689920 - i32.lt_u - if - local.get $0 - return - end - local.get $0 - f64.promote_f32 - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const -1.9839334836096632e-04 - local.get $4 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $6 - local.get $4 - local.get $3 - f64.mul - local.set $7 - local.get $3 - local.get $7 - f64.const -0.16666666641626524 - local.get $4 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $7 - local.get $5 - f64.mul - local.get $6 - f64.mul - f64.add - f32.demote_f64 - return - end - local.get $1 - i32.const 1081824209 - i32.le_u - if - local.get $1 - i32.const 1075235811 - i32.le_u - if - local.get $2 - if (result f32) - local.get $0 - f64.promote_f32 - f64.const 1.5707963267948966 - f64.add - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - f64.const -0.001388676377460993 - local.get $7 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $5 - f32.const 1 - f64.promote_f32 - local.get $7 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $6 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $6 - local.get $7 - f64.mul - local.get $5 - f64.mul - f64.add - f32.demote_f64 - f32.neg - else - local.get $0 - f64.promote_f32 - f64.const 1.5707963267948966 - f64.sub - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - local.get $5 - local.get $5 - f64.mul - local.set $6 - f64.const -0.001388676377460993 - local.get $5 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $7 - f32.const 1 - f64.promote_f32 - local.get $5 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $6 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $6 - local.get $5 - f64.mul - local.get $7 - f64.mul - f64.add - f32.demote_f64 - end - return - end - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 3.141592653589793 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 3.141592653589793 - f64.sub - end - f64.neg - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - f64.const -1.9839334836096632e-04 - local.get $7 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $5 - local.get $7 - local.get $3 - f64.mul - local.set $4 - local.get $3 - local.get $4 - f64.const -0.16666666641626524 - local.get $7 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $4 - local.get $6 - f64.mul - local.get $5 - f64.mul - f64.add - f32.demote_f64 - return - end - local.get $1 - i32.const 1088565717 - i32.le_u - if - local.get $1 - i32.const 1085271519 - i32.le_u - if - local.get $2 - if (result f32) - local.get $0 - f64.promote_f32 - f64.const 4.71238898038469 - f64.add - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const -0.001388676377460993 - local.get $4 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $6 - f32.const 1 - f64.promote_f32 - local.get $4 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $5 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $5 - local.get $4 - f64.mul - local.get $6 - f64.mul - f64.add - f32.demote_f64 - else - local.get $0 - f64.promote_f32 - f64.const 4.71238898038469 - f64.sub - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - local.get $6 - local.get $6 - f64.mul - local.set $5 - f64.const -0.001388676377460993 - local.get $6 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $4 - f32.const 1 - f64.promote_f32 - local.get $6 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $5 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $5 - local.get $6 - f64.mul - local.get $4 - f64.mul - f64.add - f32.demote_f64 - f32.neg - end - return - end - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 6.283185307179586 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 6.283185307179586 - f64.sub - end - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const -1.9839334836096632e-04 - local.get $4 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $6 - local.get $4 - local.get $3 - f64.mul - local.set $7 - local.get $3 - local.get $7 - f64.const -0.16666666641626524 - local.get $4 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $7 - local.get $5 - f64.mul - local.get $6 - f64.mul - f64.add - f32.demote_f64 - return - end - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - local.get $0 - f32.sub - return - end - block $~lib/math/rempio2f|inlined.1 (result i32) - local.get $0 - local.set $10 - local.get $1 - local.set $9 - local.get $2 - local.set $8 - local.get $9 - i32.const 1305022427 - i32.lt_u - if - local.get $10 - f64.promote_f32 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $7 - local.get $10 - f64.promote_f32 - local.get $7 - f64.const 1.5707963109016418 - f64.mul - f64.sub - local.get $7 - f64.const 1.5893254773528196e-08 - f64.mul - f64.sub - global.set $~lib/math/rempio2f_y - local.get $7 - i32.trunc_f64_s - br $~lib/math/rempio2f|inlined.1 - end - local.get $10 - local.set $12 - local.get $9 - local.set $11 - i32.const 352 - i32.load offset=4 - local.set $13 - local.get $11 - i32.const 23 - i32.shr_s - i32.const 152 - i32.sub - local.set $14 - local.get $14 - i32.const 63 - i32.and - i64.extend_i32_s - local.set $15 - local.get $13 - local.get $14 - i32.const 6 - i32.shr_s - i32.const 3 - i32.shl - i32.add - local.set $16 - local.get $16 - i64.load - local.set $17 - local.get $16 - i64.load offset=8 - local.set $18 - local.get $15 - i64.const 32 - i64.gt_u - if - local.get $16 - i64.load offset=16 - local.set $20 - local.get $20 - i64.const 96 - local.get $15 - i64.sub - i64.shr_u - local.set $19 - local.get $19 - local.get $18 - local.get $15 - i64.const 32 - i64.sub - i64.shl - i64.or - local.set $19 - else - local.get $18 - i64.const 32 - local.get $15 - i64.sub - i64.shr_u - local.set $19 - end - local.get $18 - i64.const 64 - local.get $15 - i64.sub - i64.shr_u - local.get $17 - local.get $15 - i64.shl - i64.or - local.set $20 - local.get $11 - i32.const 8388607 - i32.and - i32.const 8388608 - i32.or - i64.extend_i32_s - local.set $21 - local.get $21 - local.get $20 - i64.mul - local.get $21 - local.get $19 - i64.mul - i64.const 32 - i64.shr_u - i64.add - local.set $22 - local.get $22 - i64.const 2 - i64.shl - local.set $23 - local.get $22 - i64.const 62 - i64.shr_u - local.get $23 - i64.const 63 - i64.shr_u - i64.add - i32.wrap_i64 - local.set $24 - f64.const 8.515303950216386e-20 - local.get $12 - f64.promote_f32 - f64.copysign - local.get $23 - f64.convert_i64_s - f64.mul - global.set $~lib/math/rempio2f_y - local.get $24 - local.set $24 - i32.const 0 - local.get $24 - i32.sub - local.get $24 - local.get $8 - select - end - local.set $25 - global.get $~lib/math/rempio2f_y - local.set $26 - local.get $25 - i32.const 1 - i32.and - if (result f32) - local.get $26 - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $6 - f64.const -0.001388676377460993 - local.get $7 - f64.const 2.439044879627741e-05 - f64.mul - f64.add - local.set $5 - f32.const 1 - f64.promote_f32 - local.get $7 - f64.const -0.499999997251031 - f64.mul - f64.add - local.get $6 - f64.const 0.04166662332373906 - f64.mul - f64.add - local.get $6 - local.get $7 - f64.mul - local.get $5 - f64.mul - f64.add - f32.demote_f64 - else - local.get $26 - local.set $4 - local.get $4 - local.get $4 - f64.mul - local.set $5 - local.get $5 - local.get $5 - f64.mul - local.set $6 - f64.const -1.9839334836096632e-04 - local.get $5 - f64.const 2.718311493989822e-06 - f64.mul - f64.add - local.set $7 - local.get $5 - local.get $4 - f64.mul - local.set $3 - local.get $4 - local.get $3 - f64.const -0.16666666641626524 - local.get $5 - f64.const 0.008333329385889463 - f64.mul - f64.add - f64.mul - f64.add - local.get $3 - local.get $6 - f64.mul - local.get $7 - f64.mul - f64.add - f32.demote_f64 - end - local.set $27 - local.get $25 - i32.const 2 - i32.and - if (result f32) - local.get $27 - f32.neg - else - local.get $27 - end - ) - (func $std/math/test_sinf (; 152 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.sin - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.sinh (; 153 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 f64) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - local.get $0 - i64.reinterpret_f64 - i64.const 9223372036854775807 - i64.and - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $2 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $3 - f64.const 0.5 - local.get $0 - f64.copysign - local.set $5 - local.get $3 - i32.const 1082535490 - i32.lt_u - if - local.get $2 - call $~lib/math/NativeMath.expm1 - local.set $4 - local.get $3 - i32.const 1072693248 - i32.lt_u - if - local.get $3 - i32.const 1045430272 - i32.lt_u - if - local.get $0 - return - end - local.get $5 - f64.const 2 - local.get $4 - f64.mul - local.get $4 - local.get $4 - f64.mul - local.get $4 - f64.const 1 - f64.add - f64.div - f64.sub - f64.mul - return - end - local.get $5 - local.get $4 - local.get $4 - local.get $4 - f64.const 1 - f64.add - f64.div - f64.add - f64.mul - return - end - f64.const 2 - local.get $5 - f64.mul - local.get $2 - local.set $6 - i32.const 1023 - i32.const 2043 - i32.const 2 - i32.div_u - i32.add - i32.const 20 - i32.shl - i64.extend_i32_u - i64.const 32 - i64.shl - f64.reinterpret_i64 - local.set $7 - local.get $6 - f64.const 1416.0996898839683 - f64.sub - call $~lib/math/NativeMath.exp - local.get $7 - f64.mul - local.get $7 - f64.mul - f64.mul - local.set $4 - local.get $4 - ) - (func $std/math/test_sinh (; 154 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.sinh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/sinh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.sinh (; 155 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - (local $3 f32) - (local $4 f32) - (local $5 f32) - (local $6 f32) - local.get $0 - i32.reinterpret_f32 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $2 - f32.const 0.5 - local.get $0 - f32.copysign - local.set $4 - local.get $1 - i32.const 1118925335 - i32.lt_u - if - local.get $2 - call $~lib/math/NativeMathf.expm1 - local.set $3 - local.get $1 - i32.const 1065353216 - i32.lt_u - if - local.get $1 - i32.const 964689920 - i32.lt_u - if - local.get $0 - return - end - local.get $4 - f32.const 2 - local.get $3 - f32.mul - local.get $3 - local.get $3 - f32.mul - local.get $3 - f32.const 1 - f32.add - f32.div - f32.sub - f32.mul - return - end - local.get $4 - local.get $3 - local.get $3 - local.get $3 - f32.const 1 - f32.add - f32.div - f32.add - f32.mul - return - end - f32.const 2 - local.get $4 - f32.mul - local.get $2 - local.set $5 - i32.const 127 - i32.const 235 - i32.const 1 - i32.shr_u - i32.add - i32.const 23 - i32.shl - f32.reinterpret_i32 - local.set $6 - local.get $5 - f32.const 162.88958740234375 - f32.sub - call $~lib/math/NativeMathf.exp - local.get $6 - f32.mul - local.get $6 - f32.mul - f32.mul - local.set $3 - local.get $3 - ) - (func $std/math/test_sinhf (; 156 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.sinh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $std/math/test_sqrt (; 157 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - (local $4 f64) - local.get $0 - local.set $4 - local.get $4 - f64.sqrt - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/sqrt - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $std/math/test_sqrtf (; 158 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - (local $4 f32) - local.get $0 - local.set $4 - local.get $4 - f32.sqrt - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/tan_kern (; 159 ;) (type $FUNCSIG$dddi) (param $0 f64) (param $1 f64) (param $2 i32) (result f64) - (local $3 f64) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 f64) - (local $12 f64) - local.get $0 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $8 - local.get $8 - i32.const 2147483647 - i32.and - local.set $9 - local.get $9 - i32.const 1072010280 - i32.ge_s - local.set $10 - local.get $10 - if - local.get $8 - i32.const 0 - i32.lt_s - if - local.get $0 - f64.neg - local.set $0 - local.get $1 - f64.neg - local.set $1 - end - f64.const 0.7853981633974483 - local.get $0 - f64.sub - local.set $3 - f64.const 3.061616997868383e-17 - local.get $1 - f64.sub - local.set $6 - local.get $3 - local.get $6 - f64.add - local.set $0 - f64.const 0 - local.set $1 - end - local.get $0 - local.get $0 - f64.mul - local.set $3 - local.get $3 - local.get $3 - f64.mul - local.set $6 - f64.const 0.13333333333320124 - local.get $6 - f64.const 0.021869488294859542 - local.get $6 - f64.const 3.5920791075913124e-03 - local.get $6 - f64.const 5.880412408202641e-04 - local.get $6 - f64.const 7.817944429395571e-05 - local.get $6 - f64.const -1.8558637485527546e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $4 - local.get $3 - f64.const 0.05396825397622605 - local.get $6 - f64.const 0.0088632398235993 - local.get $6 - f64.const 1.4562094543252903e-03 - local.get $6 - f64.const 2.464631348184699e-04 - local.get $6 - f64.const 7.140724913826082e-05 - local.get $6 - f64.const 2.590730518636337e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.set $5 - local.get $3 - local.get $0 - f64.mul - local.set $7 - local.get $1 - local.get $3 - local.get $7 - local.get $4 - local.get $5 - f64.add - f64.mul - local.get $1 - f64.add - f64.mul - f64.add - local.set $4 - local.get $4 - f64.const 0.3333333333333341 - local.get $7 - f64.mul - f64.add - local.set $4 - local.get $0 - local.get $4 - f64.add - local.set $6 - local.get $10 - if - local.get $2 - f64.convert_i32_s - local.set $5 - f64.const 1 - local.get $8 - i32.const 30 - i32.shr_s - i32.const 2 - i32.and - f64.convert_i32_s - f64.sub - local.get $5 - f64.const 2 - local.get $0 - local.get $6 - local.get $6 - f64.mul - local.get $6 - local.get $5 - f64.add - f64.div - local.get $4 - f64.sub - f64.sub - f64.mul - f64.sub - f64.mul - return - end - local.get $2 - i32.const 1 - i32.eq - if - local.get $6 - return - end - local.get $6 - local.set $3 - local.get $3 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $3 - local.get $4 - local.get $3 - local.get $0 - f64.sub - f64.sub - local.set $5 - f64.const 1 - f64.neg - local.get $6 - f64.div - local.tee $11 - local.set $12 - local.get $12 - i64.reinterpret_f64 - i64.const -4294967296 - i64.and - f64.reinterpret_i64 - local.set $12 - f64.const 1 - local.get $12 - local.get $3 - f64.mul - f64.add - local.set $7 - local.get $12 - local.get $11 - local.get $7 - local.get $12 - local.get $5 - f64.mul - f64.add - f64.mul - f64.add - ) - (func $~lib/math/NativeMath.tan (; 160 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i64) - (local $6 f64) - (local $7 i32) - (local $8 i32) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (local $12 f64) - (local $13 i32) - (local $14 i32) - (local $15 f64) - (local $16 f64) - (local $17 i32) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - local.get $2 - i32.const 31 - i32.shr_u - local.set $3 - local.get $2 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1072243195 - i32.le_s - if - local.get $2 - i32.const 1044381696 - i32.lt_s - if - local.get $0 - return - end - local.get $0 - f64.const 0 - i32.const 1 - call $~lib/math/tan_kern - return - end - local.get $2 - i32.const 2146435072 - i32.ge_s - if - local.get $0 - local.get $0 - f64.sub - return - end - block $~lib/math/rempio2|inlined.2 (result i32) - local.get $0 - local.set $6 - local.get $1 - local.set $5 - local.get $3 - local.set $4 - local.get $5 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 2147483647 - i32.and - local.set $7 - local.get $7 - i32.const 1073928572 - i32.lt_u - if - i32.const 1 - local.set $8 - local.get $4 - i32.eqz - if - local.get $6 - f64.const 1.5707963267341256 - f64.sub - local.set $9 - local.get $7 - i32.const 1073291771 - i32.ne - if - local.get $9 - f64.const 6.077100506506192e-11 - f64.sub - local.set $10 - local.get $9 - local.get $10 - f64.sub - f64.const 6.077100506506192e-11 - f64.sub - local.set $11 - else - local.get $9 - f64.const 6.077100506303966e-11 - f64.sub - local.set $9 - local.get $9 - f64.const 2.0222662487959506e-21 - f64.sub - local.set $10 - local.get $9 - local.get $10 - f64.sub - f64.const 2.0222662487959506e-21 - f64.sub - local.set $11 - end - else - local.get $6 - f64.const 1.5707963267341256 - f64.add - local.set $9 - local.get $7 - i32.const 1073291771 - i32.ne - if - local.get $9 - f64.const 6.077100506506192e-11 - f64.add - local.set $10 - local.get $9 - local.get $10 - f64.sub - f64.const 6.077100506506192e-11 - f64.add - local.set $11 - else - local.get $9 - f64.const 6.077100506303966e-11 - f64.add - local.set $9 - local.get $9 - f64.const 2.0222662487959506e-21 - f64.add - local.set $10 - local.get $9 - local.get $10 - f64.sub - f64.const 2.0222662487959506e-21 - f64.add - local.set $11 - end - i32.const -1 - local.set $8 - end - local.get $10 - global.set $~lib/math/rempio2_y0 - local.get $11 - global.set $~lib/math/rempio2_y1 - local.get $8 - br $~lib/math/rempio2|inlined.2 - end - local.get $7 - i32.const 1094263291 - i32.lt_u - if - local.get $6 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $11 - local.get $6 - local.get $11 - f64.const 1.5707963267341256 - f64.mul - f64.sub - local.set $10 - local.get $11 - f64.const 6.077100506506192e-11 - f64.mul - local.set $9 - local.get $7 - i32.const 20 - i32.shr_u - local.set $8 - local.get $10 - local.get $9 - f64.sub - local.set $12 - local.get $12 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $13 - local.get $8 - local.get $13 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $14 - local.get $14 - i32.const 16 - i32.gt_u - if - local.get $10 - local.set $15 - local.get $11 - f64.const 6.077100506303966e-11 - f64.mul - local.set $9 - local.get $15 - local.get $9 - f64.sub - local.set $10 - local.get $11 - f64.const 2.0222662487959506e-21 - f64.mul - local.get $15 - local.get $10 - f64.sub - local.get $9 - f64.sub - f64.sub - local.set $9 - local.get $10 - local.get $9 - f64.sub - local.set $12 - local.get $12 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $13 - local.get $8 - local.get $13 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $14 - local.get $14 - i32.const 49 - i32.gt_u - if - local.get $10 - local.set $16 - local.get $11 - f64.const 2.0222662487111665e-21 - f64.mul - local.set $9 - local.get $16 - local.get $9 - f64.sub - local.set $10 - local.get $11 - f64.const 8.4784276603689e-32 - f64.mul - local.get $16 - local.get $10 - f64.sub - local.get $9 - f64.sub - f64.sub - local.set $9 - local.get $10 - local.get $9 - f64.sub - local.set $12 - end - end - local.get $10 - local.get $12 - f64.sub - local.get $9 - f64.sub - local.set $15 - local.get $12 - global.set $~lib/math/rempio2_y0 - local.get $15 - global.set $~lib/math/rempio2_y1 - local.get $11 - i32.trunc_f64_s - br $~lib/math/rempio2|inlined.2 - end - local.get $6 - local.get $5 - call $~lib/math/pio2_large_quot - local.set $14 - i32.const 0 - local.get $14 - i32.sub - local.get $14 - local.get $4 - select - end - local.set $17 - global.get $~lib/math/rempio2_y0 - global.get $~lib/math/rempio2_y1 - i32.const 1 - local.get $17 - i32.const 1 - i32.and - i32.const 1 - i32.shl - i32.sub - call $~lib/math/tan_kern - ) - (func $std/math/test_tan (; 161 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.tan - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/tan - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.tan (; 162 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 i32) - (local $12 f32) - (local $13 i32) - (local $14 f32) - (local $15 i32) - (local $16 i32) - (local $17 i64) - (local $18 i32) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i64) - (local $25 i64) - (local $26 i32) - (local $27 i32) - (local $28 f64) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 31 - i32.shr_u - local.set $2 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - i32.const 1061752794 - i32.le_u - if - local.get $1 - i32.const 964689920 - i32.lt_u - if - local.get $0 - return - end - local.get $0 - f64.promote_f32 - local.set $4 - i32.const 0 - local.set $3 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const 0.002974357433599673 - local.get $5 - f64.const 0.009465647849436732 - f64.mul - f64.add - local.set $6 - f64.const 0.05338123784456704 - local.get $5 - f64.const 0.024528318116654728 - f64.mul - f64.add - local.set $7 - local.get $5 - local.get $5 - f64.mul - local.set $8 - local.get $5 - local.get $4 - f64.mul - local.set $9 - f64.const 0.3333313950307914 - local.get $5 - f64.const 0.13339200271297674 - f64.mul - f64.add - local.set $10 - local.get $4 - local.get $9 - local.get $10 - f64.mul - f64.add - local.get $9 - local.get $8 - f64.mul - local.get $7 - local.get $8 - local.get $6 - f64.mul - f64.add - f64.mul - f64.add - local.set $6 - local.get $3 - if (result f64) - f32.const -1 - f64.promote_f32 - local.get $6 - f64.div - else - local.get $6 - end - f32.demote_f64 - return - end - local.get $1 - i32.const 1081824209 - i32.le_u - if - local.get $1 - i32.const 1075235811 - i32.le_u - if - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 1.5707963267948966 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 1.5707963267948966 - f64.sub - end - local.set $4 - i32.const 1 - local.set $3 - local.get $4 - local.get $4 - f64.mul - local.set $10 - f64.const 0.002974357433599673 - local.get $10 - f64.const 0.009465647849436732 - f64.mul - f64.add - local.set $9 - f64.const 0.05338123784456704 - local.get $10 - f64.const 0.024528318116654728 - f64.mul - f64.add - local.set $8 - local.get $10 - local.get $10 - f64.mul - local.set $7 - local.get $10 - local.get $4 - f64.mul - local.set $6 - f64.const 0.3333313950307914 - local.get $10 - f64.const 0.13339200271297674 - f64.mul - f64.add - local.set $5 - local.get $4 - local.get $6 - local.get $5 - f64.mul - f64.add - local.get $6 - local.get $7 - f64.mul - local.get $8 - local.get $7 - local.get $9 - f64.mul - f64.add - f64.mul - f64.add - local.set $9 - local.get $3 - if (result f64) - f32.const -1 - f64.promote_f32 - local.get $9 - f64.div - else - local.get $9 - end - f32.demote_f64 - return - else - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 3.141592653589793 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 3.141592653589793 - f64.sub - end - local.set $4 - i32.const 0 - local.set $3 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const 0.002974357433599673 - local.get $5 - f64.const 0.009465647849436732 - f64.mul - f64.add - local.set $6 - f64.const 0.05338123784456704 - local.get $5 - f64.const 0.024528318116654728 - f64.mul - f64.add - local.set $7 - local.get $5 - local.get $5 - f64.mul - local.set $8 - local.get $5 - local.get $4 - f64.mul - local.set $9 - f64.const 0.3333313950307914 - local.get $5 - f64.const 0.13339200271297674 - f64.mul - f64.add - local.set $10 - local.get $4 - local.get $9 - local.get $10 - f64.mul - f64.add - local.get $9 - local.get $8 - f64.mul - local.get $7 - local.get $8 - local.get $6 - f64.mul - f64.add - f64.mul - f64.add - local.set $6 - local.get $3 - if (result f64) - f32.const -1 - f64.promote_f32 - local.get $6 - f64.div - else - local.get $6 - end - f32.demote_f64 - return - end - unreachable - end - local.get $1 - i32.const 1088565717 - i32.le_u - if - local.get $1 - i32.const 1085271519 - i32.le_u - if - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 4.71238898038469 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 4.71238898038469 - f64.sub - end - local.set $4 - i32.const 1 - local.set $3 - local.get $4 - local.get $4 - f64.mul - local.set $10 - f64.const 0.002974357433599673 - local.get $10 - f64.const 0.009465647849436732 - f64.mul - f64.add - local.set $9 - f64.const 0.05338123784456704 - local.get $10 - f64.const 0.024528318116654728 - f64.mul - f64.add - local.set $8 - local.get $10 - local.get $10 - f64.mul - local.set $7 - local.get $10 - local.get $4 - f64.mul - local.set $6 - f64.const 0.3333313950307914 - local.get $10 - f64.const 0.13339200271297674 - f64.mul - f64.add - local.set $5 - local.get $4 - local.get $6 - local.get $5 - f64.mul - f64.add - local.get $6 - local.get $7 - f64.mul - local.get $8 - local.get $7 - local.get $9 - f64.mul - f64.add - f64.mul - f64.add - local.set $9 - local.get $3 - if (result f64) - f32.const -1 - f64.promote_f32 - local.get $9 - f64.div - else - local.get $9 - end - f32.demote_f64 - return - else - local.get $2 - if (result f64) - local.get $0 - f64.promote_f32 - f64.const 6.283185307179586 - f64.add - else - local.get $0 - f64.promote_f32 - f64.const 6.283185307179586 - f64.sub - end - local.set $4 - i32.const 0 - local.set $3 - local.get $4 - local.get $4 - f64.mul - local.set $5 - f64.const 0.002974357433599673 - local.get $5 - f64.const 0.009465647849436732 - f64.mul - f64.add - local.set $6 - f64.const 0.05338123784456704 - local.get $5 - f64.const 0.024528318116654728 - f64.mul - f64.add - local.set $7 - local.get $5 - local.get $5 - f64.mul - local.set $8 - local.get $5 - local.get $4 - f64.mul - local.set $9 - f64.const 0.3333313950307914 - local.get $5 - f64.const 0.13339200271297674 - f64.mul - f64.add - local.set $10 - local.get $4 - local.get $9 - local.get $10 - f64.mul - f64.add - local.get $9 - local.get $8 - f64.mul - local.get $7 - local.get $8 - local.get $6 - f64.mul - f64.add - f64.mul - f64.add - local.set $6 - local.get $3 - if (result f64) - f32.const -1 - f64.promote_f32 - local.get $6 - f64.div - else - local.get $6 - end - f32.demote_f64 - return - end - unreachable - end - local.get $1 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - local.get $0 - f32.sub - return - end - block $~lib/math/rempio2f|inlined.2 (result i32) - local.get $0 - local.set $12 - local.get $1 - local.set $11 - local.get $2 - local.set $3 - local.get $11 - i32.const 1305022427 - i32.lt_u - if - local.get $12 - f64.promote_f32 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $10 - local.get $12 - f64.promote_f32 - local.get $10 - f64.const 1.5707963109016418 - f64.mul - f64.sub - local.get $10 - f64.const 1.5893254773528196e-08 - f64.mul - f64.sub - global.set $~lib/math/rempio2f_y - local.get $10 - i32.trunc_f64_s - br $~lib/math/rempio2f|inlined.2 - end - local.get $12 - local.set $14 - local.get $11 - local.set $13 - i32.const 352 - i32.load offset=4 - local.set $15 - local.get $13 - i32.const 23 - i32.shr_s - i32.const 152 - i32.sub - local.set $16 - local.get $16 - i32.const 63 - i32.and - i64.extend_i32_s - local.set $17 - local.get $15 - local.get $16 - i32.const 6 - i32.shr_s - i32.const 3 - i32.shl - i32.add - local.set $18 - local.get $18 - i64.load - local.set $19 - local.get $18 - i64.load offset=8 - local.set $20 - local.get $17 - i64.const 32 - i64.gt_u - if - local.get $18 - i64.load offset=16 - local.set $22 - local.get $22 - i64.const 96 - local.get $17 - i64.sub - i64.shr_u - local.set $21 - local.get $21 - local.get $20 - local.get $17 - i64.const 32 - i64.sub - i64.shl - i64.or - local.set $21 - else - local.get $20 - i64.const 32 - local.get $17 - i64.sub - i64.shr_u - local.set $21 - end - local.get $20 - i64.const 64 - local.get $17 - i64.sub - i64.shr_u - local.get $19 - local.get $17 - i64.shl - i64.or - local.set $22 - local.get $13 - i32.const 8388607 - i32.and - i32.const 8388608 - i32.or - i64.extend_i32_s - local.set $23 - local.get $23 - local.get $22 - i64.mul - local.get $23 - local.get $21 - i64.mul - i64.const 32 - i64.shr_u - i64.add - local.set $24 - local.get $24 - i64.const 2 - i64.shl - local.set $25 - local.get $24 - i64.const 62 - i64.shr_u - local.get $25 - i64.const 63 - i64.shr_u - i64.add - i32.wrap_i64 - local.set $26 - f64.const 8.515303950216386e-20 - local.get $14 - f64.promote_f32 - f64.copysign - local.get $25 - f64.convert_i64_s - f64.mul - global.set $~lib/math/rempio2f_y - local.get $26 - local.set $26 - i32.const 0 - local.get $26 - i32.sub - local.get $26 - local.get $3 - select - end - local.set $27 - global.get $~lib/math/rempio2f_y - local.set $28 - local.get $28 - local.set $4 - local.get $27 - i32.const 1 - i32.and - local.set $13 - local.get $4 - local.get $4 - f64.mul - local.set $10 - f64.const 0.002974357433599673 - local.get $10 - f64.const 0.009465647849436732 - f64.mul - f64.add - local.set $9 - f64.const 0.05338123784456704 - local.get $10 - f64.const 0.024528318116654728 - f64.mul - f64.add - local.set $8 - local.get $10 - local.get $10 - f64.mul - local.set $7 - local.get $10 - local.get $4 - f64.mul - local.set $6 - f64.const 0.3333313950307914 - local.get $10 - f64.const 0.13339200271297674 - f64.mul - f64.add - local.set $5 - local.get $4 - local.get $6 - local.get $5 - f64.mul - f64.add - local.get $6 - local.get $7 - f64.mul - local.get $8 - local.get $7 - local.get $9 - f64.mul - f64.add - f64.mul - f64.add - local.set $9 - local.get $13 - if (result f64) - f32.const -1 - f64.promote_f32 - local.get $9 - f64.div - else - local.get $9 - end - f32.demote_f64 - ) - (func $std/math/test_tanf (; 163 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.tan - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.tanh (; 164 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - (local $1 i64) - (local $2 f64) - (local $3 i32) - (local $4 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 9223372036854775807 - i64.and - local.set $1 - local.get $1 - f64.reinterpret_i64 - local.set $2 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $3 - local.get $3 - i32.const 1071748074 - i32.gt_u - if - local.get $3 - i32.const 1077149696 - i32.gt_u - if - f64.const 1 - f64.const 0 - local.get $2 - f64.div - f64.sub - local.set $4 - else - f64.const 2 - local.get $2 - f64.mul - call $~lib/math/NativeMath.expm1 - local.set $4 - f64.const 1 - f64.const 2 - local.get $4 - f64.const 2 - f64.add - f64.div - f64.sub - local.set $4 - end - else - local.get $3 - i32.const 1070618798 - i32.gt_u - if - f64.const 2 - local.get $2 - f64.mul - call $~lib/math/NativeMath.expm1 - local.set $4 - local.get $4 - local.get $4 - f64.const 2 - f64.add - f64.div - local.set $4 - else - local.get $3 - i32.const 1048576 - i32.ge_u - if - f64.const -2 - local.get $2 - f64.mul - call $~lib/math/NativeMath.expm1 - local.set $4 - local.get $4 - f64.neg - local.get $4 - f64.const 2 - f64.add - f64.div - local.set $4 - else - local.get $2 - local.set $4 - end - end - end - local.get $4 - local.get $0 - f64.copysign - ) - (func $std/math/test_tanh (; 165 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMath.tanh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/tanh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $~lib/math/NativeMathf.tanh (; 166 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) - (local $1 i32) - (local $2 f32) - (local $3 f32) - local.get $0 - i32.reinterpret_f32 - local.set $1 - local.get $1 - i32.const 2147483647 - i32.and - local.set $1 - local.get $1 - f32.reinterpret_i32 - local.set $2 - local.get $1 - i32.const 1057791828 - i32.gt_u - if - local.get $1 - i32.const 1092616192 - i32.gt_u - if - f32.const 1 - f32.const 0 - local.get $2 - f32.div - f32.add - local.set $3 - else - f32.const 2 - local.get $2 - f32.mul - call $~lib/math/NativeMathf.expm1 - local.set $3 - f32.const 1 - f32.const 2 - local.get $3 - f32.const 2 - f32.add - f32.div - f32.sub - local.set $3 - end - else - local.get $1 - i32.const 1048757624 - i32.gt_u - if - f32.const 2 - local.get $2 - f32.mul - call $~lib/math/NativeMathf.expm1 - local.set $3 - local.get $3 - local.get $3 - f32.const 2 - f32.add - f32.div - local.set $3 - else - local.get $1 - i32.const 8388608 - i32.ge_u - if - f32.const -2 - local.get $2 - f32.mul - call $~lib/math/NativeMathf.expm1 - local.set $3 - local.get $3 - f32.neg - local.get $3 - f32.const 2 - f32.add - f32.div - local.set $3 - else - local.get $2 - local.set $3 - end - end - end - local.get $3 - local.get $0 - f32.copysign - ) - (func $std/math/test_tanhf (; 167 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - local.get $0 - call $~lib/math/NativeMathf.tanh - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $std/math/test_trunc (; 168 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) - (local $4 f64) - local.get $0 - local.set $4 - local.get $4 - f64.trunc - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - if (result i32) - global.get $std/math/js - i32.eqz - if (result i32) - i32.const 1 - else - local.get $0 - call $~lib/bindings/Math/trunc - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - end - else - i32.const 0 - end - ) - (func $std/math/test_truncf (; 169 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) - (local $4 f32) - local.get $0 - local.set $4 - local.get $4 - f32.trunc - local.get $1 - local.get $2 - local.get $3 - call $std/math/check - ) - (func $~lib/math/NativeMath.sincos (; 170 ;) (type $FUNCSIG$vd) (param $0 f64) - (local $1 i64) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 i64) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 f64) - (local $17 i32) - (local $18 f64) - (local $19 f64) - (local $20 f64) - (local $21 f64) - (local $22 f64) - (local $23 f64) - local.get $0 - i64.reinterpret_f64 - local.set $1 - local.get $1 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $2 - local.get $2 - i32.const 31 - i32.shr_u - local.set $3 - local.get $2 - i32.const 2147483647 - i32.and - local.set $2 - local.get $2 - i32.const 1072243195 - i32.le_u - if - local.get $2 - i32.const 1044816030 - i32.lt_u - if - local.get $0 - global.set $~lib/math/NativeMath.sincos_sin - f64.const 1 - global.set $~lib/math/NativeMath.sincos_cos - return - end - block $~lib/math/sin_kern|inlined.3 (result f64) - local.get $0 - local.set $6 - f64.const 0 - local.set $5 - i32.const 0 - local.set $4 - local.get $6 - local.get $6 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $8 - f64.const 0.00833333333332249 - local.get $7 - f64.const -1.984126982985795e-04 - local.get $7 - f64.const 2.7557313707070068e-06 - f64.mul - f64.add - f64.mul - f64.add - local.get $7 - local.get $8 - f64.mul - f64.const -2.5050760253406863e-08 - local.get $7 - f64.const 1.58969099521155e-10 - f64.mul - f64.add - f64.mul - f64.add - local.set $9 - local.get $7 - local.get $6 - f64.mul - local.set $10 - local.get $4 - i32.eqz - if - local.get $6 - local.get $10 - f64.const -0.16666666666666632 - local.get $7 - local.get $9 - f64.mul - f64.add - f64.mul - f64.add - br $~lib/math/sin_kern|inlined.3 - else - local.get $6 - local.get $7 - f64.const 0.5 - local.get $5 - f64.mul - local.get $10 - local.get $9 - f64.mul - f64.sub - f64.mul - local.get $5 - f64.sub - local.get $10 - f64.const -0.16666666666666632 - f64.mul - f64.sub - f64.sub - br $~lib/math/sin_kern|inlined.3 - end - unreachable - end - global.set $~lib/math/NativeMath.sincos_sin - local.get $0 - local.set $6 - f64.const 0 - local.set $5 - local.get $6 - local.get $6 - f64.mul - local.set $10 - local.get $10 - local.get $10 - f64.mul - local.set $9 - local.get $10 - f64.const 0.0416666666666666 - local.get $10 - f64.const -0.001388888888887411 - local.get $10 - f64.const 2.480158728947673e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.get $9 - local.get $9 - f64.mul - f64.const -2.7557314351390663e-07 - local.get $10 - f64.const 2.087572321298175e-09 - local.get $10 - f64.const -1.1359647557788195e-11 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $8 - f64.const 0.5 - local.get $10 - f64.mul - local.set $7 - f64.const 1 - local.get $7 - f64.sub - local.set $9 - local.get $9 - f64.const 1 - local.get $9 - f64.sub - local.get $7 - f64.sub - local.get $10 - local.get $8 - f64.mul - local.get $6 - local.get $5 - f64.mul - f64.sub - f64.add - f64.add - global.set $~lib/math/NativeMath.sincos_cos - return - end - local.get $2 - i32.const 2139095040 - i32.ge_u - if - local.get $0 - local.get $0 - f64.sub - local.set $7 - local.get $7 - global.set $~lib/math/NativeMath.sincos_sin - local.get $7 - global.set $~lib/math/NativeMath.sincos_cos - return - end - block $~lib/math/rempio2|inlined.3 (result i32) - local.get $0 - local.set $5 - local.get $1 - local.set $11 - local.get $3 - local.set $4 - local.get $11 - i64.const 32 - i64.shr_u - i32.wrap_i64 - i32.const 2147483647 - i32.and - local.set $12 - local.get $12 - i32.const 1073928572 - i32.lt_u - if - i32.const 1 - local.set $13 - local.get $4 - i32.eqz - if - local.get $5 - f64.const 1.5707963267341256 - f64.sub - local.set $7 - local.get $12 - i32.const 1073291771 - i32.ne - if - local.get $7 - f64.const 6.077100506506192e-11 - f64.sub - local.set $8 - local.get $7 - local.get $8 - f64.sub - f64.const 6.077100506506192e-11 - f64.sub - local.set $9 - else - local.get $7 - f64.const 6.077100506303966e-11 - f64.sub - local.set $7 - local.get $7 - f64.const 2.0222662487959506e-21 - f64.sub - local.set $8 - local.get $7 - local.get $8 - f64.sub - f64.const 2.0222662487959506e-21 - f64.sub - local.set $9 - end - else - local.get $5 - f64.const 1.5707963267341256 - f64.add - local.set $7 - local.get $12 - i32.const 1073291771 - i32.ne - if - local.get $7 - f64.const 6.077100506506192e-11 - f64.add - local.set $8 - local.get $7 - local.get $8 - f64.sub - f64.const 6.077100506506192e-11 - f64.add - local.set $9 - else - local.get $7 - f64.const 6.077100506303966e-11 - f64.add - local.set $7 - local.get $7 - f64.const 2.0222662487959506e-21 - f64.add - local.set $8 - local.get $7 - local.get $8 - f64.sub - f64.const 2.0222662487959506e-21 - f64.add - local.set $9 - end - i32.const -1 - local.set $13 - end - local.get $8 - global.set $~lib/math/rempio2_y0 - local.get $9 - global.set $~lib/math/rempio2_y1 - local.get $13 - br $~lib/math/rempio2|inlined.3 - end - local.get $12 - i32.const 1094263291 - i32.lt_u - if - local.get $5 - f64.const 0.6366197723675814 - f64.mul - f64.nearest - local.set $9 - local.get $5 - local.get $9 - f64.const 1.5707963267341256 - f64.mul - f64.sub - local.set $8 - local.get $9 - f64.const 6.077100506506192e-11 - f64.mul - local.set $7 - local.get $12 - i32.const 20 - i32.shr_u - local.set $13 - local.get $8 - local.get $7 - f64.sub - local.set $10 - local.get $10 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $14 - local.get $13 - local.get $14 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $15 - local.get $15 - i32.const 16 - i32.gt_u - if - local.get $8 - local.set $6 - local.get $9 - f64.const 6.077100506303966e-11 - f64.mul - local.set $7 - local.get $6 - local.get $7 - f64.sub - local.set $8 - local.get $9 - f64.const 2.0222662487959506e-21 - f64.mul - local.get $6 - local.get $8 - f64.sub - local.get $7 - f64.sub - f64.sub - local.set $7 - local.get $8 - local.get $7 - f64.sub - local.set $10 - local.get $10 - i64.reinterpret_f64 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $14 - local.get $13 - local.get $14 - i32.const 20 - i32.shr_u - i32.const 2047 - i32.and - i32.sub - local.set $15 - local.get $15 - i32.const 49 - i32.gt_u - if - local.get $8 - local.set $16 - local.get $9 - f64.const 2.0222662487111665e-21 - f64.mul - local.set $7 - local.get $16 - local.get $7 - f64.sub - local.set $8 - local.get $9 - f64.const 8.4784276603689e-32 - f64.mul - local.get $16 - local.get $8 - f64.sub - local.get $7 - f64.sub - f64.sub - local.set $7 - local.get $8 - local.get $7 - f64.sub - local.set $10 - end - end - local.get $8 - local.get $10 - f64.sub - local.get $7 - f64.sub - local.set $6 - local.get $10 - global.set $~lib/math/rempio2_y0 - local.get $6 - global.set $~lib/math/rempio2_y1 - local.get $9 - i32.trunc_f64_s - br $~lib/math/rempio2|inlined.3 - end - local.get $5 - local.get $11 - call $~lib/math/pio2_large_quot - local.set $15 - i32.const 0 - local.get $15 - i32.sub - local.get $15 - local.get $4 - select - end - local.set $17 - global.get $~lib/math/rempio2_y0 - local.set $18 - global.get $~lib/math/rempio2_y1 - local.set $19 - block $~lib/math/sin_kern|inlined.4 (result f64) - local.get $18 - local.set $9 - local.get $19 - local.set $16 - i32.const 1 - local.set $13 - local.get $9 - local.get $9 - f64.mul - local.set $5 - local.get $5 - local.get $5 - f64.mul - local.set $6 - f64.const 0.00833333333332249 - local.get $5 - f64.const -1.984126982985795e-04 - local.get $5 - f64.const 2.7557313707070068e-06 - f64.mul - f64.add - f64.mul - f64.add - local.get $5 - local.get $6 - f64.mul - f64.const -2.5050760253406863e-08 - local.get $5 - f64.const 1.58969099521155e-10 - f64.mul - f64.add - f64.mul - f64.add - local.set $10 - local.get $5 - local.get $9 - f64.mul - local.set $7 - local.get $13 - i32.eqz - if - local.get $9 - local.get $7 - f64.const -0.16666666666666632 - local.get $5 - local.get $10 - f64.mul - f64.add - f64.mul - f64.add - br $~lib/math/sin_kern|inlined.4 - else - local.get $9 - local.get $5 - f64.const 0.5 - local.get $16 - f64.mul - local.get $7 - local.get $10 - f64.mul - f64.sub - f64.mul - local.get $16 - f64.sub - local.get $7 - f64.const -0.16666666666666632 - f64.mul - f64.sub - f64.sub - br $~lib/math/sin_kern|inlined.4 - end - unreachable - end - local.set $20 - local.get $18 - local.set $16 - local.get $19 - local.set $8 - local.get $16 - local.get $16 - f64.mul - local.set $7 - local.get $7 - local.get $7 - f64.mul - local.set $10 - local.get $7 - f64.const 0.0416666666666666 - local.get $7 - f64.const -0.001388888888887411 - local.get $7 - f64.const 2.480158728947673e-05 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - local.get $10 - local.get $10 - f64.mul - f64.const -2.7557314351390663e-07 - local.get $7 - f64.const 2.087572321298175e-09 - local.get $7 - f64.const -1.1359647557788195e-11 - f64.mul - f64.add - f64.mul - f64.add - f64.mul - f64.add - local.set $6 - f64.const 0.5 - local.get $7 - f64.mul - local.set $5 - f64.const 1 - local.get $5 - f64.sub - local.set $10 - local.get $10 - f64.const 1 - local.get $10 - f64.sub - local.get $5 - f64.sub - local.get $7 - local.get $6 - f64.mul - local.get $16 - local.get $8 - f64.mul - f64.sub - f64.add - f64.add - local.set $21 - local.get $20 - local.set $22 - local.get $21 - local.set $23 - local.get $17 - i32.const 1 - i32.and - if - local.get $21 - local.set $22 - local.get $20 - f64.neg - local.set $23 - end - local.get $17 - i32.const 2 - i32.and - if - local.get $22 - f64.neg - local.set $22 - local.get $23 - f64.neg - local.set $23 - end - local.get $22 - global.set $~lib/math/NativeMath.sincos_sin - local.get $23 - global.set $~lib/math/NativeMath.sincos_cos - ) - (func $std/math/test_sincos (; 171 ;) (type $FUNCSIG$ijjjjji) (param $0 i64) (param $1 i64) (param $2 i64) (param $3 i64) (param $4 i64) (param $5 i32) (result i32) - (local $6 f64) - (local $7 f64) - (local $8 f64) - (local $9 f64) - (local $10 f64) - local.get $0 - f64.reinterpret_i64 - local.set $6 - local.get $1 - f64.reinterpret_i64 - local.set $7 - local.get $3 - f64.reinterpret_i64 - local.set $8 - local.get $2 - f64.reinterpret_i64 - local.set $9 - local.get $4 - f64.reinterpret_i64 - local.set $10 - local.get $6 - call $~lib/math/NativeMath.sincos - global.get $~lib/math/NativeMath.sincos_sin - local.get $7 - local.get $9 - local.get $5 - call $std/math/check - if (result i32) - global.get $~lib/math/NativeMath.sincos_cos - local.get $8 - local.get $10 - local.get $5 - call $std/math/check - else - i32.const 0 - end - ) - (func $~lib/math/dtoi32 (; 172 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - (local $1 i32) - (local $2 i64) - (local $3 i64) - (local $4 i64) - i32.const 0 - local.set $1 - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $2 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $3 - local.get $3 - i64.const 1053 - i64.le_u - if - local.get $0 - i32.trunc_f64_s - local.set $1 - else - local.get $3 - i64.const 1106 - i64.le_u - if - local.get $2 - i64.const 1 - i64.const 52 - i64.shl - i64.const 1 - i64.sub - i64.and - i64.const 1 - i64.const 52 - i64.shl - i64.or - local.set $4 - local.get $4 - local.get $3 - i64.const 1023 - i64.sub - i64.const 52 - i64.sub - i64.const 32 - i64.add - i64.shl - local.set $4 - local.get $4 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $1 - i32.const 0 - local.get $1 - i32.sub - local.get $1 - local.get $2 - i64.const 63 - i64.shr_u - i64.const 0 - i64.ne - select - local.set $1 - end - end - local.get $1 - return - ) - (func $~lib/math/NativeMath.imul (; 173 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - local.get $0 - local.get $1 - f64.add - call $~lib/number/isFinite - i32.eqz - if - f64.const 0 - return - end - local.get $0 - call $~lib/math/dtoi32 - local.get $1 - call $~lib/math/dtoi32 - i32.mul - f64.convert_i32_s - ) - (func $~lib/math/NativeMath.clz32 (; 174 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) - local.get $0 - call $~lib/number/isFinite - i32.eqz - if - f64.const 32 - return - end - local.get $0 - call $~lib/math/dtoi32 - i32.clz - f64.convert_i32_s - ) - (func $~lib/math/ipow64 (; 175 ;) (type $FUNCSIG$jji) (param $0 i64) (param $1 i32) (result i64) - (local $2 i64) - (local $3 i32) - (local $4 i32) - i64.const 1 - local.set $2 - local.get $1 - i32.const 0 - i32.lt_s - if - i64.const 0 - return - end - block $break|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $1 - local.set $3 - local.get $3 - i32.const 0 - i32.eq - br_if $case0|0 - local.get $3 - i32.const 1 - i32.eq - br_if $case1|0 - local.get $3 - i32.const 2 - i32.eq - br_if $case2|0 - br $break|0 - end - i64.const 1 - return - end - local.get $0 - return - end - local.get $0 - local.get $0 - i64.mul - return - end - i32.const 32 - local.get $1 - i32.clz - i32.sub - local.set $3 - local.get $3 - i32.const 6 - i32.le_s - if - block $break|1 - block $case5|1 - block $case4|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $3 - local.set $4 - local.get $4 - i32.const 6 - i32.eq - br_if $case0|1 - local.get $4 - i32.const 5 - i32.eq - br_if $case1|1 - local.get $4 - i32.const 4 - i32.eq - br_if $case2|1 - local.get $4 - i32.const 3 - i32.eq - br_if $case3|1 - local.get $4 - i32.const 2 - i32.eq - br_if $case4|1 - local.get $4 - i32.const 1 - i32.eq - br_if $case5|1 - br $break|1 - end - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i64.mul - local.set $2 - end - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - i64.mul - local.set $0 - end - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i64.mul - local.set $2 - end - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - i64.mul - local.set $0 - end - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i64.mul - local.set $2 - end - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - i64.mul - local.set $0 - end - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i64.mul - local.set $2 - end - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - i64.mul - local.set $0 - end - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i64.mul - local.set $2 - end - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - i64.mul - local.set $0 - end - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i64.mul - local.set $2 - end - end - local.get $2 - return - end - block $break|2 - loop $continue|2 - local.get $1 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|2 - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i64.mul - local.set $2 - end - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - i64.mul - local.set $0 - br $continue|2 - end - unreachable - end - local.get $2 - ) - (func $~lib/math/ipow32f (; 176 ;) (type $FUNCSIG$ffi) (param $0 f32) (param $1 i32) (result f32) - (local $2 i32) - (local $3 f32) - local.get $1 - i32.const 31 - i32.shr_s - local.set $2 - local.get $1 - local.get $2 - i32.add - local.get $2 - i32.xor - local.set $1 - f32.const 1 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i32.eqz - br_if $break|0 - local.get $3 - local.get $0 - f32.const 1 - local.get $1 - i32.const 1 - i32.and - select - f32.mul - local.set $3 - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - f32.mul - local.set $0 - br $continue|0 - end - unreachable - end - local.get $2 - if (result f32) - f32.const 1 - local.get $3 - f32.div - else - local.get $3 - end - ) - (func $~lib/math/ipow64f (; 177 ;) (type $FUNCSIG$ddi) (param $0 f64) (param $1 i32) (result f64) - (local $2 i32) - (local $3 f64) - local.get $1 - i32.const 31 - i32.shr_s - local.set $2 - local.get $1 - local.get $2 - i32.add - local.get $2 - i32.xor - local.set $1 - f64.const 1 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i32.eqz - br_if $break|0 - local.get $3 - local.get $0 - f64.const 1 - local.get $1 - i32.const 1 - i32.and - select - f64.mul - local.set $3 - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - f64.mul - local.set $0 - br $continue|0 - end - unreachable - end - local.get $2 - if (result f64) - f64.const 1 - local.get $3 - f64.div - else - local.get $3 - end - ) - (func $start:std/math (; 178 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 f64) - (local $2 i64) - (local $3 f32) - f64.const 2.718281828459045 - global.get $~lib/bindings/Math/E - f64.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 111 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6931471805599453 - global.get $~lib/bindings/Math/LN2 - f64.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 112 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.302585092994046 - global.get $~lib/bindings/Math/LN10 - f64.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 113 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.4426950408889634 - global.get $~lib/bindings/Math/LOG2E - f64.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 114 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.141592653589793 - global.get $~lib/bindings/Math/PI - f64.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 115 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7071067811865476 - global.get $~lib/bindings/Math/SQRT1_2 - f64.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 116 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.4142135623730951 - global.get $~lib/bindings/Math/SQRT2 - f64.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 117 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.7182817459106445 - global.get $~lib/bindings/Math/E - f32.demote_f64 - f32.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 119 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6931471824645996 - global.get $~lib/bindings/Math/LN2 - f32.demote_f64 - f32.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 120 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.3025851249694824 - global.get $~lib/bindings/Math/LN10 - f32.demote_f64 - f32.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 121 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.4426950216293335 - global.get $~lib/bindings/Math/LOG2E - f32.demote_f64 - f32.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 122 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 3.1415927410125732 - global.get $~lib/bindings/Math/PI - f32.demote_f64 - f32.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 123 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7071067690849304 - global.get $~lib/bindings/Math/SQRT1_2 - f32.demote_f64 - f32.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 124 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.4142135381698608 - global.get $~lib/bindings/Math/SQRT2 - f32.demote_f64 - f32.const 0 - i32.const 0 - call $std/math/check - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 125 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - i32.const -2 - f64.const -2.01671209764492 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 136 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - i32.const -1 - f64.const 2.1726199246691524 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 137 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - i32.const 0 - f64.const -8.38143342755525 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 138 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - i32.const 1 - f64.const -13.063347163826968 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 139 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - i32.const 2 - f64.const 37.06822786789034 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 140 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - i32.const 3 - f64.const 5.295887184796036 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 141 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - i32.const 4 - f64.const -6.505662758165685 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 142 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - i32.const 5 - f64.const 17.97631187906317 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 143 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - i32.const 6 - f64.const 49.545746981843436 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 144 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - i32.const 7 - f64.const -86.88175393784351 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 145 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - i32.const 2147483647 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 148 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - i32.const -2147483647 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 149 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - i32.const 2147483647 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 150 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - i32.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 151 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - i32.const 0 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 152 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - i32.const 0 - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 153 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - i32.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 154 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - i32.const 1 - f64.const 2 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 155 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - i32.const -1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 156 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - i32.const 2147483647 - f64.const inf - f64.const 0 - i32.const 17 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 157 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - i32.const 1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 158 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - i32.const 2147483647 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 159 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - i32.const -2147483647 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 160 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - i32.const 2147483647 - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 161 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8988465674311579538646525e283 - i32.const -2097 - f64.const 5e-324 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 162 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5e-324 - i32.const 2097 - f64.const 8988465674311579538646525e283 - f64.const 0 - i32.const 0 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 163 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.000244140625 - i32.const -1074 - f64.const 5e-324 - f64.const 0 - i32.const 9 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 164 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7499999999999999 - i32.const -1073 - f64.const 5e-324 - f64.const 0 - i32.const 9 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 165 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5000000000000012 - i32.const -1024 - f64.const 2.781342323134007e-309 - f64.const 0 - i32.const 9 - call $std/math/test_scalbn - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 166 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - i32.const -2 - f32.const -2.016712188720703 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 175 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - i32.const -1 - f32.const 2.1726198196411133 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 176 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - i32.const 0 - f32.const -8.381433486938477 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 177 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - i32.const 1 - f32.const -13.063346862792969 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 178 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - i32.const 2 - f32.const 37.06822967529297 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 179 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - i32.const 3 - f32.const 5.295886993408203 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 180 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - i32.const 4 - f32.const -6.50566291809082 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 181 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - i32.const 5 - f32.const 17.9763126373291 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 182 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - i32.const 6 - f32.const 49.545745849609375 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 183 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - i32.const 7 - f32.const -86.88175201416016 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 184 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - i32.const 2147483647 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 187 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - i32.const -2147483647 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 188 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - i32.const 2147483647 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 189 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - i32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 190 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - i32.const 0 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 191 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - i32.const 0 - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 192 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - i32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 193 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - i32.const 1 - f32.const 2 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 194 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - i32.const -1 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 195 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - i32.const 2147483647 - f32.const inf - f32.const 0 - i32.const 17 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 196 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - i32.const 1 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 197 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - i32.const 2147483647 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 198 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - i32.const -2147483647 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 199 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - i32.const 2147483647 - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 200 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1701411834604692317316873e14 - i32.const -276 - f32.const 1.401298464324817e-45 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 201 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.401298464324817e-45 - i32.const 276 - f32.const 1701411834604692317316873e14 - f32.const 0 - i32.const 0 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 202 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.000244140625 - i32.const -149 - f32.const 1.401298464324817e-45 - f32.const 0 - i32.const 9 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 203 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7499999403953552 - i32.const -148 - f32.const 1.401298464324817e-45 - f32.const 0 - i32.const 9 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 204 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5000006556510925 - i32.const -128 - f32.const 1.4693693398263237e-39 - f32.const 0 - i32.const 9 - call $std/math/test_scalbnf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 205 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const 8.06684839057968 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 217 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 4.345239849338305 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 218 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const 8.38143342755525 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 219 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const 6.531673581913484 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 220 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 9.267056966972586 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 221 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.6619858980995045 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 222 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const 0.4066039223853553 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 223 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.5617597462207241 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 224 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.7741522965913037 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 225 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const 0.6787637026394024 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 226 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 229 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 230 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 231 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 232 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 233 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 234 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_abs - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 235 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const 8.066848754882812 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 244 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 4.345239639282227 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 245 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const 8.381433486938477 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 246 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const 6.531673431396484 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 247 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 9.267057418823242 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 248 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.6619858741760254 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 249 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const 0.40660393238067627 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 250 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.5617597699165344 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 251 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.7741522789001465 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 252 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const 0.6787636876106262 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 253 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 256 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 257 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 258 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 259 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 260 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 261 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_absf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 262 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 274 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 275 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 276 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 277 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 278 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.8473310828433507 - f64.const -0.41553276777267456 - i32.const 1 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 279 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const 1.989530071088669 - f64.const 0.4973946213722229 - i32.const 1 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 280 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.9742849645674904 - f64.const -0.4428897500038147 - i32.const 1 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 281 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.6854215158636222 - f64.const -0.12589527666568756 - i32.const 1 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 282 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const 2.316874138205964 - f64.const -0.17284949123859406 - i32.const 1 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 283 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 1.5707963267948966 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 286 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 3.141592653589793 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 287 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 288 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0000000000000002 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 289 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.0000000000000002 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 290 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 291 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 292 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 293 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5309227209592985 - f64.const 2.1304853799705463 - f64.const 0.1391008496284485 - i32.const 1 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 294 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.4939556746399746 - f64.const 1.0541629875851946 - f64.const 0.22054767608642578 - i32.const 1 - call $std/math/test_acos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 295 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 304 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 305 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 306 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 307 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 308 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.8473311066627502 - f32.const -0.13588131964206696 - i32.const 1 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 309 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const 1.989530086517334 - f32.const 0.03764917701482773 - i32.const 1 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 310 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.9742849469184875 - f32.const 0.18443739414215088 - i32.const 1 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 311 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.6854215264320374 - f32.const -0.29158344864845276 - i32.const 1 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 312 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const 2.3168740272521973 - f32.const -0.3795364499092102 - i32.const 1 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 313 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 1.5707963705062866 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 316 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 3.1415927410125732 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 317 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 318 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.0000001192092896 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 319 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.0000001192092896 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 320 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 321 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 322 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 323 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.49965065717697144 - f32.const 1.0476008653640747 - f32.const -0.21161814033985138 - i32.const 1 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 324 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5051405429840088 - f32.const 2.1003410816192627 - f32.const -0.20852705836296082 - i32.const 1 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 325 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5189794898033142 - f32.const 2.116452932357788 - f32.const -0.14600826799869537 - i32.const 1 - call $std/math/test_acosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 326 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 338 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 2.1487163980597503 - f64.const -0.291634738445282 - i32.const 1 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 339 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 340 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 341 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 2.91668914109908 - f64.const -0.24191908538341522 - i32.const 1 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 342 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 343 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 344 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 345 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 346 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 347 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 350 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 351 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 352 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9999923706054688 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 353 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 354 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 355 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 356 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1060831199926429 - f64.const 0.4566373404384803 - f64.const -0.29381608963012695 - i32.const 1 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 372 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1089809557628658 - f64.const 0.4627246859959428 - f64.const -0.3990095555782318 - i32.const 1 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 374 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1169429159875521 - f64.const 0.47902433134075284 - f64.const -0.321674108505249 - i32.const 1 - call $std/math/test_acosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 375 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 384 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 2.148716449737549 - f32.const 0.4251045286655426 - i32.const 1 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 385 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 386 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 387 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 2.916689157485962 - f32.const -0.1369788944721222 - i32.const 1 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 388 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 389 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 390 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 391 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 392 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 393 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 396 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 397 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 398 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.9999923706054688 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 399 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 400 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 401 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 402 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1125899906842624 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_acoshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 403 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 415 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 416 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 417 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 418 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 419 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.7234652439515459 - f64.const -0.13599912822246552 - i32.const 1 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 420 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0.41873374429377225 - f64.const -0.09264230728149414 - i32.const 1 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 421 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.5965113622274062 - f64.const -0.10864213854074478 - i32.const 1 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 422 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.8853748109312743 - f64.const -0.4256366193294525 - i32.const 1 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 423 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -0.7460778114110673 - f64.const 0.13986606895923615 - i32.const 1 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 424 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1.5707963267948966 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 427 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1.5707963267948966 - f64.const 0.27576595544815063 - i32.const 1 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 428 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 429 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 430 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0000000000000002 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 431 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.0000000000000002 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 432 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 433 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 434 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 435 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5073043929119148 - f64.const 0.5320538997772349 - f64.const -0.16157317161560059 - i32.const 1 - call $std/math/test_asin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 436 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 445 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 446 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 447 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 448 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 449 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.7234652042388916 - f32.const -0.1307632476091385 - i32.const 1 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 450 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0.41873374581336975 - f32.const 0.3161141574382782 - i32.const 1 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 451 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.5965113639831543 - f32.const -0.4510819613933563 - i32.const 1 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 452 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.8853747844696045 - f32.const 0.02493886835873127 - i32.const 1 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 453 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -0.7460777759552002 - f32.const 0.2515012323856354 - i32.const 1 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 454 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1.5707963705062866 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 457 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1.5707963705062866 - f32.const -0.3666777014732361 - i32.const 1 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 458 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 459 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 460 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.0000001192092896 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 461 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.0000001192092896 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 462 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 463 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 464 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 465 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5004770159721375 - f32.const 0.5241496562957764 - f32.const -0.29427099227905273 - i32.const 1 - call $std/math/test_asinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 466 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const -2.784729878387861 - f64.const -0.4762189984321594 - i32.const 1 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 478 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 2.175213389013164 - f64.const -0.02728751301765442 - i32.const 1 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 479 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -2.822706083697696 - f64.const 0.20985257625579834 - i32.const 1 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 480 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const -2.575619446591922 - f64.const 0.3113134205341339 - i32.const 1 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 481 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 2.9225114951048674 - f64.const 0.4991756081581116 - i32.const 1 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 482 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.6212462762707166 - f64.const -0.4697347581386566 - i32.const 1 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 483 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0.39615990393192035 - f64.const -0.40814438462257385 - i32.const 1 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 484 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.5357588870255474 - f64.const 0.3520713150501251 - i32.const 1 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 485 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.7123571263197349 - f64.const 0.13371451199054718 - i32.const 1 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 486 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -0.635182348903198 - f64.const 0.04749670997262001 - i32.const 1 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 487 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 490 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 491 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 492 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 493 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_asinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 494 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const -2.7847299575805664 - f32.const -0.14418013393878937 - i32.const 1 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 523 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 2.17521333694458 - f32.const -0.020796965807676315 - i32.const 1 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 524 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -2.8227059841156006 - f32.const 0.44718533754348755 - i32.const 1 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 525 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const -2.5756194591522217 - f32.const -0.14822272956371307 - i32.const 1 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 526 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 2.922511577606201 - f32.const 0.14270681142807007 - i32.const 1 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 527 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.6212462782859802 - f32.const 0.3684912919998169 - i32.const 1 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 528 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0.39615991711616516 - f32.const -0.13170306384563446 - i32.const 1 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 529 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.535758912563324 - f32.const 0.08184859901666641 - i32.const 1 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 530 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.7123571038246155 - f32.const -0.14270737767219543 - i32.const 1 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 531 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -0.6351823210716248 - f32.const 0.2583143711090088 - i32.const 1 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 532 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 535 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 536 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 537 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 538 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_asinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 539 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const -1.4474613762633468 - f64.const 0.14857111871242523 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 551 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 1.344597927114538 - f64.const -0.08170335739850998 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 552 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -1.4520463463295539 - f64.const -0.07505480200052261 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 553 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const -1.4188758658752532 - f64.const -0.057633496820926666 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 554 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 1.463303145448706 - f64.const 0.1606956422328949 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 555 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.5847550670238325 - f64.const 0.4582556486129761 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 556 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0.3861864177552131 - f64.const -0.2574281692504883 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 557 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.5118269531628881 - f64.const -0.11444277316331863 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 558 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.6587802431653822 - f64.const -0.11286488175392151 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 559 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -0.5963307826973472 - f64.const -0.2182842344045639 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 560 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 563 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 564 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0.7853981633974483 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 565 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -0.7853981633974483 - f64.const 0.27576595544815063 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 566 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 1.5707963267948966 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 567 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -1.5707963267948966 - f64.const 0.27576595544815063 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 568 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 569 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6929821535674624 - f64.const 0.6060004555152562 - f64.const -0.17075790464878082 - i32.const 1 - call $std/math/test_atan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 570 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const -1.4474613666534424 - f32.const 0.12686480581760406 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 579 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 1.3445979356765747 - f32.const 0.16045434772968292 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 580 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -1.4520463943481445 - f32.const -0.39581751823425293 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 581 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const -1.418875813484192 - f32.const 0.410570353269577 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 582 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 1.4633032083511353 - f32.const 0.48403501510620117 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 583 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.5847550630569458 - f32.const 0.2125193476676941 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 584 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0.386186420917511 - f32.const 0.18169628083705902 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 585 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.5118269920349121 - f32.const 0.3499770760536194 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 586 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.6587802171707153 - f32.const -0.2505330741405487 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 587 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -0.5963307619094849 - f32.const 0.17614826560020447 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 588 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 591 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 592 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0.7853981852531433 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 593 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -0.7853981852531433 - f32.const -0.3666777014732361 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 594 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 1.5707963705062866 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 595 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -1.5707963705062866 - f32.const -0.3666777014732361 - i32.const 1 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 596 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_atanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 597 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 609 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 610 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 611 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 612 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 613 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.7963404371347943 - f64.const 0.21338365972042084 - i32.const 1 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 614 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0.43153570730602897 - f64.const -0.4325666129589081 - i32.const 1 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 615 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.6354006111644578 - f64.const -0.06527865678071976 - i32.const 1 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 616 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 1.0306085575277995 - f64.const 0.14632052183151245 - i32.const 1 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 617 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -0.8268179645205255 - f64.const 0.1397128701210022 - i32.const 1 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 618 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 621 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 622 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 623 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 624 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 625 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const inf - f64.const 0 - i32.const 4 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 626 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -inf - f64.const 0 - i32.const 4 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 627 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0000152587890625 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 628 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.0000152587890625 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 629 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.3552527156068805e-20 - f64.const 1.3552527156068805e-20 - f64.const 0 - i32.const 1 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 630 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.332636185032189e-302 - f64.const 9.332636185032189e-302 - f64.const 0 - i32.const 1 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 631 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5.562684646268003e-309 - f64.const 5.562684646268003e-309 - f64.const 0 - i32.const 9 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 632 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -5.562684646268003e-309 - f64.const -5.562684646268003e-309 - f64.const 0 - i32.const 9 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 633 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8988465674311579538646525e283 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_atanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 634 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 643 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 644 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 645 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 646 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 647 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.7963404059410095 - f32.const 0.19112196564674377 - i32.const 1 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 648 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0.4315357208251953 - f32.const -0.05180925130844116 - i32.const 1 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 649 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.635400652885437 - f32.const 0.11911056190729141 - i32.const 1 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 650 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 1.0306085348129272 - f32.const 0.1798270344734192 - i32.const 1 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 651 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -0.8268179297447205 - f32.const 0.11588983237743378 - i32.const 1 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 652 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 655 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 656 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 657 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 658 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 659 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const inf - f32.const 0 - i32.const 4 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 660 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -inf - f32.const 0 - i32.const 4 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 661 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.0000152587890625 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 662 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.0000152587890625 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 663 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.3552527156068805e-20 - f32.const 1.3552527156068805e-20 - f32.const 0 - i32.const 1 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 664 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.888609052210118e-31 - f32.const 7.888609052210118e-31 - f32.const 0 - i32.const 1 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 665 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.938735877055719e-39 - f32.const 2.938735877055719e-39 - f32.const 0 - i32.const 9 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 666 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.938735877055719e-39 - f32.const -2.938735877055719e-39 - f32.const 0 - i32.const 9 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 667 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1701411834604692317316873e14 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_atanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 668 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const 4.535662560676869 - f64.const -1.0585895402489023 - f64.const 0.09766263514757156 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 680 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const -8.88799136300345 - f64.const 2.6868734126013067 - f64.const 0.35833948850631714 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 681 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -2.763607337379588 - f64.const -1.889300091849528 - f64.const -0.46235957741737366 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 682 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const 4.567535276842744 - f64.const -0.9605469021111489 - f64.const -0.21524477005004883 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 683 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 4.811392084359796 - f64.const 1.0919123946142109 - f64.const 0.3894443213939667 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 684 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.450045556060236 - f64.const 0.6620717923376739 - f64.const -1.468508500616424 - f64.const -0.448591411113739 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 685 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.858890253041697 - f64.const 0.05215452675006225 - f64.const 1.5641600512601268 - f64.const 0.3784842789173126 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 686 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.792054511984896 - f64.const 7.67640268511754 - f64.const -0.10281658910678508 - f64.const -0.13993260264396667 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 687 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.615702673197924 - f64.const 2.0119025790324803 - f64.const 0.29697974004493516 - f64.const 0.44753071665763855 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 688 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5587586823609152 - f64.const 0.03223983060263804 - f64.const -1.5131612053303916 - f64.const 0.39708876609802246 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 689 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 692 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -0 - f64.const 3.141592653589793 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 693 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -1 - f64.const 3.141592653589793 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 694 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -inf - f64.const 3.141592653589793 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 695 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 696 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 697 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 698 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const -3.141592653589793 - f64.const 0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 699 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -1 - f64.const -3.141592653589793 - f64.const 0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 700 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -inf - f64.const -3.141592653589793 - f64.const 0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 701 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 702 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const inf - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 703 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 0 - f64.const -1.5707963267948966 - f64.const 0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 704 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -0 - f64.const -1.5707963267948966 - f64.const 0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 705 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0 - f64.const 1.5707963267948966 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 706 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -0 - f64.const 1.5707963267948966 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 707 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const inf - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 708 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 709 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -inf - f64.const -3.141592653589793 - f64.const 0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 710 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -inf - f64.const 3.141592653589793 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 711 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 0 - f64.const 1.5707963267948966 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 712 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 0 - f64.const -1.5707963267948966 - f64.const 0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 713 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0.7853981633974483 - f64.const -0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 714 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -inf - f64.const 2.356194490192345 - f64.const -0.20682445168495178 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 715 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const inf - f64.const -0.7853981633974483 - f64.const 0.27576595544815063 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 716 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const -2.356194490192345 - f64.const 0.20682445168495178 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 717 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1125369292536007e-308 - f64.const 1 - f64.const 1.1125369292536007e-308 - f64.const 0 - i32.const 9 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 718 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 8988465674311579538646525e283 - f64.const 1.1125369292536007e-308 - f64.const 0 - i32.const 9 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 719 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5 - f64.const 8988465674311579538646525e283 - f64.const 1.668805393880401e-308 - f64.const 0 - i32.const 9 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 720 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5 - f64.const -8988465674311579538646525e283 - f64.const 3.141592653589793 - f64.const 0 - i32.const 1 - call $std/math/test_atan2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 721 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const 4.535662651062012 - f32.const -1.0585895776748657 - f32.const -0.22352588176727295 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 730 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const -8.887990951538086 - f32.const 2.686873435974121 - f32.const 0.09464472532272339 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 731 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -2.7636072635650635 - f32.const -1.8893001079559326 - f32.const -0.21941901743412018 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 732 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const 4.567535400390625 - f32.const -0.9605468511581421 - f32.const 0.46015575528144836 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 733 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 4.811392307281494 - f32.const 1.0919123888015747 - f32.const -0.05708503723144531 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 734 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.450045585632324 - f32.const 0.6620717644691467 - f32.const -1.4685084819793701 - f32.const 0.19611206650733948 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 735 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.858890056610107 - f32.const 0.052154526114463806 - f32.const 1.5641601085662842 - f32.const 0.48143187165260315 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 736 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.7920545339584351 - f32.const 7.676402568817139 - f32.const -0.10281659662723541 - f32.const -0.4216274917125702 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 737 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6157026886940002 - f32.const 2.0119025707244873 - f32.const 0.29697975516319275 - f32.const 0.2322007566690445 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 738 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5587586760520935 - f32.const 0.03223983198404312 - f32.const -1.5131611824035645 - f32.const 0.16620726883411407 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 739 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 742 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -0 - f32.const 3.1415927410125732 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 743 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -1 - f32.const 3.1415927410125732 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 744 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -inf - f32.const 3.1415927410125732 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 745 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 746 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 747 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 748 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const -3.1415927410125732 - f32.const -0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 749 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -1 - f32.const -3.1415927410125732 - f32.const -0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 750 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -inf - f32.const -3.1415927410125732 - f32.const -0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 751 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 752 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const inf - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 753 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 0 - f32.const -1.5707963705062866 - f32.const -0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 754 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -0 - f32.const -1.5707963705062866 - f32.const -0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 755 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0 - f32.const 1.5707963705062866 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 756 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -0 - f32.const 1.5707963705062866 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 757 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const inf - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 758 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 759 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -inf - f32.const -3.1415927410125732 - f32.const -0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 760 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -inf - f32.const 3.1415927410125732 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 761 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 0 - f32.const 1.5707963705062866 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 762 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 0 - f32.const -1.5707963705062866 - f32.const -0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 763 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0.7853981852531433 - f32.const 0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 764 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -inf - f32.const 2.356194496154785 - f32.const 0.02500828728079796 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 765 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const inf - f32.const -0.7853981852531433 - f32.const -0.3666777014732361 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 766 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const -2.356194496154785 - f32.const -0.02500828728079796 - i32.const 1 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 767 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 5.877471754111438e-39 - f32.const 1 - f32.const 5.877471754111438e-39 - f32.const 0 - i32.const 9 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 768 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1701411834604692317316873e14 - f32.const 5.877471754111438e-39 - f32.const 0 - i32.const 9 - call $std/math/test_atan2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 769 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const -2.0055552545020245 - f64.const 0.46667951345443726 - i32.const 1 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 781 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 1.6318162410515635 - f64.const -0.08160271495580673 - i32.const 1 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 782 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -2.031293910673361 - f64.const -0.048101816326379776 - i32.const 1 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 783 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const -1.8692820012204925 - f64.const 0.08624018728733063 - i32.const 1 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 784 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 2.100457720859702 - f64.const -0.2722989022731781 - i32.const 1 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 785 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.8715311470455973 - f64.const 0.4414918124675751 - i32.const 1 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 786 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0.740839030300223 - f64.const 0.016453813761472702 - i32.const 1 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 787 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.8251195400559286 - f64.const 0.30680638551712036 - i32.const 1 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 788 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.9182102478959914 - f64.const 0.06543998420238495 - i32.const 1 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 789 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -0.8788326906580094 - f64.const -0.2016713172197342 - i32.const 1 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 790 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 793 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 794 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 795 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 796 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 797 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.313225746154785e-10 - f64.const 0.0009765625 - f64.const 0 - i32.const 0 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 798 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -9.313225746154785e-10 - f64.const -0.0009765625 - f64.const 0 - i32.const 0 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 799 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 800 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 801 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8 - f64.const 2 - f64.const 0 - i32.const 0 - call $std/math/test_cbrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 802 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const -2.0055553913116455 - f32.const -0.44719240069389343 - i32.const 1 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 811 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 1.6318162679672241 - f32.const 0.44636252522468567 - i32.const 1 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 812 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -2.0312938690185547 - f32.const 0.19483426213264465 - i32.const 1 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 813 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const -1.8692820072174072 - f32.const -0.17075514793395996 - i32.const 1 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 814 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 2.1004576683044434 - f32.const -0.36362043023109436 - i32.const 1 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 815 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.8715311288833618 - f32.const -0.12857209146022797 - i32.const 1 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 816 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0.7408390641212463 - f32.const -0.4655757546424866 - i32.const 1 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 817 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.8251195549964905 - f32.const 0.05601907894015312 - i32.const 1 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 818 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.9182102680206299 - f32.const 0.45498204231262207 - i32.const 1 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 819 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -0.8788326978683472 - f32.const -0.22978967428207397 - i32.const 1 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 820 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 823 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 824 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 825 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 826 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 827 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.313225746154785e-10 - f32.const 0.0009765625 - f32.const 0 - i32.const 0 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 828 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -9.313225746154785e-10 - f32.const -0.0009765625 - f32.const 0 - i32.const 0 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 829 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 830 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 831 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 8 - f32.const 2 - f32.const 0 - i32.const 0 - call $std/math/test_cbrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 832 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const -8 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 844 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 5 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 845 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -8 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 846 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const -6 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 847 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 10 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 848 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 849 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 850 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 851 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 852 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 853 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 856 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 857 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 858 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 859 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 860 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 861 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 862 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 863 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 864 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0000152587890625 - f64.const 2 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 865 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.0000152587890625 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 866 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9999923706054688 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 867 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.9999923706054688 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 868 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.888609052210118e-31 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 869 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.888609052210118e-31 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 870 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 871 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 872 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 873 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 874 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 875 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 876 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 877 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 878 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 879 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0000152587890625 - f64.const 2 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 880 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.0000152587890625 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 881 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9999923706054688 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 882 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.9999923706054688 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 883 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.888609052210118e-31 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 884 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.888609052210118e-31 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 885 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 886 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 887 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 888 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 889 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 890 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 891 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 892 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 893 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 894 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0000152587890625 - f64.const 2 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 895 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.0000152587890625 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 896 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9999923706054688 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 897 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.9999923706054688 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 898 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.888609052210118e-31 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 899 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.888609052210118e-31 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_ceil - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 900 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const -8 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 909 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 5 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 910 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -8 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 911 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const -6 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 912 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 10 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 913 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 914 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 915 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 916 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 917 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 918 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 921 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 922 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 923 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 924 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 925 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 926 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 927 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 928 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 929 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.0000152587890625 - f32.const 2 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 930 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.0000152587890625 - f32.const -1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 931 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.9999923706054688 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 932 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.9999923706054688 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 933 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.888609052210118e-31 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 934 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -7.888609052210118e-31 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 935 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 936 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 937 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 938 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 939 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 940 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 941 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 942 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 943 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 944 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.0000152587890625 - f32.const 2 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 945 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.0000152587890625 - f32.const -1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 946 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.9999923706054688 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 947 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.9999923706054688 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 948 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.888609052210118e-31 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 949 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -7.888609052210118e-31 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 950 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 951 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 952 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 953 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 954 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 955 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 956 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 957 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 958 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 959 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.0000152587890625 - f32.const 2 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 960 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.0000152587890625 - f32.const -1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 961 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.9999923706054688 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 962 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.9999923706054688 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 963 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.888609052210118e-31 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 964 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -7.888609052210118e-31 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_ceilf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 965 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const -0.21126281599887137 - f64.const -0.10962469130754471 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 976 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const -0.35895602297578955 - f64.const -0.10759828239679337 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 977 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -0.503333091765516 - f64.const -0.021430473774671555 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 978 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const 0.9692853212503283 - f64.const -0.4787876307964325 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 979 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const -0.9875878064788627 - f64.const 0.4880668818950653 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 980 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.7887730869248576 - f64.const 0.12708666920661926 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 981 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const 0.9184692397007294 - f64.const -0.26120713353157043 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 982 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.8463190467415896 - f64.const -0.302586168050766 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 983 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.7150139289952383 - f64.const -0.08537746220827103 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 984 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const 0.7783494994757447 - f64.const 0.30890750885009766 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 985 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 988 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 989 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 990 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 991 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 992 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0.5403023058681398 - f64.const 0.4288286566734314 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 993 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2 - f64.const -0.4161468365471424 - f64.const -0.35859397053718567 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 994 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3 - f64.const -0.9899924966004454 - f64.const 0.3788451552391052 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 995 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4 - f64.const -0.6536436208636119 - f64.const -0.23280560970306396 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 996 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5 - f64.const 0.28366218546322625 - f64.const -0.3277357816696167 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 997 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.1 - f64.const 0.9950041652780258 - f64.const 0.49558526277542114 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 998 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.2 - f64.const 0.9800665778412416 - f64.const -0.02407640963792801 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 999 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.3 - f64.const 0.955336489125606 - f64.const -0.37772229313850403 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1000 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.4 - f64.const 0.9210609940028851 - f64.const 0.25818485021591187 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1001 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const 0.8775825618903728 - f64.const 0.3839152157306671 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1002 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.3641409746639015e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1003 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1820704873319507e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1004 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5e-324 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1005 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -5e-324 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1006 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -3.14 - f64.const -0.9999987317275395 - f64.const 0.3855516016483307 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1007 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8988465674311579538646525e283 - f64.const -0.826369834614148 - f64.const -0.3695965111255646 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1008 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - f64.const -0.9999876894265599 - f64.const 0.23448343575000763 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1009 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8988465674311579538646525e283 - f64.const -0.826369834614148 - f64.const -0.3695965111255646 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1010 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.14 - f64.const -0.9999987317275395 - f64.const 0.3855516016483307 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1011 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.1415 - f64.const -0.9999999957076562 - f64.const -0.30608975887298584 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1012 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.141592 - f64.const -0.9999999999997864 - f64.const 0.15403328835964203 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1013 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.14159265 - f64.const -1 - f64.const -0.02901807427406311 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1014 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.1415926535 - f64.const -1 - f64.const -1.8155848010792397e-05 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1015 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.141592653589 - f64.const -1 - f64.const -1.4169914130945926e-09 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1016 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.14159265358979 - f64.const -1 - f64.const -2.350864897985184e-14 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1017 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.141592653589793 - f64.const -1 - f64.const -3.377158741883318e-17 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1018 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.57 - f64.const 7.963267107332633e-04 - f64.const 0.2968159317970276 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1019 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.570796 - f64.const 3.2679489653813835e-07 - f64.const -0.32570895552635193 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1020 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5707963267 - f64.const 9.489659630678013e-11 - f64.const -0.27245646715164185 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1021 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.57079632679489 - f64.const 6.722570487708307e-15 - f64.const -0.10747683793306351 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1022 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5707963267948966 - f64.const 6.123233995736766e-17 - f64.const 0.12148229777812958 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1023 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6700635199486106 - f64.const 0.7837822193016158 - f64.const -0.07278502732515335 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1024 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5343890189437553 - f64.const 0.8605799719039517 - f64.const -0.48434028029441833 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1025 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.43999702754890085 - f64.const 0.9047529293001976 - f64.const 0.029777472838759422 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1026 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9902840844687313 - f64.const 0.5484523364480768 - f64.const 0.19765280187129974 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1027 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.45381447534338915 - f64.const 0.8987813902263783 - f64.const -0.017724866047501564 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1028 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.4609888813583589 - f64.const 0.8956130474713057 - f64.const 0.36449819803237915 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1029 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9285434097956422 - f64.const 0.5990009794292984 - f64.const -0.2899416387081146 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1030 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9109092124488352 - f64.const 0.6130276692774378 - f64.const -0.49353134632110596 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1031 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.8328600650359556 - f64.const 0.6727624710046357 - f64.const -0.36606088280677795 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1032 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9536201252203433 - f64.const 0.5787346183487084 - f64.const -0.17089833319187164 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1033 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.8726590065457699 - f64.const 0.6427919144259047 - f64.const -0.2744986116886139 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1034 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.18100447535968447 - f64.const 0.9836633656884893 - f64.const 3.0195272993296385e-03 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1035 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.356194490349839 - f64.const -0.7071067812979126 - f64.const -0.48278746008872986 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1036 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.356194490372272 - f64.const -0.7071067813137752 - f64.const -0.4866050183773041 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1037 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.3561944902251115 - f64.const -0.707106781209717 - f64.const -0.3533952236175537 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1038 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.3561944903149996 - f64.const -0.7071067812732775 - f64.const -0.41911986470222473 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1039 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.3561944903603527 - f64.const -0.707106781305347 - f64.const -0.4706200063228607 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1040 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.3561944903826197 - f64.const -0.7071067813210922 - f64.const -0.30618351697921753 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1041 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.356194490371803 - f64.const -0.7071067813134436 - f64.const -0.30564820766448975 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1042 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.356194490399931 - f64.const -0.7071067813333329 - f64.const -0.38845571875572205 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1043 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.356194490260191 - f64.const -0.707106781234522 - f64.const -0.23796851933002472 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1044 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.3561944904043153 - f64.const -0.7071067813364332 - f64.const -0.3274589478969574 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1045 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.0943951024759446 - f64.const -0.5000000000716629 - f64.const -0.41711342334747314 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1046 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.09439510243324 - f64.const -0.5000000000346797 - f64.const -0.3566164970397949 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1047 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.0943951025133885 - f64.const -0.5000000001040902 - f64.const -0.2253485918045044 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1048 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.0943951025466707 - f64.const -0.5000000001329135 - f64.const -0.12982259690761566 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1049 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.094395102413896 - f64.const -0.5000000000179272 - f64.const -0.15886764228343964 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1050 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.0943951024223404 - f64.const -0.5000000000252403 - f64.const -0.266656756401062 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1051 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.0943951024960477 - f64.const -0.5000000000890726 - f64.const -0.4652077853679657 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1052 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.0943951025173315 - f64.const -0.500000000107505 - f64.const -0.46710994839668274 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1053 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.094395102405924 - f64.const -0.5000000000110234 - f64.const -0.2469603717327118 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1054 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.094395102428558 - f64.const -0.500000000030625 - f64.const -0.3799441158771515 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1055 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8.513210770864056 - f64.const -0.6125076939987759 - f64.const 0.4989966154098511 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1056 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 6.802886129801017 - f64.const 0.8679677961345452 - f64.const 0.4972165524959564 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1057 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.171925393086408 - f64.const -0.9682027440424544 - f64.const -0.49827584624290466 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1058 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8.854690112888573 - f64.const -0.8418535663818527 - f64.const 0.4974979758262634 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1059 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.213510813859608 - f64.const -0.9777659802838506 - f64.const -0.4995604455471039 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1060 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.782449081542151 - f64.const 0.07147156381293339 - f64.const 0.49858126044273376 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1061 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.500261332273616 - f64.const 0.34639017633458113 - f64.const -0.4996210038661957 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1062 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.121739418731588 - f64.const -0.9544341297541811 - f64.const 0.4982815086841583 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1063 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 6.784954020476316 - f64.const 0.8767332233166646 - f64.const -0.4988083839416504 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1064 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8.770846542666664 - f64.const -0.7936984117400705 - f64.const 0.4999682903289795 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1065 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.313225746154785e-10 - f64.const 1 - f64.const 0.001953125 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1068 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -9.313225746154785e-10 - f64.const 1 - f64.const 0.001953125 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1069 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072014e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1070 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.2250738585072014e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1071 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5e-324 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1072 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -5e-324 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1073 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1074 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1075 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1e-323 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1076 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.4e-323 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1077 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5.562684646268003e-309 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1078 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1125369292536007e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1079 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072004e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1080 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507201e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1081 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507202e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1082 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072024e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1083 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.4501477170144003e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1084 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.450147717014403e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1085 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.450147717014406e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1086 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8.900295434028806e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1087 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.450580596923828e-09 - f64.const 1 - f64.const 0.125 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1088 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.4901161193847656e-08 - f64.const 0.9999999999999999 - f64.const -1.850372590034581e-17 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1089 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.470348358154297e-08 - f64.const 0.999999999999999 - f64.const -1.4988010832439613e-15 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1090 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1e-323 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1091 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.4e-323 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1092 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -5.562684646268003e-309 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1093 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.1125369292536007e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1094 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.2250738585072004e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1095 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.225073858507201e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1096 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.225073858507202e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1097 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.2250738585072024e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1098 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.4501477170144003e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1099 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.450147717014403e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1100 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.450147717014406e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1101 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.900295434028806e-308 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1102 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.450580596923828e-09 - f64.const 1 - f64.const 0.125 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1103 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.4901161193847656e-08 - f64.const 0.9999999999999999 - f64.const -1.850372590034581e-17 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1104 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.470348358154297e-08 - f64.const 0.999999999999999 - f64.const -1.4988010832439613e-15 - i32.const 1 - call $std/math/test_cos - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1105 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5707963267948966 - call $~lib/math/NativeMath.cos - f64.const 1.5707963267948966 - call $~lib/bindings/Math/cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1107 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.141592653589793 - call $~lib/math/NativeMath.cos - f64.const 3.141592653589793 - call $~lib/bindings/Math/cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1108 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3141592653589793231804887e66 - call $~lib/math/NativeMath.cos - f64.const 3141592653589793231804887e66 - call $~lib/bindings/Math/cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1109 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.3283064365386963e-10 - call $~lib/math/NativeMath.cos - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1113 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.3283064365386963e-10 - call $~lib/math/NativeMath.cos - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1114 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.15707963267948966 - call $~lib/math/NativeMath.cos - f64.const 0.9876883405951378 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1117 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7812504768371582 - call $~lib/math/NativeMath.cos - f64.const 0.7100335477927638 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1119 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.78125 - call $~lib/math/NativeMath.cos - f64.const 0.7100338835660797 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1120 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9238795325112867 - f64.const 0.39269908169872414 - call $~lib/math/NativeMath.cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1123 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9238795325112867 - f64.const -0.39269908169872414 - call $~lib/math/NativeMath.cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1125 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.725290298461914e-09 - call $~lib/math/NativeMath.cos - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1128 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9689124217106447 - f64.const 0.25 - call $~lib/math/NativeMath.cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1130 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.8775825618903728 - f64.const 0.5 - call $~lib/math/NativeMath.cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1131 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7073882691671998 - f64.const 0.785 - call $~lib/math/NativeMath.cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1132 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 6.123233995736766e-17 - f64.const 1.5707963267948966 - call $~lib/math/NativeMath.cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1134 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7071067811865474 - f64.const 5.497787143782138 - call $~lib/math/NativeMath.cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1136 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7071067811865477 - f64.const 7.0685834705770345 - call $~lib/math/NativeMath.cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1137 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.7071067811865467 - f64.const 8.63937979737193 - call $~lib/math/NativeMath.cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1138 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.7071067811865471 - f64.const 10.210176124166829 - call $~lib/math/NativeMath.cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1139 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9367521275331447 - f64.const 1e6 - call $~lib/math/NativeMath.cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1140 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -3.435757038074824e-12 - f64.const 1647097.7583689587 - call $~lib/math/NativeMath.cos - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1141 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const -0.21126316487789154 - f32.const 0.48328569531440735 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1150 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const -0.3589562177658081 - f32.const 0.042505208402872086 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1151 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -0.5033331513404846 - f32.const -0.1386195719242096 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1152 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const 0.9692853689193726 - f32.const 0.1786951720714569 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1153 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const -0.9875878691673279 - f32.const 0.1389600932598114 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1154 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.7887731194496155 - f32.const 0.2989593744277954 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1155 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const 0.918469250202179 - f32.const 0.24250665307044983 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1156 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.8463190197944641 - f32.const -0.24033240973949432 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1157 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.7150139212608337 - f32.const -0.3372635245323181 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1158 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const 0.7783495187759399 - f32.const 0.16550153493881226 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1159 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1162 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1163 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1164 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1165 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1166 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.862645149230957e-09 - f32.const 1 - f32.const 1.4551915228366852e-11 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1169 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.862645149230957e-09 - f32.const 1 - f32.const 1.4551915228366852e-11 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1170 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1754943508222875e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1171 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754943508222875e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1172 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.401298464324817e-45 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1173 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.401298464324817e-45 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1174 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.802596928649634e-45 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1175 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.2611686178923354e-44 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1176 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.938735877055719e-39 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1177 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 5.877471754111438e-39 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1178 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1754940705625946e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1179 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1754942106924411e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1180 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.175494490952134e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1181 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1754946310819804e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1182 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.3509880009953429e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1183 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.350988701644575e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1184 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.3509895424236536e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1185 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.70197740328915e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1186 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.450580596923828e-09 - f32.const 1 - f32.const 2.3283064365386963e-10 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1187 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.000244140625 - f32.const 1 - f32.const 0.25 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1188 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.00048828125 - f32.const 0.9999998807907104 - f32.const -3.973643103449831e-08 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1189 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.0009765625 - f32.const 0.9999995231628418 - f32.const -6.357828397085541e-07 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1190 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.802596928649634e-45 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1191 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.2611686178923354e-44 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1192 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.938735877055719e-39 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1193 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -5.877471754111438e-39 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1194 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754940705625946e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1195 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754942106924411e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1196 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.175494490952134e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1197 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754946310819804e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1198 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.3509880009953429e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1199 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.350988701644575e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1200 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.3509895424236536e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1201 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -4.70197740328915e-38 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1202 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -7.450580596923828e-09 - f32.const 1 - f32.const 2.3283064365386963e-10 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1203 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.000244140625 - f32.const 1 - f32.const 0.25 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1204 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.00048828125 - f32.const 0.9999998807907104 - f32.const -3.973643103449831e-08 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1205 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.0009765625 - f32.const 0.9999995231628418 - f32.const -6.357828397085541e-07 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1206 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 255.99993896484375 - f32.const -0.03985174745321274 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1209 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 5033165 - f32.const 0.8471871614456177 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1210 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 421657440 - f32.const 0.6728929281234741 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1211 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2147483392 - f32.const 0.9610780477523804 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1212 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 68719476736 - f32.const 0.1694190502166748 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1213 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 549755813888 - f32.const 0.20735950767993927 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1214 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 3402823466385288598117041e14 - f32.const 0.8530210256576538 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1215 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -255.99993896484375 - f32.const -0.03985174745321274 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1216 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -5033165 - f32.const 0.8471871614456177 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1217 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -421657440 - f32.const 0.6728929281234741 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1218 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2147483392 - f32.const 0.9610780477523804 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1219 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -68719476736 - f32.const 0.1694190502166748 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1220 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -549755813888 - f32.const 0.20735950767993927 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1221 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -3402823466385288598117041e14 - f32.const 0.8530210256576538 - f32.const 0 - i32.const 1 - call $std/math/test_cosf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1222 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const 1593.5209938862329 - f64.const -0.38098856806755066 - i32.const 1 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1233 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 38.56174928426729 - f64.const -0.2712278366088867 - i32.const 1 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1234 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const 2182.630979595893 - f64.const 0.0817827582359314 - i32.const 1 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1235 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const 343.273849250879 - f64.const -0.429940402507782 - i32.const 1 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1236 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 5291.779170005587 - f64.const -0.1592995822429657 - i32.const 1 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1237 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 1.2272321957342842 - f64.const 0.23280741274356842 - i32.const 1 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1238 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const 1.083808541871197 - f64.const -0.3960916996002197 - i32.const 1 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1239 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 1.1619803583175077 - f64.const 0.37748390436172485 - i32.const 1 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1240 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 1.3149236876276706 - f64.const 0.43587008118629456 - i32.const 1 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1241 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const 1.2393413245934533 - f64.const 0.10201606154441833 - i32.const 1 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1242 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1245 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1246 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1247 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1248 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_cosh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1249 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const 1593.5216064453125 - f32.const 0.26242581009864807 - i32.const 1 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1258 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 38.56174087524414 - f32.const -0.08168885856866837 - i32.const 1 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1259 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const 2182.631103515625 - f32.const -0.02331414446234703 - i32.const 1 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1260 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const 343.2738037109375 - f32.const 0.20081493258476257 - i32.const 1 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1261 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 5291.78173828125 - f32.const 0.36286723613739014 - i32.const 1 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1262 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 1.2272322177886963 - f32.const 0.32777416706085205 - i32.const 1 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1263 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const 1.0838085412979126 - f32.const -0.039848703891038895 - i32.const 1 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1264 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 1.161980390548706 - f32.const 0.15274477005004883 - i32.const 1 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1265 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 1.314923644065857 - f32.const -0.2387111485004425 - i32.const 1 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1266 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const 1.2393412590026855 - f32.const -0.45791932940483093 - i32.const 1 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1267 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1270 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1271 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1272 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1273 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_coshf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1274 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const 3.137706068161745e-04 - f64.const -0.2599197328090668 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1286 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 77.11053017112141 - f64.const -0.02792675793170929 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1287 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const 2.290813384916323e-04 - f64.const -0.24974334239959717 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1288 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const 1.4565661260931588e-03 - f64.const -0.4816822409629822 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1289 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 10583.558245524993 - f64.const 0.17696762084960938 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1290 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 1.9386384525571998 - f64.const -0.4964246451854706 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1291 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const 0.6659078892838025 - f64.const -0.10608318448066711 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1292 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 1.7537559518626311 - f64.const -0.39162111282348633 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1293 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 2.1687528885129246 - f64.const -0.2996125817298889 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1294 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const 0.5072437089402843 - f64.const 0.47261738777160645 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1295 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1298 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1299 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 2.718281828459045 - f64.const -0.3255307376384735 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1300 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 0.36787944117144233 - f64.const 0.22389651834964752 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1301 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1302 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1303 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1304 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0397214889526365 - f64.const 2.828429155876411 - f64.const 0.18803080916404724 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1305 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.0397214889526365 - f64.const 0.35355313670217847 - f64.const 0.2527272403240204 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1306 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0397210121154785 - f64.const 2.8284278071766122 - f64.const -0.4184139370918274 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1307 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0397214889526367 - f64.const 2.8284291558764116 - f64.const -0.22618377208709717 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1308 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5e-324 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1311 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -5e-324 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1312 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 709.782712893384 - f64.const 1797693134862273196746681e284 - f64.const -0.10568465292453766 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1314 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 709.7827128933841 - f64.const inf - f64.const 0 - i32.const 17 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1321 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -745.1332191019411 - f64.const 5e-324 - f64.const 0.5 - i32.const 9 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1322 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -745.1332191019412 - f64.const 0 - f64.const -0.5 - i32.const 9 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1329 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -708.3964185322641 - f64.const 2.2250738585072626e-308 - f64.const 0.26172348856925964 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1336 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -708.3964185322642 - f64.const 2.2250738585070097e-308 - f64.const 2.2250738585070097e-308 - i32.const 9 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1343 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5006933289508785 - f64.const 1.6498647732549399 - f64.const 0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1350 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.628493326460252 - f64.const 1.8747837631658781 - f64.const 0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1357 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.837522455340574 - f64.const 2.3106351774748006 - f64.const -0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1364 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.8504909932810999 - f64.const 2.3407958848710777 - f64.const 0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1370 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.6270060846924657 - f64.const 5.088617001442459 - f64.const 0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1376 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.6744336219614115 - f64.const 5.335772228886831 - f64.const 0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1382 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 6.657914718791208 - f64.const 778.924964819056 - f64.const 0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1389 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 11.022872793631722 - f64.const 61259.41271820104 - f64.const 0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1396 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 11.411195701885317 - f64.const 90327.36165653409 - f64.const 0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1403 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 11.794490387560606 - f64.const 132520.20290772576 - f64.const 0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1410 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 412.83872756953286 - f64.const 1965989977109266413433084e155 - f64.const 0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1417 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 510.87569028483415 - f64.const 7421526272656495968225491e197 - f64.const -0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1424 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.6589841439772853e-14 - f64.const 0.9999999999999735 - f64.const 0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1431 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.7144952952085447e-14 - f64.const 0.9999999999999728 - f64.const -0.5 - i32.const 1 - call $std/math/test_exp - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1438 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const 3.1377049162983894e-04 - f32.const -0.030193336308002472 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1452 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 77.11051177978516 - f32.const -0.2875460684299469 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1453 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const 2.2908132814336568e-04 - f32.const 0.2237040400505066 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1454 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const 1.4565663877874613e-03 - f32.const 0.36469703912734985 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1455 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 10583.5634765625 - f32.const 0.45962104201316833 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1456 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 1.93863844871521 - f32.const 0.3568260967731476 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1457 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const 0.6659078598022461 - f32.const -0.38294991850852966 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1458 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 1.753756046295166 - f32.const 0.44355490803718567 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1459 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 2.168752908706665 - f32.const 0.24562469124794006 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1460 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const 0.5072436928749084 - f32.const -0.3974292278289795 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1461 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1464 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1465 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 2.7182817459106445 - f32.const -0.3462330996990204 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1466 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 0.3678794503211975 - f32.const 0.3070148527622223 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1467 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1468 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1469 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1470 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 88.72283172607422 - f32.const 340279851902147610656242e15 - f32.const -0.09067153930664062 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1471 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 88.72283935546875 - f32.const inf - f32.const 0 - i32.const 17 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1472 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -103.97207641601562 - f32.const 1.401298464324817e-45 - f32.const 0.49999967217445374 - i32.const 9 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1473 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -103.97208404541016 - f32.const 0 - f32.const -0.49999651312828064 - i32.const 9 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1474 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.3465735614299774 - f32.const 1.4142135381698608 - f32.const 0.13922421634197235 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1475 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.3465735912322998 - f32.const 1.4142135381698608 - f32.const -0.21432916820049286 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1476 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.3465736210346222 - f32.const 1.4142136573791504 - f32.const 0.43211743235588074 - i32.const 1 - call $std/math/test_expf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1477 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const -0.9996862293931839 - f64.const -0.2760058343410492 - i32.const 1 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1489 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 76.11053017112141 - f64.const -0.02792675793170929 - i32.const 1 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1490 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -0.9997709186615084 - f64.const 0.10052496194839478 - i32.const 1 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1491 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const -0.9985434338739069 - f64.const -0.27437829971313477 - i32.const 1 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1492 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 10582.558245524993 - f64.const 0.17696762084960938 - i32.const 1 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1493 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.9386384525571999 - f64.const 0.007150684483349323 - i32.const 1 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1494 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0.3340921107161975 - f64.const -0.21216636896133423 - i32.const 1 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1495 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.7537559518626312 - f64.const 0.21675777435302734 - i32.const 1 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1496 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 1.1687528885129248 - f64.const 0.4007748067378998 - i32.const 1 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1497 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -0.4927562910597158 - f64.const -0.05476519837975502 - i32.const 1 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1498 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1501 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1502 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1.7182818284590453 - f64.const 0.348938524723053 - i32.const 1 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1503 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -0.6321205588285577 - f64.const 0.11194825917482376 - i32.const 1 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1504 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1505 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1506 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1507 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507201e-308 - f64.const 2.225073858507201e-308 - f64.const 0 - i32.const 9 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1508 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.225073858507201e-308 - f64.const -2.225073858507201e-308 - f64.const 0 - i32.const 9 - call $std/math/test_expm1 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1509 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const -0.9996862411499023 - f32.const -0.19532723724842072 - i32.const 1 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1518 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 76.11051177978516 - f32.const -0.2875460684299469 - i32.const 1 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1519 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -0.9997709393501282 - f32.const -0.34686920046806335 - i32.const 1 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1520 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const -0.9985434412956238 - f32.const -0.1281939446926117 - i32.const 1 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1521 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 10582.5634765625 - f32.const 0.45962104201316833 - i32.const 1 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1522 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.9386383891105652 - f32.const -0.28634780645370483 - i32.const 1 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1523 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0.3340921103954315 - f32.const 0.23410017788410187 - i32.const 1 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1524 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.7537559866905212 - f32.const -0.11289017647504807 - i32.const 1 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1525 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 1.168752908706665 - f32.const 0.4912493824958801 - i32.const 1 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1526 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -0.49275627732276917 - f32.const 0.20514154434204102 - i32.const 1 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1527 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1530 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1531 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1.718281865119934 - f32.const 0.3075338304042816 - i32.const 1 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1532 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -0.6321205496788025 - f32.const 0.15350742638111115 - i32.const 1 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1533 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1534 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1535 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_expm1f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1536 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const -9 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1548 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 4 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1549 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -9 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1550 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const -7 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1551 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 9 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1552 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1553 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1554 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1555 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1556 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1557 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1560 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1561 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1562 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1563 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1564 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1565 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1566 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1567 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1568 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0000152587890625 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1569 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.0000152587890625 - f64.const -2 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1570 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9999923706054688 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1571 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.9999923706054688 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1572 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.888609052210118e-31 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1573 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.888609052210118e-31 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_floor - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1574 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const -9 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1583 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 4 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1584 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -9 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1585 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const -7 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1586 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 9 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1587 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1588 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -1 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1589 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1590 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1591 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -1 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1592 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1595 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1596 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1597 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1598 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1599 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1600 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1601 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1602 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const -1 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1603 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.0000152587890625 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1604 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.0000152587890625 - f32.const -2 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1605 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.9999923706054688 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1606 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.9999923706054688 - f32.const -1 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1607 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.888609052210118e-31 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1608 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -7.888609052210118e-31 - f32.const -1 - f32.const 0 - i32.const 1 - call $std/math/test_floorf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1609 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const 4.535662560676869 - f64.const 9.25452742288464 - f64.const -0.31188681721687317 - i32.const 1 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1621 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const -8.88799136300345 - f64.const 9.893305808328252 - f64.const 0.4593673348426819 - i32.const 1 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1622 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -2.763607337379588 - f64.const 8.825301797432132 - f64.const -0.1701754331588745 - i32.const 1 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1623 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const 4.567535276842744 - f64.const 7.970265885519092 - f64.const -0.3176782727241516 - i32.const 1 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1624 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 4.811392084359796 - f64.const 10.441639651824575 - f64.const -0.2693633437156677 - i32.const 1 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1625 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.450045556060236 - f64.const 0.6620717923376739 - f64.const 6.483936052542593 - f64.const 0.35618898272514343 - i32.const 1 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1626 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.858890253041697 - f64.const 0.05215452675006225 - f64.const 7.859063309581766 - f64.const 0.08044655621051788 - i32.const 1 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1627 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.792054511984896 - f64.const 7.67640268511754 - f64.const 7.717156764899584 - f64.const 0.05178084969520569 - i32.const 1 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1628 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.615702673197924 - f64.const 2.0119025790324803 - f64.const 2.104006123874314 - f64.const -0.0918039008975029 - i32.const 1 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1629 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5587586823609152 - f64.const 0.03223983060263804 - f64.const 0.5596880129062913 - f64.const 0.1383407711982727 - i32.const 1 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1630 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3 - f64.const 4 - f64.const 5 - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1633 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -3 - f64.const 4 - f64.const 5 - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1634 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4 - f64.const 3 - f64.const 5 - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1635 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4 - f64.const -3 - f64.const 5 - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1636 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -3 - f64.const -4 - f64.const 5 - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1637 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - f64.const 0 - f64.const 1797693134862315708145274e284 - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1638 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - f64.const -0 - f64.const 1797693134862315708145274e284 - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1639 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5e-324 - f64.const 0 - f64.const 5e-324 - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1640 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5e-324 - f64.const -0 - f64.const 5e-324 - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1641 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 1 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1642 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1643 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const nan:0x8000000000000 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1644 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1645 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 1 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1646 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1647 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1648 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const -inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1649 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const 1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1650 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_hypot - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1651 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const 4.535662651062012 - f32.const 9.254528045654297 - f32.const 0.2735958993434906 - i32.const 1 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1660 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const -8.887990951538086 - f32.const 9.893305778503418 - f32.const 0.4530770778656006 - i32.const 1 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1661 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -2.7636072635650635 - f32.const 8.825302124023438 - f32.const 0.30755728483200073 - i32.const 1 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1662 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const 4.567535400390625 - f32.const 7.970265865325928 - f32.const 0.06785223633050919 - i32.const 1 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1663 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 4.811392307281494 - f32.const 10.44163990020752 - f32.const -0.26776307821273804 - i32.const 1 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1664 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.450045585632324 - f32.const 0.6620717644691467 - f32.const 6.483936309814453 - f32.const 0.48381292819976807 - i32.const 1 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1665 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.858890056610107 - f32.const 0.052154526114463806 - f32.const 7.859063148498535 - f32.const 0.07413065433502197 - i32.const 1 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1666 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.7920545339584351 - f32.const 7.676402568817139 - f32.const 7.717156887054443 - f32.const 0.4940592646598816 - i32.const 1 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1667 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6157026886940002 - f32.const 2.0119025707244873 - f32.const 2.104006052017212 - f32.const -0.287089467048645 - i32.const 1 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1668 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5587586760520935 - f32.const 0.03223983198404312 - f32.const 0.5596880316734314 - f32.const 0.4191940724849701 - i32.const 1 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1669 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 3 - f32.const 4 - f32.const 5 - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1672 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -3 - f32.const 4 - f32.const 5 - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1673 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4 - f32.const 3 - f32.const 5 - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1674 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4 - f32.const -3 - f32.const 5 - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1675 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -3 - f32.const -4 - f32.const 5 - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1676 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 3402823466385288598117041e14 - f32.const 0 - f32.const 3402823466385288598117041e14 - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1677 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 3402823466385288598117041e14 - f32.const -0 - f32.const 3402823466385288598117041e14 - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1678 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.401298464324817e-45 - f32.const 0 - f32.const 1.401298464324817e-45 - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1679 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.401298464324817e-45 - f32.const -0 - f32.const 1.401298464324817e-45 - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1680 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 1 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1681 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1682 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const nan:0x400000 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1683 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1684 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 1 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1685 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1686 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1687 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const -inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1688 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const 1 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1689 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_hypotf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1690 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1702 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 1.4690809584224322 - f64.const -0.3412533402442932 - i32.const 1 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1703 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1704 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1705 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 2.2264658498795615 - f64.const 0.3638114035129547 - i32.const 1 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1706 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const -0.4125110252365137 - f64.const -0.29108747839927673 - i32.const 1 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1707 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1708 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const -0.5766810183195862 - f64.const -0.10983199626207352 - i32.const 1 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1709 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const -0.2559866591263865 - f64.const -0.057990044355392456 - i32.const 1 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1710 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1711 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -inf - f64.const 0 - i32.const 4 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1714 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -inf - f64.const 0 - i32.const 4 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1715 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.888609052210118e-31 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1716 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1717 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1718 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1719 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1720 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_log - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1721 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -inf - f32.const 0 - i32.const 4 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1730 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -inf - f32.const 0 - i32.const 4 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1731 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -7.888609052210118e-31 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1732 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1733 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1734 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1735 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1736 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1737 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -inf - f32.const 0 - i32.const 4 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1740 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -inf - f32.const 0 - i32.const 4 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1741 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -7.888609052210118e-31 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1742 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1743 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1744 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1745 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1746 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_logf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1747 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1759 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 0.6380137537120029 - f64.const -0.2088824063539505 - i32.const 1 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1760 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1761 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1762 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 0.9669418327487274 - f64.const -0.06120431795716286 - i32.const 1 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1763 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const -0.17915126198447093 - f64.const 0.39090874791145325 - i32.const 1 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1764 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1765 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const -0.25044938407454437 - f64.const -0.3046841621398926 - i32.const 1 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1766 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const -0.11117359349943837 - f64.const -0.31503361463546753 - i32.const 1 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1767 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1768 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -inf - f64.const 0 - i32.const 4 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1771 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -inf - f64.const 0 - i32.const 4 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1772 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.888609052210118e-31 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1773 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1774 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1775 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1776 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1777 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_log10 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1778 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1787 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 0.6380137205123901 - f32.const -0.20476758480072021 - i32.const 1 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1788 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1789 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1790 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 0.9669418334960938 - f32.const -0.34273025393486023 - i32.const 1 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1791 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const -0.1791512817144394 - f32.const -0.27078554034233093 - i32.const 1 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1792 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1793 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const -0.25044935941696167 - f32.const 0.2126826047897339 - i32.const 1 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1794 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const -0.1111735999584198 - f32.const 0.46515095233917236 - i32.const 1 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1795 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1796 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -inf - f32.const 0 - i32.const 4 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1799 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -inf - f32.const 0 - i32.const 4 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1800 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -7.888609052210118e-31 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1801 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1802 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1803 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1804 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1805 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_log10f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1806 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1818 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 1.6762064170601734 - f64.const 0.46188199520111084 - i32.const 1 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1819 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1820 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1821 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 2.3289404168523826 - f64.const -0.411114901304245 - i32.const 1 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1822 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.5080132114992477 - f64.const -0.29306045174598694 - i32.const 1 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1823 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0.5218931811663979 - f64.const -0.25825726985931396 - i32.const 1 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1824 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.4458132279488102 - f64.const -0.13274887204170227 - i32.const 1 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1825 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.5733227294648414 - f64.const 0.02716583013534546 - i32.const 1 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1826 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -1.1355782978128564 - f64.const 0.2713092863559723 - i32.const 1 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1827 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1830 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1831 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.888609052210118e-31 - f64.const -7.888609052210118e-31 - f64.const 1.7763568394002505e-15 - i32.const 1 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1832 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0.6931471805599453 - f64.const -0.2088811695575714 - i32.const 1 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1833 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -inf - f64.const 0 - i32.const 4 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1834 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1835 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1836 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_log1p - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1837 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1846 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 1.676206350326538 - f32.const -0.23014859855175018 - i32.const 1 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1847 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1848 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1849 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 2.3289403915405273 - f32.const -0.29075589776039124 - i32.const 1 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1850 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.5080131888389587 - f32.const -0.1386766880750656 - i32.const 1 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1851 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0.5218932032585144 - f32.const -0.08804433047771454 - i32.const 1 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1852 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.44581323862075806 - f32.const -0.15101368725299835 - i32.const 1 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1853 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.5733227133750916 - f32.const -0.10264533013105392 - i32.const 1 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1854 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -1.1355782747268677 - f32.const -0.19879481196403503 - i32.const 1 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1855 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1858 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1859 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -7.888609052210118e-31 - f32.const -7.888609052210118e-31 - f32.const 3.308722450212111e-24 - i32.const 1 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1860 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0.6931471824645996 - f32.const 0.031954795122146606 - i32.const 1 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1861 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -inf - f32.const 0 - i32.const 4 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1862 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1863 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1864 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1865 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754942106924411e-38 - f32.const -1.1754942106924411e-38 - f32.const 4.930380657631324e-32 - i32.const 9 - call $std/math/test_log1pf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1866 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1878 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 2.1194358133804485 - f64.const -0.10164877772331238 - i32.const 1 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1879 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1880 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1881 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 3.2121112403298744 - f64.const -0.15739446878433228 - i32.const 1 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1882 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const -0.5951276104207402 - f64.const 0.3321485221385956 - i32.const 1 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1883 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1884 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const -0.8319748453044644 - f64.const 0.057555437088012695 - i32.const 1 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1885 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const -0.36931068365537134 - f64.const -0.19838279485702515 - i32.const 1 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1886 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1887 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -inf - f64.const 0 - i32.const 4 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1890 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -inf - f64.const 0 - i32.const 4 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1891 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.888609052210118e-31 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1892 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1893 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1894 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1895 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1896 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_log2 - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1897 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1906 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 2.1194357872009277 - f32.const 0.18271538615226746 - i32.const 1 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1907 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1908 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1909 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 3.212111234664917 - f32.const -0.3188050389289856 - i32.const 1 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1910 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const -0.5951276421546936 - f32.const 0.34231460094451904 - i32.const 1 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1911 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1912 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const -0.8319748044013977 - f32.const -0.33473604917526245 - i32.const 1 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1913 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const -0.3693107068538666 - f32.const 0.3278401792049408 - i32.const 1 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1914 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1915 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -inf - f32.const 0 - i32.const 4 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1918 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -inf - f32.const 0 - i32.const 4 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1919 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -7.888609052210118e-31 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1920 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1921 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1922 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1923 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1924 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_log2f - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1925 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const 4.535662560676869 - f64.const 4.535662560676869 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1937 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const -8.88799136300345 - f64.const 4.345239849338305 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1938 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -2.763607337379588 - f64.const -2.763607337379588 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1939 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const 4.567535276842744 - f64.const 4.567535276842744 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1940 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 4.811392084359796 - f64.const 9.267056966972586 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1941 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.450045556060236 - f64.const 0.6620717923376739 - f64.const 0.6620717923376739 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1942 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.858890253041697 - f64.const 0.05215452675006225 - f64.const 7.858890253041697 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1943 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.792054511984896 - f64.const 7.67640268511754 - f64.const 7.67640268511754 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1944 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.615702673197924 - f64.const 2.0119025790324803 - f64.const 2.0119025790324803 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1945 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5587586823609152 - f64.const 0.03223983060263804 - f64.const 0.03223983060263804 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1946 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1949 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1950 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1951 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1952 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1953 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1954 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 1 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1955 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1956 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const 1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1957 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1958 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1959 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const -1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1960 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const -1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1961 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1962 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1963 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -1 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1964 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1965 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1966 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1967 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1968 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1969 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1970 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1971 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1972 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1973 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1974 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -inf - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1975 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1976 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1977 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1978 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 0 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1979 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1980 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1981 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1982 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -0 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1983 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1984 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1985 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 2 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1986 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -0.5 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1987 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1988 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 2 - f64.const 2 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1989 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -0.5 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1990 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1991 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1992 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1993 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1994 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1995 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1996 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1997 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1998 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -inf - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 1999 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -inf - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2000 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2001 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2002 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.75 - f64.const 0.5 - f64.const 1.75 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2003 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.75 - f64.const 0.5 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2004 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.75 - f64.const -0.5 - f64.const 1.75 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2005 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.75 - f64.const -0.5 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_max - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2006 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const 4.535662651062012 - f32.const 4.535662651062012 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2015 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const -8.887990951538086 - f32.const 4.345239639282227 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2016 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -2.7636072635650635 - f32.const -2.7636072635650635 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2017 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const 4.567535400390625 - f32.const 4.567535400390625 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2018 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 4.811392307281494 - f32.const 9.267057418823242 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2019 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.450045585632324 - f32.const 0.6620717644691467 - f32.const 0.6620717644691467 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2020 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.858890056610107 - f32.const 0.052154526114463806 - f32.const 7.858890056610107 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2021 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.7920545339584351 - f32.const 7.676402568817139 - f32.const 7.676402568817139 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2022 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6157026886940002 - f32.const 2.0119025707244873 - f32.const 2.0119025707244873 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2023 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5587586760520935 - f32.const 0.03223983198404312 - f32.const 0.03223983198404312 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2024 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2027 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2028 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2029 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2030 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2031 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2032 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 1 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2033 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2034 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const 1 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2035 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2036 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2037 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const -1 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2038 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const -1 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2039 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2040 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2041 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -1 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2042 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2043 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2044 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2045 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2046 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2047 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2048 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2049 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2050 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2051 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2052 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -inf - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2053 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2054 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2055 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2056 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 0 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2057 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2058 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2059 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2060 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -0 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2061 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2062 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2063 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 2 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2064 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -0.5 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2065 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2066 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 2 - f32.const 2 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2067 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -0.5 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2068 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2069 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2070 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2071 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2072 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2073 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2074 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2075 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2076 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -inf - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2077 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -inf - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2078 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2079 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2080 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.75 - f32.const 0.5 - f32.const 1.75 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2081 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.75 - f32.const 0.5 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2082 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.75 - f32.const -0.5 - f32.const 1.75 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2083 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.75 - f32.const -0.5 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_maxf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2084 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const 4.535662560676869 - f64.const -8.06684839057968 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2096 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const -8.88799136300345 - f64.const -8.88799136300345 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2097 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -2.763607337379588 - f64.const -8.38143342755525 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2098 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const 4.567535276842744 - f64.const -6.531673581913484 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2099 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 4.811392084359796 - f64.const 4.811392084359796 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2100 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.450045556060236 - f64.const 0.6620717923376739 - f64.const -6.450045556060236 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2101 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.858890253041697 - f64.const 0.05215452675006225 - f64.const 0.05215452675006225 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2102 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.792054511984896 - f64.const 7.67640268511754 - f64.const -0.792054511984896 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2103 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.615702673197924 - f64.const 2.0119025790324803 - f64.const 0.615702673197924 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2104 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5587586823609152 - f64.const 0.03223983060263804 - f64.const -0.5587586823609152 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2105 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2108 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2109 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const 1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2110 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const 1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2111 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2112 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2113 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2114 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 1 - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2115 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const 1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2116 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2117 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2118 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2119 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2120 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2121 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2122 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2123 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -1 - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2124 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2125 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2126 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2127 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2128 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2129 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2130 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2131 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2132 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const inf - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2133 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2134 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2135 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2136 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 0 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2137 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2138 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 0 - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2139 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2140 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -0 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2141 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2142 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -0 - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2143 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2144 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 2 - f64.const 2 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2145 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -0.5 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2146 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2147 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 2 - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2148 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -0.5 - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2149 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2150 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2151 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2152 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2153 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const inf - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2154 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const inf - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2155 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2156 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2157 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2158 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2159 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2160 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2161 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.75 - f64.const 0.5 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2162 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.75 - f64.const 0.5 - f64.const -1.75 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2163 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.75 - f64.const -0.5 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2164 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.75 - f64.const -0.5 - f64.const -1.75 - f64.const 0 - i32.const 0 - call $std/math/test_min - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2165 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const 4.535662651062012 - f32.const -8.066848754882812 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2174 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const -8.887990951538086 - f32.const -8.887990951538086 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2175 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -2.7636072635650635 - f32.const -8.381433486938477 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2176 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const 4.567535400390625 - f32.const -6.531673431396484 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2177 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 4.811392307281494 - f32.const 4.811392307281494 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2178 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.450045585632324 - f32.const 0.6620717644691467 - f32.const -6.450045585632324 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2179 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.858890056610107 - f32.const 0.052154526114463806 - f32.const 0.052154526114463806 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2180 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.7920545339584351 - f32.const 7.676402568817139 - f32.const -0.7920545339584351 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2181 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6157026886940002 - f32.const 2.0119025707244873 - f32.const 0.6157026886940002 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2182 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5587586760520935 - f32.const 0.03223983198404312 - f32.const -0.5587586760520935 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2183 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2186 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2187 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const 1 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2188 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const 1 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2189 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2190 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2191 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2192 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 1 - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2193 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const 1 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2194 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2195 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2196 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2197 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2198 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2199 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2200 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2201 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -1 - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2202 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2203 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2204 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2205 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2206 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2207 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2208 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2209 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2210 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const inf - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2211 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2212 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2213 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2214 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 0 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2215 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2216 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 0 - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2217 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2218 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -0 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2219 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2220 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -0 - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2221 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2222 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 2 - f32.const 2 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2223 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -0.5 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2224 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2225 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 2 - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2226 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -0.5 - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2227 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2228 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2229 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2230 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2231 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const inf - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2232 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const inf - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2233 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2234 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2235 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2236 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2237 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2238 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2239 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.75 - f32.const 0.5 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2240 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.75 - f32.const 0.5 - f32.const -1.75 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2241 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.75 - f32.const -0.5 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2242 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.75 - f32.const -0.5 - f32.const -1.75 - f32.const 0 - i32.const 0 - call $std/math/test_minf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2243 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const 4.535662560676869 - f64.const -3.531185829902812 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2257 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const -8.88799136300345 - f64.const 4.345239849338305 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2258 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -2.763607337379588 - f64.const -0.09061141541648476 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2259 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const 4.567535276842744 - f64.const -1.9641383050707404 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2260 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 4.811392084359796 - f64.const 4.45566488261279 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2261 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.450045556060236 - f64.const 0.6620717923376739 - f64.const -0.4913994250211714 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2262 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.858890253041697 - f64.const 0.05215452675006225 - f64.const 0.035711240532359426 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2263 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.792054511984896 - f64.const 7.67640268511754 - f64.const -0.792054511984896 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2264 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.615702673197924 - f64.const 2.0119025790324803 - f64.const 0.615702673197924 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2265 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5587586823609152 - f64.const 0.03223983060263804 - f64.const -0.0106815621160685 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2266 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2269 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2270 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const 1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2271 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const 1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2272 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2273 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2274 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5 - f64.const 1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2275 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.5 - f64.const 1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2276 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2 - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2277 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2 - f64.const 1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2278 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2279 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2280 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const 1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2281 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2282 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2283 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const -1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2284 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const -1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2285 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2286 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2287 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5 - f64.const -1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2288 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.5 - f64.const -1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2289 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2 - f64.const -1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2290 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2 - f64.const -1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2291 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2292 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2293 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2294 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2295 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2296 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2297 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2298 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2299 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2300 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2301 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const inf - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2302 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -inf - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2303 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2304 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2305 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2306 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2307 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2308 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2309 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2310 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2311 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2312 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2313 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 2 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2314 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -0.5 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2315 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2316 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 2 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2317 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -0.5 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2318 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2319 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2320 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2321 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2322 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const inf - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2323 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const inf - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2324 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2325 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2326 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -inf - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2327 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -inf - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2328 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2329 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2330 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.75 - f64.const 0.5 - f64.const 0.25 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2331 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.75 - f64.const 0.5 - f64.const -0.25 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2332 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.75 - f64.const -0.5 - f64.const 0.25 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2333 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.75 - f64.const -0.5 - f64.const -0.25 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2334 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072014e-308 - f64.const 2.2250738585072014e-308 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2337 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072014e-308 - f64.const -2.2250738585072014e-308 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2338 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.2250738585072014e-308 - f64.const 2.2250738585072014e-308 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2339 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.2250738585072014e-308 - f64.const -2.2250738585072014e-308 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2340 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - f64.const 1797693134862315708145274e284 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2341 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - f64.const -1797693134862315708145274e284 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2342 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1797693134862315708145274e284 - f64.const 1797693134862315708145274e284 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2343 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1797693134862315708145274e284 - f64.const -1797693134862315708145274e284 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2344 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 2.2250738585072014e-308 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2347 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 1797693134862315708145274e284 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2348 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -2.2250738585072014e-308 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2349 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -1797693134862315708145274e284 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2350 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 2.2250738585072014e-308 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2351 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 1797693134862315708145274e284 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2352 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -2.2250738585072014e-308 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2353 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -1797693134862315708145274e284 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2354 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - f64.const 1797693134862315508561243e284 - f64.const 1995840309534719811656372e268 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2357 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1797693134862315708145274e284 - f64.const 1797693134862315508561243e284 - f64.const -1995840309534719811656372e268 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2358 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - f64.const -8988465674311579538646525e283 - f64.const 8988465674311577542806216e283 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2360 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1797693134862315708145274e284 - f64.const -8988465674311579538646525e283 - f64.const -8988465674311577542806216e283 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2361 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - f64.const 8988465674311578540726371e283 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2363 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1797693134862315708145274e284 - f64.const 8988465674311578540726371e283 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2364 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - f64.const -8988465674311577542806216e283 - f64.const 1995840309534719811656372e268 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2366 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1797693134862315708145274e284 - f64.const -8988465674311577542806216e283 - f64.const -1995840309534719811656372e268 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2367 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8988465674311579538646525e283 - f64.const 1797693134862315708145274e284 - f64.const 8988465674311579538646525e283 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2369 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8988465674311579538646525e283 - f64.const 1797693134862315708145274e284 - f64.const -8988465674311579538646525e283 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2370 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8988465674311578540726371e283 - f64.const -1797693134862315708145274e284 - f64.const 8988465674311578540726371e283 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2372 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8988465674311578540726371e283 - f64.const -1797693134862315708145274e284 - f64.const -8988465674311578540726371e283 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2373 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8988465674311577542806216e283 - f64.const 1797693134862315708145274e284 - f64.const 8988465674311577542806216e283 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2375 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8988465674311577542806216e283 - f64.const 1797693134862315708145274e284 - f64.const -8988465674311577542806216e283 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2376 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315508561243e284 - f64.const -1797693134862315708145274e284 - f64.const 1797693134862315508561243e284 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2378 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1797693134862315508561243e284 - f64.const -1797693134862315708145274e284 - f64.const -1797693134862315508561243e284 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2379 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315508561243e284 - f64.const 8988465674311578540726371e283 - f64.const 8988465674311576544886061e283 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2381 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1797693134862315508561243e284 - f64.const 8988465674311578540726371e283 - f64.const -8988465674311576544886061e283 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2382 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.5 - f64.const 1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2384 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 6.5 - f64.const 1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2385 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5.5 - f64.const 1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2386 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.5 - f64.const 1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2387 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.5 - f64.const 1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2388 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.5 - f64.const 1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2389 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -5.5 - f64.const 1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2390 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.5 - f64.const 1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2391 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585071994e-308 - f64.const 2.2250738585072004e-308 - f64.const 2.2250738585071994e-308 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2393 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585071994e-308 - f64.const -2.2250738585072004e-308 - f64.const 2.2250738585071994e-308 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2394 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507201e-308 - f64.const 1.5e-323 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2395 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507201e-308 - f64.const 4.4501477170144023e-308 - f64.const 2.225073858507201e-308 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2396 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507201e-308 - f64.const inf - f64.const 2.225073858507201e-308 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2397 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507201e-308 - f64.const -1.5e-323 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2398 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072014e-308 - f64.const 1.5e-323 - f64.const 5e-324 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2399 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072014e-308 - f64.const 2.2250738585072004e-308 - f64.const 1e-323 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2400 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072014e-308 - f64.const 4.4501477170144023e-308 - f64.const 2.2250738585072014e-308 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2401 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072014e-308 - f64.const -1.5e-323 - f64.const 5e-324 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2402 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507202e-308 - f64.const 2.2250738585072004e-308 - f64.const 1.5e-323 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2403 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072024e-308 - f64.const 1.5e-323 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2404 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072024e-308 - f64.const -1.5e-323 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2405 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507203e-308 - f64.const 1.5e-323 - f64.const 5e-324 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2406 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507203e-308 - f64.const 2.225073858507204e-308 - f64.const 2.225073858507203e-308 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2407 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507203e-308 - f64.const -1.5e-323 - f64.const 5e-324 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2408 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072034e-308 - f64.const 2.225073858507204e-308 - f64.const 2.2250738585072034e-308 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2409 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072043e-308 - f64.const 2.225073858507204e-308 - f64.const 5e-324 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2410 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.4501477170144023e-308 - f64.const 4.450147717014403e-308 - f64.const 4.4501477170144023e-308 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2411 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.139237815555687e-305 - f64.const 5.696189077778436e-306 - f64.const 5.696189077778434e-306 - f64.const 0 - i32.const 0 - call $std/math/test_mod - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2412 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const 4.535662651062012 - f32.const -3.531186103820801 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2421 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const -8.887990951538086 - f32.const 4.345239639282227 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2422 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -2.7636072635650635 - f32.const -0.09061169624328613 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2423 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const 4.567535400390625 - f32.const -1.9641380310058594 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2424 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 4.811392307281494 - f32.const 4.455665111541748 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2425 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.450045585632324 - f32.const 0.6620717644691467 - f32.const -0.49139970541000366 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2426 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.858890056610107 - f32.const 0.052154526114463806 - f32.const 0.0357111394405365 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2427 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.7920545339584351 - f32.const 7.676402568817139 - f32.const -0.7920545339584351 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2428 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6157026886940002 - f32.const 2.0119025707244873 - f32.const 0.6157026886940002 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2429 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5587586760520935 - f32.const 0.03223983198404312 - f32.const -0.010681532323360443 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2430 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2433 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2434 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const 1 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2435 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const 1 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2436 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2437 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2438 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.5 - f32.const 1 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2439 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.5 - f32.const 1 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2440 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2 - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2441 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2 - f32.const 1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2442 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2443 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2444 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const 1 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2445 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2446 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2447 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const -1 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2448 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const -1 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2449 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2450 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2451 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.5 - f32.const -1 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2452 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.5 - f32.const -1 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2453 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2 - f32.const -1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2454 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2 - f32.const -1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2455 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2456 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2457 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2458 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2459 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2460 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2461 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2462 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2463 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2464 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2465 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const inf - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2466 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -inf - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2467 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2468 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2469 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2470 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2471 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2472 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2473 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2474 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2475 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2476 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2477 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 2 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2478 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -0.5 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2479 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2480 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 2 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2481 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -0.5 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2482 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2483 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2484 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2485 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2486 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const inf - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2487 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const inf - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2488 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2489 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2490 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -inf - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2491 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -inf - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2492 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2493 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2494 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.75 - f32.const 0.5 - f32.const 0.25 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2495 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.75 - f32.const 0.5 - f32.const -0.25 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2496 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.75 - f32.const -0.5 - f32.const 0.25 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2497 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.75 - f32.const -0.5 - f32.const -0.25 - f32.const 0 - i32.const 0 - call $std/math/test_modf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2498 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const 4.535662560676869 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2510 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const -8.88799136300345 - f64.const 2.1347118825587285e-06 - f64.const 0.3250160217285156 - i32.const 1 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2511 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -2.763607337379588 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2512 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const 4.567535276842744 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2513 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 4.811392084359796 - f64.const 44909.29941512966 - f64.const -0.26659080386161804 - i32.const 1 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2514 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.450045556060236 - f64.const 0.6620717923376739 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2515 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.858890253041697 - f64.const 0.05215452675006225 - f64.const 1.1135177413458652 - f64.const -0.37168607115745544 - i32.const 1 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2516 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.792054511984896 - f64.const 7.67640268511754 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2517 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.615702673197924 - f64.const 2.0119025790324803 - f64.const 0.37690773521380183 - f64.const 0.32473301887512207 - i32.const 1 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2518 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5587586823609152 - f64.const 0.03223983060263804 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2519 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2522 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2523 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 3 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2524 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 2 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2525 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2526 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0.5 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2527 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2528 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2529 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -0.5 - f64.const inf - f64.const 0 - i32.const 4 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2530 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -1 - f64.const inf - f64.const 0 - i32.const 4 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2531 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -2 - f64.const inf - f64.const 0 - i32.const 4 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2532 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -3 - f64.const inf - f64.const 0 - i32.const 4 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2533 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -4 - f64.const inf - f64.const 0 - i32.const 4 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2534 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2535 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2536 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2537 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 3 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2538 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 2 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2539 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2540 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 0.5 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2541 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2542 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2543 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0.5 - f64.const inf - f64.const 0 - i32.const 4 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2544 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -1 - f64.const -inf - f64.const 0 - i32.const 4 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2545 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -2 - f64.const inf - f64.const 0 - i32.const 4 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2546 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -3 - f64.const -inf - f64.const 0 - i32.const 4 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2547 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -4 - f64.const inf - f64.const 0 - i32.const 4 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2548 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2549 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2550 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2551 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2552 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2553 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2554 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const 0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2555 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const -0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2556 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2557 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2558 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2559 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2560 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const -0 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2561 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2562 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2563 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2564 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 2 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2565 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2566 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -2 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2567 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -3 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2568 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 0.5 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2569 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2570 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2571 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2572 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 3 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2573 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0.5 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2574 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -0.5 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2575 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -3 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2576 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const 0.5 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2577 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const 1.5 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2578 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const 2 - f64.const 0.25 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2579 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const 3 - f64.const -0.125 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2580 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2581 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const -inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2582 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2583 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2584 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const -inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2585 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2586 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5 - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2587 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5 - f64.const -inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2588 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2589 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2590 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2591 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2592 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 3 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2593 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 2 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2594 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 1 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2595 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 0.5 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2596 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -0.5 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2597 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2598 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -2 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2599 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2600 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2601 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2602 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 3 - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2603 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 2 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2604 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 1 - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2605 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 0.5 - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2606 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -0.5 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2607 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2608 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -2 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2609 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const 1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2610 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2611 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2 - f64.const 1 - f64.const -2 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2612 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2 - f64.const -1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_pow - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2613 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const 4.535662651062012 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2622 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const -8.887990951538086 - f32.const 2.134714122803416e-06 - f32.const 0.1436440795660019 - i32.const 1 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2623 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -2.7636072635650635 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2624 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const 4.567535400390625 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2625 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 4.811392307281494 - f32.const 44909.33203125 - f32.const -0.05356409028172493 - i32.const 1 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2626 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.450045585632324 - f32.const 0.6620717644691467 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2627 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.858890056610107 - f32.const 0.052154526114463806 - f32.const 1.1135177612304688 - f32.const 0.19122089445590973 - i32.const 1 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2628 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.7920545339584351 - f32.const 7.676402568817139 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2629 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6157026886940002 - f32.const 2.0119025707244873 - f32.const 0.3769077658653259 - f32.const 0.337149053812027 - i32.const 1 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2630 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5587586760520935 - f32.const 0.03223983198404312 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2631 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2634 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2635 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 3 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2636 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 2 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2637 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2638 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0.5 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2639 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2640 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2641 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -0.5 - f32.const inf - f32.const 0 - i32.const 4 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2642 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -1 - f32.const inf - f32.const 0 - i32.const 4 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2643 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -2 - f32.const inf - f32.const 0 - i32.const 4 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2644 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -3 - f32.const inf - f32.const 0 - i32.const 4 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2645 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -4 - f32.const inf - f32.const 0 - i32.const 4 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2646 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2647 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2648 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2649 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 3 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2650 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 2 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2651 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2652 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 0.5 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2653 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2654 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2655 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0.5 - f32.const inf - f32.const 0 - i32.const 4 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2656 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -1 - f32.const -inf - f32.const 0 - i32.const 4 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2657 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -2 - f32.const inf - f32.const 0 - i32.const 4 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2658 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -3 - f32.const -inf - f32.const 0 - i32.const 4 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2659 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -4 - f32.const inf - f32.const 0 - i32.const 4 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2660 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2661 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2662 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2663 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2664 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2665 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2666 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const 0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2667 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const -0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2668 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2669 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2670 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2671 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2672 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const -0 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2673 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2674 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const inf - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2675 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2676 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 2 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2677 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2678 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -2 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2679 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -3 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2680 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 0.5 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2681 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2682 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const inf - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2683 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2684 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 3 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2685 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0.5 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2686 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -0.5 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2687 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -3 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2688 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const 0.5 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2689 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const 1.5 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2690 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const 2 - f32.const 0.25 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2691 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const 3 - f32.const -0.125 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2692 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2693 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const -inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2694 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2695 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2696 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const -inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2697 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2698 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.5 - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2699 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.5 - f32.const -inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2700 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.5 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2701 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2702 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2703 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2704 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 3 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2705 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 2 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2706 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 1 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2707 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 0.5 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2708 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -0.5 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2709 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2710 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -2 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2711 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2712 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2713 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2714 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 3 - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2715 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 2 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2716 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 1 - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2717 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 0.5 - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2718 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -0.5 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2719 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2720 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -2 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2721 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const 1 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2722 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2723 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2 - f32.const 1 - f32.const -2 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2724 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2 - f32.const -1 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_powf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2725 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - call $~lib/bindings/Math/random - i64.reinterpret_f64 - call $~lib/math/NativeMath.seedRandom - block $break|0 - i32.const 0 - local.set $0 - loop $loop|0 - local.get $0 - f64.convert_i32_s - f64.const 1e6 - f64.lt - i32.eqz - br_if $break|0 - call $~lib/math/NativeMath.random - local.set $1 - local.get $1 - f64.const 0 - f64.ge - if (result i32) - local.get $1 - f64.const 1 - f64.lt - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2734 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $loop|0 - end - unreachable - end - call $~lib/bindings/Math/random - i64.reinterpret_f64 - local.set $2 - local.get $2 - call $~lib/math/NativeMath.seedRandom - block $break|1 - i32.const 0 - local.set $0 - loop $loop|1 - local.get $0 - f64.convert_i32_s - f64.const 1e6 - f64.lt - i32.eqz - br_if $break|1 - call $~lib/math/NativeMathf.random - local.set $3 - local.get $3 - f32.const 0 - f32.ge - if (result i32) - local.get $3 - f32.const 1 - f32.lt - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2742 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.add - local.set $0 - br $loop|1 - end - unreachable - end - f64.const -8.06684839057968 - f64.const -8 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2756 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 4 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2757 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -8 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2758 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const -7 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2759 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 9 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2760 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2761 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2762 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2763 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2764 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2765 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2768 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2769 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2770 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2771 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2772 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2773 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2774 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2775 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2776 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5 - f64.const 2 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2777 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.5 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2778 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0000152587890625 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2779 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.0000152587890625 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2780 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9999923706054688 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2781 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.9999923706054688 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2782 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.888609052210118e-31 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2783 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.888609052210118e-31 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2784 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const -8 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2793 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 4 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2794 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -8 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2795 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const -7 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2796 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 9 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2797 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2798 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2799 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2800 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2801 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -1 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2802 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2805 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2806 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2807 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2808 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2809 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2810 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2811 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2812 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2813 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5 - f64.const 2 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2814 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.5 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_round - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2815 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.0000152587890625 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2816 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.0000152587890625 - f32.const -1 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2817 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.9999923706054688 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2818 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.9999923706054688 - f32.const -1 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2819 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.888609052210118e-31 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2820 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -7.888609052210118e-31 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_roundf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2821 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_sign - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2832 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_sign - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2833 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_sign - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2834 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_sign - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2835 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_sign - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2836 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_sign - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2837 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_sign - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2838 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_sign - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2839 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_sign - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2840 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_signf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2848 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_signf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2849 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_signf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2850 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_signf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2851 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_signf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2852 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_signf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2853 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_signf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2854 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_signf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2855 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_signf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2856 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - local.set $1 - local.get $1 - i64.reinterpret_f64 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.get $1 - local.get $1 - f64.eq - i32.and - i32.const 0 - i32.ne - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2862 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - local.set $1 - local.get $1 - i64.reinterpret_f64 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.get $1 - local.get $1 - f64.eq - i32.and - i32.const 0 - i32.ne - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2863 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - local.set $1 - local.get $1 - i64.reinterpret_f64 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.get $1 - local.get $1 - f64.eq - i32.and - i32.const 0 - i32.ne - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2864 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - local.set $1 - local.get $1 - i64.reinterpret_f64 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.get $1 - local.get $1 - f64.eq - i32.and - i32.const 0 - i32.ne - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2865 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - local.set $1 - local.get $1 - i64.reinterpret_f64 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.get $1 - local.get $1 - f64.eq - i32.and - i32.const 0 - i32.ne - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2866 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -nan:0x8000000000000 - local.set $1 - local.get $1 - i64.reinterpret_f64 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.get $1 - local.get $1 - f64.eq - i32.and - i32.const 0 - i32.ne - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2867 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - local.set $1 - local.get $1 - i64.reinterpret_f64 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.get $1 - local.get $1 - f64.eq - i32.and - i32.const 0 - i32.ne - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2868 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - local.set $1 - local.get $1 - i64.reinterpret_f64 - i64.const 63 - i64.shr_u - i32.wrap_i64 - local.get $1 - local.get $1 - f64.eq - i32.and - i32.const 0 - i32.ne - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2869 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - local.set $3 - local.get $3 - i32.reinterpret_f32 - i32.const 31 - i32.shr_u - local.get $3 - local.get $3 - f32.eq - i32.and - i32.const 0 - i32.ne - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2875 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - local.set $3 - local.get $3 - i32.reinterpret_f32 - i32.const 31 - i32.shr_u - local.get $3 - local.get $3 - f32.eq - i32.and - i32.const 0 - i32.ne - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2876 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - local.set $3 - local.get $3 - i32.reinterpret_f32 - i32.const 31 - i32.shr_u - local.get $3 - local.get $3 - f32.eq - i32.and - i32.const 0 - i32.ne - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2877 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - local.set $3 - local.get $3 - i32.reinterpret_f32 - i32.const 31 - i32.shr_u - local.get $3 - local.get $3 - f32.eq - i32.and - i32.const 0 - i32.ne - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2878 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - local.set $3 - local.get $3 - i32.reinterpret_f32 - i32.const 31 - i32.shr_u - local.get $3 - local.get $3 - f32.eq - i32.and - i32.const 0 - i32.ne - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2879 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -nan:0x400000 - local.set $3 - local.get $3 - i32.reinterpret_f32 - i32.const 31 - i32.shr_u - local.get $3 - local.get $3 - f32.eq - i32.and - i32.const 0 - i32.ne - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2880 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - local.set $3 - local.get $3 - i32.reinterpret_f32 - i32.const 31 - i32.shr_u - local.get $3 - local.get $3 - f32.eq - i32.and - i32.const 0 - i32.ne - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2881 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - local.set $3 - local.get $3 - i32.reinterpret_f32 - i32.const 31 - i32.shr_u - local.get $3 - local.get $3 - f32.eq - i32.and - i32.const 0 - i32.ne - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2882 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const 4.535662560676869 - f64.const 1.0044767307740567 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2893 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const -8.88799136300345 - f64.const 4.345239849338305 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2894 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -2.763607337379588 - f64.const -0.09061141541648476 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2895 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const 4.567535276842744 - f64.const -1.9641383050707404 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2896 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 4.811392084359796 - f64.const -0.35572720174700656 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2897 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.450045556060236 - f64.const 0.6620717923376739 - f64.const 0.17067236731650248 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2898 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.858890253041697 - f64.const 0.05215452675006225 - f64.const -0.016443286217702822 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2899 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.792054511984896 - f64.const 7.67640268511754 - f64.const -0.792054511984896 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2900 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.615702673197924 - f64.const 2.0119025790324803 - f64.const 0.615702673197924 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2901 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5587586823609152 - f64.const 0.03223983060263804 - f64.const -0.0106815621160685 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2902 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2905 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2906 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const 1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2907 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const 1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2908 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2909 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2910 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5 - f64.const 1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2911 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.5 - f64.const 1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2912 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2 - f64.const 1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2913 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2 - f64.const 1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2914 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2915 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2916 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const 1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2917 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2918 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2919 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const -1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2920 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const -1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2921 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2922 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2923 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5 - f64.const -1 - f64.const -0.5 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2924 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.5 - f64.const -1 - f64.const 0.5 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2925 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2 - f64.const -1 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2926 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2 - f64.const -1 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2927 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2928 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2929 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2930 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2931 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2932 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2933 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const -inf - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2934 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2935 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2936 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2937 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const inf - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2938 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -inf - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2939 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2940 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2941 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2942 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2943 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2944 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const 0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2945 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2946 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2947 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2948 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const -0 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2949 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 2 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2950 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -0.5 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2951 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2952 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const 2 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2953 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -0.5 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2954 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2955 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2956 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2957 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2958 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const inf - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2959 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const inf - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2960 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2961 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2962 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const -inf - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2963 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -inf - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2964 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2965 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2966 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.75 - f64.const 0.5 - f64.const -0.25 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2967 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.75 - f64.const 0.5 - f64.const 0.25 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2968 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.75 - f64.const -0.5 - f64.const -0.25 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2969 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.75 - f64.const -0.5 - f64.const 0.25 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2970 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8e-323 - f64.const inf - f64.const 8e-323 - f64.const 0 - i32.const 0 - call $std/math/test_rem - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2971 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const 4.535662651062012 - f32.const 1.004476547241211 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2980 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const -8.887990951538086 - f32.const 4.345239639282227 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2981 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -2.7636072635650635 - f32.const -0.09061169624328613 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2982 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const 4.567535400390625 - f32.const -1.9641380310058594 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2983 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 4.811392307281494 - f32.const -0.3557271957397461 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2984 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.450045585632324 - f32.const 0.6620717644691467 - f32.const 0.17067205905914307 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2985 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.858890056610107 - f32.const 0.052154526114463806 - f32.const -0.016443386673927307 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2986 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.7920545339584351 - f32.const 7.676402568817139 - f32.const -0.7920545339584351 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2987 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6157026886940002 - f32.const 2.0119025707244873 - f32.const 0.6157026886940002 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2988 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5587586760520935 - f32.const 0.03223983198404312 - f32.const -0.010681532323360443 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2989 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2992 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2993 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const 1 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2994 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const 1 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2995 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2996 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2997 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.5 - f32.const 1 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2998 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.5 - f32.const 1 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 2999 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2 - f32.const 1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3000 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2 - f32.const 1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3001 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3002 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3003 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const 1 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3004 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3005 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3006 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const -1 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3007 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const -1 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3008 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3009 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3010 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.5 - f32.const -1 - f32.const -0.5 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3011 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.5 - f32.const -1 - f32.const 0.5 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3012 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2 - f32.const -1 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3013 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2 - f32.const -1 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3014 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3015 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3016 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3017 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3018 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3019 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3020 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const -inf - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3021 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3022 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3023 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3024 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const inf - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3025 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -inf - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3026 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3027 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3028 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3029 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3030 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3031 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const 0 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3032 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3033 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3034 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3035 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const -0 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3036 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 2 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3037 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -0.5 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3038 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3039 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const 2 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3040 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -0.5 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3041 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3042 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3043 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3044 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3045 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const inf - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3046 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const inf - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3047 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3048 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3049 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const -inf - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3050 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -inf - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3051 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3052 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3053 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.75 - f32.const 0.5 - f32.const -0.25 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3054 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.75 - f32.const 0.5 - f32.const 0.25 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3055 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.75 - f32.const -0.5 - f32.const -0.25 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3056 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.75 - f32.const -0.5 - f32.const 0.25 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3057 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 5.877471754111438e-39 - f32.const inf - f32.const 5.877471754111438e-39 - f32.const 0 - i32.const 0 - call $std/math/test_remf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3058 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const -0.9774292928781227 - f64.const -0.14564912021160126 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3070 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const -0.9333544736965718 - f64.const -0.08813747018575668 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3071 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -0.8640924711706304 - f64.const -0.11743883043527603 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3072 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const -0.24593894772615374 - f64.const -0.12697851657867432 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3073 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 0.15706789772028007 - f64.const -0.029550159350037575 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3074 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.6146844860113447 - f64.const -0.09976737946271896 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3075 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0.39549242182823696 - f64.const -0.3668774962425232 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3076 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.5326763286672376 - f64.const -0.3550407588481903 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3077 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.6991102068649779 - f64.const -0.427672415971756 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3078 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -0.6278312326301215 - f64.const -0.3828115463256836 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3079 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.313225746154785e-10 - f64.const 9.313225746154785e-10 - f64.const 6.510416860692203e-04 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3082 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -9.313225746154785e-10 - f64.const -9.313225746154785e-10 - f64.const -6.510416860692203e-04 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3083 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072014e-308 - f64.const 2.2250738585072014e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3084 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.2250738585072014e-308 - f64.const -2.2250738585072014e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3085 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5e-324 - f64.const 5e-324 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3086 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -5e-324 - f64.const -5e-324 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3087 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3088 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3089 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507202e-308 - f64.const 2.225073858507202e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3090 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072024e-308 - f64.const 2.2250738585072024e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3091 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.4501477170144003e-308 - f64.const 4.4501477170144003e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3092 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.450147717014403e-308 - f64.const 4.450147717014403e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3093 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.450147717014406e-308 - f64.const 4.450147717014406e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3094 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8.900295434028806e-308 - f64.const 8.900295434028806e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3095 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1175870895385742e-08 - f64.const 1.1175870895385742e-08 - f64.const 0.140625 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3096 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.4901161193847656e-08 - f64.const 1.4901161193847656e-08 - f64.const 0.1666666716337204 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3097 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.225073858507202e-308 - f64.const -2.225073858507202e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3098 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.2250738585072024e-308 - f64.const -2.2250738585072024e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3099 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.4501477170144003e-308 - f64.const -4.4501477170144003e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3100 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.450147717014403e-308 - f64.const -4.450147717014403e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3101 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.450147717014406e-308 - f64.const -4.450147717014406e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3102 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.900295434028806e-308 - f64.const -8.900295434028806e-308 - f64.const 0 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3103 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.1175870895385742e-08 - f64.const -1.1175870895385742e-08 - f64.const -0.140625 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3104 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.4901161193847656e-08 - f64.const -1.4901161193847656e-08 - f64.const -0.1666666716337204 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3105 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.4901161193847656e-08 - f64.const -1.4901161193847656e-08 - f64.const -0.1666666716337204 - i32.const 1 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3106 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1e-323 - f64.const 1e-323 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3107 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.4e-323 - f64.const 4.4e-323 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3108 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5.562684646268003e-309 - f64.const 5.562684646268003e-309 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3109 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1125369292536007e-308 - f64.const 1.1125369292536007e-308 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3110 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072004e-308 - f64.const 2.2250738585072004e-308 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3111 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507201e-308 - f64.const 2.225073858507201e-308 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3112 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1e-323 - f64.const -1e-323 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3113 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.4e-323 - f64.const -4.4e-323 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3114 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -5.562684646268003e-309 - f64.const -5.562684646268003e-309 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3115 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.1125369292536007e-308 - f64.const -1.1125369292536007e-308 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3116 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.2250738585072004e-308 - f64.const -2.2250738585072004e-308 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3117 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.225073858507201e-308 - f64.const -2.225073858507201e-308 - f64.const 0 - i32.const 9 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3118 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3121 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3122 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3123 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3124 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_sin - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3125 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5707963267948966 - call $~lib/math/NativeMath.sin - f64.const 1.5707963267948966 - call $~lib/bindings/Math/sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3128 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.141592653589793 - call $~lib/math/NativeMath.sin - f64.const 3.141592653589793 - call $~lib/bindings/Math/sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3129 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.3283064365386963e-10 - f64.const 2.3283064365386963e-10 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3132 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.3283064365386963e-10 - f64.const -2.3283064365386963e-10 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3133 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.3826834323650898 - f64.const 0.39269908169872414 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3135 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.3826834323650898 - f64.const -0.39269908169872414 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3136 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.479425538604203 - f64.const 0.5 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3139 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.479425538604203 - f64.const -0.5 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3140 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1.5707963267948966 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3141 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1.5707963267948966 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3142 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.2246467991473532e-16 - f64.const 3.141592653589793 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3144 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.047032979958965e-14 - f64.const 6911.503837897545 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3145 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.7071067811865477 - f64.const 5.497787143782138 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3147 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7071067811865474 - f64.const 7.0685834705770345 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3148 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7071067811865483 - f64.const 8.63937979737193 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3149 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.7071067811865479 - f64.const 10.210176124166829 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3150 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -3.2103381051568376e-11 - f64.const 823549.6645826427 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3151 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.377820109360752 - f64.const 1329227995784915872903807e12 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3154 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.377820109360752 - f64.const -1329227995784915872903807e12 - call $~lib/math/NativeMath.sin - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3155 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const -0.977429211139679 - f32.const 0.0801057294011116 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3164 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const -0.933354377746582 - f32.const 0.34475627541542053 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3165 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -0.8640924692153931 - f32.const -0.468659907579422 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3166 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const -0.24593880772590637 - f32.const -0.3955177664756775 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3167 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 0.1570674479007721 - f32.const -0.24006809294223785 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3168 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.6146844625473022 - f32.const -0.07707194238901138 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3169 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0.39549243450164795 - f32.const -0.11720617115497589 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3170 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.5326763391494751 - f32.const -0.16059114038944244 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3171 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.699110209941864 - f32.const 0.26384368538856506 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3172 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -0.627831220626831 - f32.const 0.005127954296767712 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3173 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3176 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3177 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3178 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3179 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3180 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.862645149230957e-09 - f32.const 1.862645149230957e-09 - f32.const 4.850638554015907e-12 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3183 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.862645149230957e-09 - f32.const -1.862645149230957e-09 - f32.const -4.850638554015907e-12 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3184 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1754943508222875e-38 - f32.const 1.1754943508222875e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3185 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754943508222875e-38 - f32.const -1.1754943508222875e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3186 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.401298464324817e-45 - f32.const 1.401298464324817e-45 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3187 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.401298464324817e-45 - f32.const -1.401298464324817e-45 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3188 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.175494490952134e-38 - f32.const 1.175494490952134e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3189 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1754946310819804e-38 - f32.const 1.1754946310819804e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3190 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.3509880009953429e-38 - f32.const 2.3509880009953429e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3191 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.350988701644575e-38 - f32.const 2.350988701644575e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3192 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.3509895424236536e-38 - f32.const 2.3509895424236536e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3193 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.70197740328915e-38 - f32.const 4.70197740328915e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3194 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1175870895385742e-08 - f32.const 1.1175870895385742e-08 - f32.const 2.6193447411060333e-10 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3195 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.4901161193847656e-08 - f32.const 1.4901161193847656e-08 - f32.const 3.1044086745701804e-10 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3196 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.000244140625 - f32.const 0.000244140625 - f32.const 0.0833333358168602 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3197 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.0003662109375 - f32.const 0.0003662109375 - f32.const 0.28125 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3198 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.175494490952134e-38 - f32.const -1.175494490952134e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3199 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754946310819804e-38 - f32.const -1.1754946310819804e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3200 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.3509880009953429e-38 - f32.const -2.3509880009953429e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3201 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.350988701644575e-38 - f32.const -2.350988701644575e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3202 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.3509895424236536e-38 - f32.const -2.3509895424236536e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3203 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -4.70197740328915e-38 - f32.const -4.70197740328915e-38 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3204 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1175870895385742e-08 - f32.const -1.1175870895385742e-08 - f32.const -2.6193447411060333e-10 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3205 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.4901161193847656e-08 - f32.const -1.4901161193847656e-08 - f32.const -3.1044086745701804e-10 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3206 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.000244140625 - f32.const -0.000244140625 - f32.const -0.0833333358168602 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3207 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.0003662109375 - f32.const -0.0003662109375 - f32.const -0.28125 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3208 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.802596928649634e-45 - f32.const 2.802596928649634e-45 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3209 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.2611686178923354e-44 - f32.const 1.2611686178923354e-44 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3210 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.938735877055719e-39 - f32.const 2.938735877055719e-39 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3211 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 5.877471754111438e-39 - f32.const 5.877471754111438e-39 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3212 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1754940705625946e-38 - f32.const 1.1754940705625946e-38 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3213 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1754942106924411e-38 - f32.const 1.1754942106924411e-38 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3214 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.802596928649634e-45 - f32.const -2.802596928649634e-45 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3215 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.2611686178923354e-44 - f32.const -1.2611686178923354e-44 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3216 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.938735877055719e-39 - f32.const -2.938735877055719e-39 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3217 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -5.877471754111438e-39 - f32.const -5.877471754111438e-39 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3218 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754940705625946e-38 - f32.const -1.1754940705625946e-38 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3219 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754942106924411e-38 - f32.const -1.1754942106924411e-38 - f32.const 0 - i32.const 9 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3220 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 255.99993896484375 - f32.const -0.9992055892944336 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3223 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 5033165 - f32.const 0.5312945246696472 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3224 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 421657440 - f32.const -0.7397398948669434 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3225 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2147483392 - f32.const 0.2762770354747772 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3226 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 68719476736 - f32.const 0.9855440855026245 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3227 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 549755813888 - f32.const -0.9782648086547852 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3228 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 3402823466385288598117041e14 - f32.const -0.5218765139579773 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3229 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -255.99993896484375 - f32.const 0.9992055892944336 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3230 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -5033165 - f32.const -0.5312945246696472 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3231 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -421657440 - f32.const 0.7397398948669434 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3232 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2147483392 - f32.const -0.2762770354747772 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3233 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -68719476736 - f32.const -0.9855440855026245 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3234 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -549755813888 - f32.const 0.9782648086547852 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3235 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -3402823466385288598117041e14 - f32.const 0.5218765139579773 - f32.const 0 - i32.const 1 - call $std/math/test_sinf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3236 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const -1593.5206801156262 - f64.const -0.2138727605342865 - i32.const 1 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3248 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 38.54878088685412 - f64.const 0.21537430584430695 - i32.const 1 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3249 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -2182.6307505145546 - f64.const 0.16213826835155487 - i32.const 1 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3250 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const -343.2723926847529 - f64.const 0.20479513704776764 - i32.const 1 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3251 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 5291.7790755194055 - f64.const -0.48676517605781555 - i32.const 1 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3252 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.7114062568229157 - f64.const -0.4584641456604004 - i32.const 1 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3253 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0.41790065258739445 - f64.const 0.37220045924186707 - i32.const 1 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3254 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.5917755935451237 - f64.const 0.46178996562957764 - i32.const 1 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3255 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.8538292008852542 - f64.const -0.07019051909446716 - i32.const 1 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3256 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -0.732097615653169 - f64.const 0.26858529448509216 - i32.const 1 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3257 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3260 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3261 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3262 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3263 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_sinh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3264 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const -1593.521240234375 - f32.const 0.1671663224697113 - i32.const 1 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3273 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 38.548770904541016 - f32.const -0.49340328574180603 - i32.const 1 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3274 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -2182.630859375 - f32.const 0.0849970355629921 - i32.const 1 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3275 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const -343.2723388671875 - f32.const 0.0704190656542778 - i32.const 1 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3276 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 5291.78125 - f32.const -0.44362515211105347 - i32.const 1 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3277 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.7114062309265137 - f32.const 0.058103885501623154 - i32.const 1 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3278 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0.4179006516933441 - f32.const 0.39349499344825745 - i32.const 1 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3279 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.5917755961418152 - f32.const -0.4183797240257263 - i32.const 1 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3280 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.8538292050361633 - f32.const 0.45992106199264526 - i32.const 1 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3281 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -0.7320976257324219 - f32.const -0.48159059882164 - i32.const 1 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3282 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3285 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3286 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3287 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3288 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_sinhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3289 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3301 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 2.0845238903256313 - f64.const -0.07180261611938477 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3302 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3303 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3304 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 3.0441841217266385 - f64.const -0.01546262577176094 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3305 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.8136251582267503 - f64.const -0.08618157356977463 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3306 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3307 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.7495063350104014 - f64.const -0.0981396734714508 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3308 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.879859248170583 - f64.const -0.37124353647232056 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3309 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3310 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3313 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3314 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3315 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3316 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3317 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3318 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3319 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4 - f64.const 2 - f64.const 0 - i32.const 0 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3320 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1e-323 - f64.const 3.1434555694052576e-162 - f64.const 0.43537619709968567 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3321 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5e-323 - f64.const 3.849931087076416e-162 - f64.const -0.45194002985954285 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3322 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5e-324 - f64.const 2.2227587494850775e-162 - f64.const 0 - i32.const 0 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3323 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -5e-324 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3324 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9999999999999999 - f64.const 0.9999999999999999 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3325 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.9999999999999998 - f64.const 1.414213562373095 - f64.const -0.21107041835784912 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3326 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0000000000000002 - f64.const 1 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3327 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.0000000000000004 - f64.const 1.4142135623730951 - f64.const -0.27173060178756714 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3328 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0000000000000002 - f64.const 1 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3329 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9999999999999999 - f64.const 0.9999999999999999 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3330 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1797693134862315708145274e284 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3331 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - f64.const 1340780792994259561100831e130 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3332 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 179769313486231490980915e285 - f64.const 134078079299425926338769e131 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3333 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862314111473026e284 - f64.const 1340780792994258965674548e130 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3334 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862313313136902e284 - f64.const 1340780792994258667961407e130 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3335 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862312514800778e284 - f64.const 1340780792994258370248265e130 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3336 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862311716464655e284 - f64.const 1340780792994258072535124e130 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3337 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862310918128531e284 - f64.const 1340780792994257774821982e130 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3338 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862310119792407e284 - f64.const 1340780792994257477108841e130 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3339 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862309321456283e284 - f64.const 1340780792994257179395699e130 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3340 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862308523120159e284 - f64.const 1340780792994256881682558e130 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3341 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862307724784036e284 - f64.const 1340780792994256583969417e130 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3342 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507203e-308 - f64.const 1.4916681462400417e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3343 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507205e-308 - f64.const 1.4916681462400423e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3344 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507207e-308 - f64.const 1.491668146240043e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3345 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507209e-308 - f64.const 1.4916681462400437e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3346 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507211e-308 - f64.const 1.4916681462400443e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3347 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072127e-308 - f64.const 1.491668146240045e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3348 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072147e-308 - f64.const 1.4916681462400457e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3349 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072167e-308 - f64.const 1.4916681462400463e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3350 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072187e-308 - f64.const 1.491668146240047e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3351 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072207e-308 - f64.const 1.4916681462400476e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3352 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072226e-308 - f64.const 1.4916681462400483e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3353 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072246e-308 - f64.const 1.491668146240049e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3354 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072266e-308 - f64.const 1.4916681462400496e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3355 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072286e-308 - f64.const 1.4916681462400503e-154 - f64.const -0.5 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3356 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 92.35130391890645 - f64.const 9.609958580499006 - f64.const 0.4998137056827545 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3357 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 93.3599596388916 - f64.const 9.662295774757238 - f64.const -0.49979978799819946 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3358 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 95.42049628886124 - f64.const 9.76834153215689 - f64.const -0.49997270107269287 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3359 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 95.87916941885449 - f64.const 9.791790919890728 - f64.const 0.4998766779899597 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3360 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 96.84804174884022 - f64.const 9.841140266698785 - f64.const 0.499801903963089 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3361 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 97.43639050883155 - f64.const 9.87098731175517 - f64.const 0.4997696280479431 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3362 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 97.50957979883047 - f64.const 9.874693909120955 - f64.const 0.49999818205833435 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3363 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 97.80496893882612 - f64.const 9.88963947466368 - f64.const -0.4999580681324005 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3364 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 98.2751822888192 - f64.const 9.913383997849534 - f64.const 0.49979931116104126 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3365 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 99.47293564880155 - f64.const 9.973611966023219 - f64.const -0.4999540448188782 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3366 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 100.57047130878539 - f64.const 10.028483001370914 - f64.const -0.49996453523635864 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3367 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 100.60954608878481 - f64.const 10.030431002144665 - f64.const 0.49975672364234924 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3368 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 100.67909109878379 - f64.const 10.033897104255344 - f64.const -0.4997771382331848 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3369 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 101.12268095877725 - f64.const 10.055977374615422 - f64.const 0.49988678097724915 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3370 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 101.3027691287746 - f64.const 10.064927676281366 - f64.const 0.4999105632305145 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3371 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.45932313565507e-307 - f64.const 4.9591563149945874e-154 - f64.const -0.4998999834060669 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3372 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5.610957305180409e-307 - f64.const 7.490632353266584e-154 - f64.const -0.4999343752861023 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3373 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5.8073887977408524e-307 - f64.const 7.62062254526548e-154 - f64.const -0.49989569187164307 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3374 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.026137080471427e-307 - f64.const 8.382205605013174e-154 - f64.const 0.49980640411376953 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3375 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8.438697769194972e-307 - f64.const 9.186238495268328e-154 - f64.const -0.4999065697193146 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3376 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1607792515836795e-306 - f64.const 1.0773946591586944e-153 - f64.const -0.49997684359550476 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3377 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.2827413827423193e-306 - f64.const 1.1325817333606962e-153 - f64.const -0.4999513030052185 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3378 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.7116604596087457e-306 - f64.const 1.3083044216117078e-153 - f64.const -0.49986395239830017 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3379 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.038173251686994e-306 - f64.const 1.4276460526639628e-153 - f64.const 0.4998403787612915 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3380 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.171572060856931e-306 - f64.const 1.4736254818836879e-153 - f64.const 0.4999290406703949 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3381 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.4681399631804094e-306 - f64.const 1.5710314965589996e-153 - f64.const 0.49989044666290283 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3382 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.5175533964200588e-306 - f64.const 1.5866799918131124e-153 - f64.const -0.4997701048851013 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3383 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.6461505468829625e-306 - f64.const 1.6266992797941982e-153 - f64.const 0.4998672902584076 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3384 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.8167076367720413e-306 - f64.const 1.9536395872248397e-153 - f64.const 0.49983471632003784 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3385 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.5743220778562766e-306 - f64.const 2.1387664851161936e-153 - f64.const 0.49985939264297485 - i32.const 1 - call $std/math/test_sqrt - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3386 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3395 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 2.084523916244507 - f32.const 0.3200402557849884 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3396 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3397 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3398 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 3.0441842079162598 - f32.const 0.05022354796528816 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3399 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.813625156879425 - f32.const 0.2240506112575531 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3400 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3401 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.7495063543319702 - f32.const 0.05895441770553589 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3402 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.879859209060669 - f32.const -0.4874873757362366 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3403 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3404 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3407 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3408 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3409 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3410 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3411 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3412 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3413 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4 - f32.const 2 - f32.const 0 - i32.const 0 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3414 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.802596928649634e-45 - f32.const 5.293955920339377e-23 - f32.const 0 - i32.const 0 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3415 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.203895392974451e-45 - f32.const 6.483745598763743e-23 - f32.const 0.37388554215431213 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3416 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.401298464324817e-45 - f32.const 3.743392066509216e-23 - f32.const -0.20303145051002502 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3417 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.401298464324817e-45 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3418 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 3402823466385288598117041e14 - f32.const 18446742974197923840 - f32.const -0.5 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3419 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -3402823466385288598117041e14 - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3420 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.9999998807907104 - f32.const 0.9999999403953552 - f32.const 2.980232594040899e-08 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3421 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.9999999403953552 - f32.const 0.9999999403953552 - f32.const -0.5 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3422 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.999999761581421 - f32.const 1.4142134189605713 - f32.const -0.4959246516227722 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3423 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.9999998807907104 - f32.const 1.4142135381698608 - f32.const 0.15052194893360138 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3424 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.0000001192092896 - f32.const 1 - f32.const -0.5 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3425 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.000000238418579 - f32.const 1.0000001192092896 - f32.const 5.960463766996327e-08 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3426 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.000000238418579 - f32.const 1.4142136573791504 - f32.const 0.08986179530620575 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3427 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.000000476837158 - f32.const 1.41421377658844 - f32.const 0.3827550709247589 - i32.const 1 - call $std/math/test_sqrtf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3428 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const 4.626603542401633 - f64.const -0.2727603316307068 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3440 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 2.600191705822202 - f64.const 0.2651003301143646 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3441 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const 1.7167408328741052 - f64.const -0.24687519669532776 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3442 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const -0.2537322523453725 - f64.const -0.4679703712463379 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3443 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const -0.15904195727191958 - f64.const -0.06704077869653702 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3444 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.7792919106910434 - f64.const -0.038056135177612305 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3445 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0.43059952879543656 - f64.const -0.09242714196443558 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3446 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.62940368731874 - f64.const -0.321913480758667 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3447 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.9777574652949645 - f64.const -0.1966651827096939 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3448 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -0.8066186630209123 - f64.const -0.067665696144104 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3449 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.313225746154785e-10 - f64.const 9.313225746154785e-10 - f64.const -1.3020833721384406e-03 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3452 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -9.313225746154785e-10 - f64.const -9.313225746154785e-10 - f64.const 1.3020833721384406e-03 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3453 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072014e-308 - f64.const 2.2250738585072014e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3454 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.2250738585072014e-308 - f64.const -2.2250738585072014e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3455 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5e-324 - f64.const 5e-324 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3456 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -5e-324 - f64.const -5e-324 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3457 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3458 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3459 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7853981633974483 - f64.const 0.9999999999999999 - f64.const -0.4484681189060211 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3460 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.7853981633974483 - f64.const -0.9999999999999999 - f64.const 0.4484681189060211 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3461 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507202e-308 - f64.const 2.225073858507202e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3462 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072024e-308 - f64.const 2.2250738585072024e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3463 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.4501477170144003e-308 - f64.const 4.4501477170144003e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3464 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.450147717014403e-308 - f64.const 4.450147717014403e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3465 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.450147717014406e-308 - f64.const 4.450147717014406e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3466 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 8.900295434028806e-308 - f64.const 8.900295434028806e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3467 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1175870895385742e-08 - f64.const 1.1175870895385742e-08 - f64.const -0.28125 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3468 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.4901161193847656e-08 - f64.const 1.4901161193847656e-08 - f64.const -0.3333333432674408 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3469 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.225073858507202e-308 - f64.const -2.225073858507202e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3470 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.2250738585072024e-308 - f64.const -2.2250738585072024e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3471 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.4501477170144003e-308 - f64.const -4.4501477170144003e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3472 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.450147717014403e-308 - f64.const -4.450147717014403e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3473 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.450147717014406e-308 - f64.const -4.450147717014406e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3474 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.900295434028806e-308 - f64.const -8.900295434028806e-308 - f64.const 0 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3475 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.1175870895385742e-08 - f64.const -1.1175870895385742e-08 - f64.const 0.28125 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3476 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.4901161193847656e-08 - f64.const -1.4901161193847656e-08 - f64.const 0.3333333432674408 - i32.const 1 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3477 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1e-323 - f64.const 1e-323 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3478 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.4e-323 - f64.const 4.4e-323 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3479 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5.562684646268003e-309 - f64.const 5.562684646268003e-309 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3480 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1125369292536007e-308 - f64.const 1.1125369292536007e-308 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3481 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072004e-308 - f64.const 2.2250738585072004e-308 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3482 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.225073858507201e-308 - f64.const 2.225073858507201e-308 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3483 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1e-323 - f64.const -1e-323 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3484 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -4.4e-323 - f64.const -4.4e-323 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3485 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -5.562684646268003e-309 - f64.const -5.562684646268003e-309 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3486 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.1125369292536007e-308 - f64.const -1.1125369292536007e-308 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3487 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.2250738585072004e-308 - f64.const -2.2250738585072004e-308 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3488 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.225073858507201e-308 - f64.const -2.225073858507201e-308 - f64.const 0 - i32.const 9 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3489 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.3283064365386963e-10 - call $~lib/math/NativeMath.tan - f64.const 2.3283064365386963e-10 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3492 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.3283064365386963e-10 - call $~lib/math/NativeMath.tan - f64.const -2.3283064365386963e-10 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3493 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6875 - call $~lib/math/NativeMath.tan - f64.const 0.6875 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3494 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6875 - call $~lib/math/NativeMath.tan - f64.const -0.6875 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3495 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.39269908169872414 - call $~lib/math/NativeMath.tan - f64.const 0.39269908169872414 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3496 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6743358 - call $~lib/math/NativeMath.tan - f64.const 0.6743358 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3497 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 3.725290298461914e-09 - call $~lib/math/NativeMath.tan - f64.const 3.725290298461914e-09 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3498 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.5707963267948966 - call $~lib/math/NativeMath.tan - f64.const 1.5707963267948966 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3499 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - call $~lib/math/NativeMath.tan - f64.const 0.5 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3501 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.107148717794091 - call $~lib/math/NativeMath.tan - f64.const 1.107148717794091 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3502 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5.497787143782138 - call $~lib/math/NativeMath.tan - f64.const 5.497787143782138 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3503 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.0685834705770345 - call $~lib/math/NativeMath.tan - f64.const 7.0685834705770345 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3504 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1647099.3291652855 - call $~lib/math/NativeMath.tan - f64.const 1647099.3291652855 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3505 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1647097.7583689587 - call $~lib/math/NativeMath.tan - f64.const 1647097.7583689587 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3506 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1329227995784915872903807e12 - call $~lib/math/NativeMath.tan - f64.const 1329227995784915872903807e12 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3507 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1329227995784915872903807e12 - call $~lib/math/NativeMath.tan - f64.const -1329227995784915872903807e12 - call $~lib/bindings/Math/tan - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3508 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3511 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3512 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3513 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 2 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3514 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_tan - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3515 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const 4.626595497131348 - f32.const 0.2455666959285736 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3524 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 2.6001901626586914 - f32.const 0.3652407228946686 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3525 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const 1.716740608215332 - f32.const 0.08169349282979965 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3526 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const -0.2537320852279663 - f32.const 0.23186513781547546 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3527 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const -0.15904149413108826 - f32.const -0.009332014247775078 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3528 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.7792918682098389 - f32.const -0.06759700924158096 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3529 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0.43059954047203064 - f32.const 0.005771996453404427 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3530 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.6294037103652954 - f32.const -0.16838163137435913 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3531 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.977757453918457 - f32.const 0.38969388604164124 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3532 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -0.8066186308860779 - f32.const 0.12294059991836548 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3533 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3536 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3537 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3538 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const nan:0x400000 - f32.const 0 - i32.const 2 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3539 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3540 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.862645149230957e-09 - f32.const 1.862645149230957e-09 - f32.const -9.701277108031814e-12 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3543 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.862645149230957e-09 - f32.const -1.862645149230957e-09 - f32.const 9.701277108031814e-12 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3544 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1754943508222875e-38 - f32.const 1.1754943508222875e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3545 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754943508222875e-38 - f32.const -1.1754943508222875e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3546 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.401298464324817e-45 - f32.const 1.401298464324817e-45 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3547 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.401298464324817e-45 - f32.const -1.401298464324817e-45 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3548 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.175494490952134e-38 - f32.const 1.175494490952134e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3549 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1754946310819804e-38 - f32.const 1.1754946310819804e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3550 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.3509880009953429e-38 - f32.const 2.3509880009953429e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3551 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.350988701644575e-38 - f32.const 2.350988701644575e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3552 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.3509895424236536e-38 - f32.const 2.3509895424236536e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3553 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.70197740328915e-38 - f32.const 4.70197740328915e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3554 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1175870895385742e-08 - f32.const 1.1175870895385742e-08 - f32.const -5.238689482212067e-10 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3555 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.4901161193847656e-08 - f32.const 1.4901161193847656e-08 - f32.const -6.208817349140361e-10 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3556 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.000244140625 - f32.const 0.000244140625 - f32.const -0.1666666716337204 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3557 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.175494490952134e-38 - f32.const -1.175494490952134e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3558 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754946310819804e-38 - f32.const -1.1754946310819804e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3559 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.3509880009953429e-38 - f32.const -2.3509880009953429e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3560 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.350988701644575e-38 - f32.const 2.350988701644575e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3561 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.3509895424236536e-38 - f32.const -2.3509895424236536e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3562 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -4.70197740328915e-38 - f32.const -4.70197740328915e-38 - f32.const 0 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3563 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1175870895385742e-08 - f32.const -1.1175870895385742e-08 - f32.const 5.238689482212067e-10 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3564 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.4901161193847656e-08 - f32.const -1.4901161193847656e-08 - f32.const 6.208817349140361e-10 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3565 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.000244140625 - f32.const -0.000244140625 - f32.const 0.1666666716337204 - i32.const 1 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3566 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.802596928649634e-45 - f32.const 2.802596928649634e-45 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3567 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.2611686178923354e-44 - f32.const 1.2611686178923354e-44 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3568 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 2.938735877055719e-39 - f32.const 2.938735877055719e-39 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3569 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 5.877471754111438e-39 - f32.const 5.877471754111438e-39 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3570 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1754940705625946e-38 - f32.const 1.1754940705625946e-38 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3571 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.1754942106924411e-38 - f32.const 1.1754942106924411e-38 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3572 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.802596928649634e-45 - f32.const -2.802596928649634e-45 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3573 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.2611686178923354e-44 - f32.const -1.2611686178923354e-44 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3574 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -2.938735877055719e-39 - f32.const -2.938735877055719e-39 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3575 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -5.877471754111438e-39 - f32.const -5.877471754111438e-39 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3576 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754940705625946e-38 - f32.const -1.1754940705625946e-38 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3577 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.1754942106924411e-38 - f32.const -1.1754942106924411e-38 - f32.const 0 - i32.const 9 - call $std/math/test_tanf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3578 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const -0.999999803096032 - f64.const 0.012793331407010555 - i32.const 1 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3590 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 0.9996636978961307 - f64.const 0.1573508232831955 - i32.const 1 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3591 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -0.9999998950434862 - f64.const 0.27985066175460815 - i32.const 1 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3592 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const -0.9999957568392429 - f64.const -0.44285574555397034 - i32.const 1 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3593 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 0.9999999821447234 - f64.const 0.4462755024433136 - i32.const 1 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3594 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0.5796835018635275 - f64.const 0.4892043173313141 - i32.const 1 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3595 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0.3855853099901652 - f64.const 0.35993871092796326 - i32.const 1 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3596 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0.5092819248700439 - f64.const -0.39436522126197815 - i32.const 1 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3597 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0.6493374550318555 - f64.const -0.4899396002292633 - i32.const 1 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3598 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -0.590715084799841 - f64.const -0.0145387789234519 - i32.const 1 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3599 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3602 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3603 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3604 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3605 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_tanh - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3606 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const -0.9999998211860657 - f32.const -0.3034979999065399 - i32.const 1 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3615 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 0.9996637105941772 - f32.const 0.2154078334569931 - i32.const 1 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3616 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -0.9999998807907104 - f32.const 0.23912210762500763 - i32.const 1 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3617 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const -0.999995768070221 - f32.const -0.18844597041606903 - i32.const 1 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3618 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 1 - f32.const 0.1497807800769806 - i32.const 1 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3619 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0.5796834826469421 - f32.const -0.05590476095676422 - i32.const 1 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3620 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0.38558530807495117 - f32.const 0.349787175655365 - i32.const 1 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3621 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0.5092819333076477 - f32.const -0.1528785079717636 - i32.const 1 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3622 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0.6493374705314636 - f32.const 0.4317026138305664 - i32.const 1 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3623 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -0.5907150506973267 - f32.const 0.4079873859882355 - i32.const 1 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3624 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3627 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3628 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3629 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3630 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_tanhf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3631 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.06684839057968 - f64.const -8 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3643 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.345239849338305 - f64.const 4 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3644 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -8.38143342755525 - f64.const -8 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3645 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -6.531673581913484 - f64.const -6 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3646 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9.267056966972586 - f64.const 9 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3647 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.6619858980995045 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3648 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.4066039223853553 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3649 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5617597462207241 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3650 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.7741522965913037 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3651 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.6787637026394024 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3652 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const nan:0x8000000000000 - f64.const 0 - i32.const 0 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3655 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - f64.const inf - f64.const 0 - i32.const 0 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3656 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - f64.const -inf - f64.const 0 - i32.const 0 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3657 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - f64.const 0 - f64.const 0 - i32.const 0 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3658 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - f64.const -0 - f64.const 0 - i32.const 0 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3659 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const 1 - f64.const 0 - i32.const 0 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3660 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const -1 - f64.const 0 - i32.const 0 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3661 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.5 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3662 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.5 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3663 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.0000152587890625 - f64.const 1 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3664 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.0000152587890625 - f64.const -1 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3665 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9999923706054688 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3666 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.9999923706054688 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3667 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 7.888609052210118e-31 - f64.const 0 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3668 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -7.888609052210118e-31 - f64.const -0 - f64.const 0 - i32.const 1 - call $std/math/test_trunc - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3669 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.066848754882812 - f32.const -8 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3678 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 4.345239639282227 - f32.const 4 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3679 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -8.381433486938477 - f32.const -8 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3680 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -6.531673431396484 - f32.const -6 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3681 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 9.267057418823242 - f32.const 9 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3682 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.6619858741760254 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3683 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.40660393238067627 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3684 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5617597699165344 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3685 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.7741522789001465 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3686 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.6787636876106262 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3687 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - f32.const nan:0x400000 - f32.const 0 - i32.const 0 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3690 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - f32.const inf - f32.const 0 - i32.const 0 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3691 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - f32.const -inf - f32.const 0 - i32.const 0 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3692 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - f32.const 0 - f32.const 0 - i32.const 0 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3693 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0 - f32.const -0 - f32.const 0 - i32.const 0 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3694 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - f32.const 1 - f32.const 0 - i32.const 0 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3695 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1 - f32.const -1 - f32.const 0 - i32.const 0 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3696 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.5 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3697 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.5 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3698 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.0000152587890625 - f32.const 1 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3699 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -1.0000152587890625 - f32.const -1 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3700 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0.9999923706054688 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3701 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -0.9999923706054688 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3702 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 7.888609052210118e-31 - f32.const 0 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3703 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -7.888609052210118e-31 - f32.const -0 - f32.const 0 - i32.const 1 - call $std/math/test_truncf - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3704 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -4602641186874283791 - i64.const -4616392916911125550 - i64.const -4628956453976145920 - i64.const -4626592471448962314 - i64.const -4630808324688838656 - global.get $std/math/INEXACT - call $std/math/test_sincos - drop - i64.const 4616578323568966759 - i64.const -4616789907589610460 - i64.const -4632356642145435648 - i64.const -4623234040091605244 - i64.const -4630954342839484416 - global.get $std/math/INEXACT - call $std/math/test_sincos - drop - i64.const -4602464091242371353 - i64.const -4617413764247143988 - i64.const -4630245256623816704 - i64.const -4620663195860462557 - i64.const -4641537901929168896 - global.get $std/math/INEXACT - call $std/math/test_sincos - drop - i64.const -4604332007749985084 - i64.const -4625343132137557201 - i64.const -4629629133364658176 - i64.const 4606905765568473756 - i64.const -4621075345754292224 - global.get $std/math/INEXACT - call $std/math/test_sincos - drop - i64.const 4621406507342668262 - i64.const 4594826987695694788 - i64.const -4639197561901547520 - i64.const -4616301417154991689 - i64.const 4602463851227643904 - global.get $std/math/INEXACT - call $std/math/test_sincos - drop - i64.const 4604137858433287319 - i64.const 4603711805189578650 - i64.const -4631518618864058368 - i64.const 4605279855905985745 - i64.const 4593746800099196928 - global.get $std/math/INEXACT - call $std/math/test_sincos - drop - i64.const -4622375691843501615 - i64.const -4622575858842575876 - i64.const -4623091339515396096 - i64.const 4606448054996611351 - i64.const -4624994927539912704 - global.get $std/math/INEXACT - call $std/math/test_sincos - drop - i64.const 4603235101512779211 - i64.const 4602973141375866126 - i64.const -4623304571219869696 - i64.const 4605798183832360369 - i64.const -4624249509122146304 - global.get $std/math/INEXACT - call $std/math/test_sincos - drop - i64.const 4605148163534189634 - i64.const 4604472244479532466 - i64.const -4621996155604041728 - i64.const 4604615492473651755 - i64.const -4632555521679818752 - global.get $std/math/INEXACT - call $std/math/test_sincos - drop - i64.const -4619083057392940530 - i64.const -4619541816298850243 - i64.const -4622804297187328000 - i64.const 4605185968576882368 - i64.const 4599236402884902912 - global.get $std/math/INEXACT - call $std/math/test_sincos - drop - f64.const 2 - f64.const 4 - call $~lib/math/NativeMath.imul - f64.const 8 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3745 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - f64.const 8 - call $~lib/math/NativeMath.imul - f64.const -8 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3746 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2 - f64.const -2 - call $~lib/math/NativeMath.imul - f64.const 4 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3747 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4294967295 - f64.const 5 - call $~lib/math/NativeMath.imul - f64.const -5 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3748 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4294967294 - f64.const 5 - call $~lib/math/NativeMath.imul - f64.const -10 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3749 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.e+60 - f64.const 1.e+60 - call $~lib/math/NativeMath.imul - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3750 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.e+60 - f64.const -1.e+60 - call $~lib/math/NativeMath.imul - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3751 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.e+60 - f64.const -1.e+60 - call $~lib/math/NativeMath.imul - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3752 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.e+24 - f64.const 100 - call $~lib/math/NativeMath.imul - f64.const -2147483648 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3753 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - f64.const 1 - call $~lib/math/NativeMath.imul - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3754 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - f64.const inf - call $~lib/math/NativeMath.imul - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3755 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - f64.const 1797693134862315708145274e284 - call $~lib/math/NativeMath.imul - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3756 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - call $~lib/math/NativeMath.clz32 - f64.const 32 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3760 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - call $~lib/math/NativeMath.clz32 - f64.const 31 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3761 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - call $~lib/math/NativeMath.clz32 - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3762 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -128 - call $~lib/math/NativeMath.clz32 - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3763 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4294967295 - call $~lib/math/NativeMath.clz32 - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3764 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4294967295.5 - call $~lib/math/NativeMath.clz32 - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3765 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4294967296 - call $~lib/math/NativeMath.clz32 - f64.const 32 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3766 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4294967297 - call $~lib/math/NativeMath.clz32 - f64.const 31 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3767 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - call $~lib/math/NativeMath.clz32 - f64.const 32 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3768 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - call $~lib/math/NativeMath.clz32 - f64.const 32 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3769 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9007199254740991 - call $~lib/math/NativeMath.clz32 - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3770 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -9007199254740991 - call $~lib/math/NativeMath.clz32 - f64.const 31 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3771 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - call $~lib/math/NativeMath.clz32 - f64.const 32 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3772 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5e-324 - call $~lib/math/NativeMath.clz32 - f64.const 32 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3773 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1797693134862315708145274e284 - call $~lib/math/NativeMath.clz32 - f64.const 32 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3774 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.220446049250313e-16 - call $~lib/math/NativeMath.clz32 - f64.const 32 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3775 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 0 - i32.const 0 - call $~lib/math/ipow64 - i64.const 1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3779 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 0 - i32.const 1 - call $~lib/math/ipow64 - i64.const 0 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3780 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 0 - i32.const 2 - call $~lib/math/ipow64 - i64.const 0 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3781 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 0 - i32.const 3 - call $~lib/math/ipow64 - i64.const 0 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3782 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 1 - i32.const 0 - call $~lib/math/ipow64 - i64.const 1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3784 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 1 - i32.const 1 - call $~lib/math/ipow64 - i64.const 1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3785 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 1 - i32.const 2 - call $~lib/math/ipow64 - i64.const 1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3786 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 1 - i32.const 3 - call $~lib/math/ipow64 - i64.const 1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3787 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 2 - i32.const 0 - call $~lib/math/ipow64 - i64.const 1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3789 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 2 - i32.const 1 - call $~lib/math/ipow64 - i64.const 2 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3790 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 2 - i32.const 2 - call $~lib/math/ipow64 - i64.const 4 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3791 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 2 - i32.const 3 - call $~lib/math/ipow64 - i64.const 8 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3792 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -1 - i32.const 0 - call $~lib/math/ipow64 - i64.const 1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3794 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -1 - i32.const 1 - call $~lib/math/ipow64 - i64.const -1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3795 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -1 - i32.const 2 - call $~lib/math/ipow64 - i64.const 1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3796 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -1 - i32.const 3 - call $~lib/math/ipow64 - i64.const -1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3797 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -2 - i32.const 0 - call $~lib/math/ipow64 - i64.const 1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3799 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -2 - i32.const 1 - call $~lib/math/ipow64 - i64.const -2 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3800 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -2 - i32.const 2 - call $~lib/math/ipow64 - i64.const 4 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3801 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -2 - i32.const 3 - call $~lib/math/ipow64 - i64.const -8 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3802 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 3 - i32.const 40 - call $~lib/math/ipow64 - i64.const -6289078614652622815 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3804 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 3 - i32.const 41 - call $~lib/math/ipow64 - i64.const -420491770248316829 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3805 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 3 - i32.const 42 - call $~lib/math/ipow64 - i64.const -1261475310744950487 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3806 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 3 - i32.const 43 - call $~lib/math/ipow64 - i64.const -3784425932234851461 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3807 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 3 - i32.const 63 - call $~lib/math/ipow64 - i64.const -3237885987332494933 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3808 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 3 - i32.const 64 - call $~lib/math/ipow64 - i64.const 8733086111712066817 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3809 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 3 - i32.const 128 - call $~lib/math/ipow64 - i64.const -9204772141784466943 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3810 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 57055 - i32.const 3 - call $~lib/math/ipow64 - i64.const 339590 - i32.const 3 - call $~lib/math/ipow64 - i64.add - i64.const 39347712995520375 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3812 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 0 - i32.const 0 - call $~lib/math/ipow32f - f32.const 1 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3816 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - i32.const 0 - call $~lib/math/ipow32f - f32.const 1 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3817 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - i32.const 1 - call $~lib/math/ipow32f - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3818 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - i32.const -1 - call $~lib/math/ipow32f - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3819 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const nan:0x400000 - i32.const 2 - call $~lib/math/ipow32f - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3820 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - i32.const 0 - call $~lib/math/ipow32f - f32.const 1 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3821 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const inf - i32.const 1 - call $~lib/math/ipow32f - f32.const inf - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3822 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - i32.const 0 - call $~lib/math/ipow32f - f32.const 1 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3823 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - i32.const 1 - call $~lib/math/ipow32f - f32.const -inf - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3824 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const -inf - i32.const 2 - call $~lib/math/ipow32f - f32.const inf - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3825 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1 - i32.const 0 - call $~lib/math/ipow32f - f32.const 1 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3826 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 3402823466385288598117041e14 - i32.const 2 - call $~lib/math/ipow32f - f32.const inf - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3827 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 1.401298464324817e-45 - i32.const 2 - call $~lib/math/ipow32f - f32.const 0 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3828 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 3402823466385288598117041e14 - i32.const -1 - call $~lib/math/ipow32f - f32.const 2.938735877055719e-39 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3829 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 10 - i32.const 36 - call $~lib/math/ipow32f - f32.const 1000000040918478759629753e12 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3830 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f32.const 10 - i32.const -36 - call $~lib/math/ipow32f - f32.const 9.999999462560281e-37 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3831 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - i32.const 0 - call $~lib/math/ipow64f - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3835 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - i32.const 0 - call $~lib/math/ipow64f - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3836 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - i32.const 1 - call $~lib/math/ipow64f - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3837 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - i32.const -1 - call $~lib/math/ipow64f - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3838 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - i32.const 2 - call $~lib/math/ipow64f - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3839 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - i32.const 0 - call $~lib/math/ipow64f - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3840 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - i32.const 1 - call $~lib/math/ipow64f - f64.const inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3841 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - i32.const 0 - call $~lib/math/ipow64f - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3842 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - i32.const 1 - call $~lib/math/ipow64f - f64.const -inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3843 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - i32.const 2 - call $~lib/math/ipow64f - f64.const inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3844 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - i32.const 0 - call $~lib/math/ipow64f - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3845 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - i32.const 2 - call $~lib/math/ipow64f - f64.const inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3846 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5e-324 - i32.const 2 - call $~lib/math/ipow64f - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3847 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - i32.const -1 - call $~lib/math/ipow64f - f64.const 5.562684646268003e-309 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3848 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 10 - i32.const 127 - call $~lib/math/ipow64f - f64.const 1000000000000000195419867e103 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3849 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 10 - i32.const -127 - call $~lib/math/ipow64f - f64.const 9.999999999999998e-128 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 24 - i32.const 3850 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - ) - (func $start (; 179 ;) (type $FUNCSIG$v) - call $start:std/math - ) - (func $null (; 180 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index d5aa245a5f..bcd248f235 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -1604,7 +1604,7 @@ if i32.const 176 i32.const 224 - i32.const 57 + i32.const 52 i32.const 42 call $~lib/builtins/abort unreachable @@ -7611,7 +7611,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/std/set.untouched.wat b/tests/compiler/std/set.untouched.wat index cc4e223c60..f4a8a43248 100644 --- a/tests/compiler/std/set.untouched.wat +++ b/tests/compiler/std/set.untouched.wat @@ -2040,7 +2040,7 @@ if i32.const 176 i32.const 224 - i32.const 57 + i32.const 52 i32.const 42 call $~lib/builtins/abort unreachable @@ -11370,7 +11370,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/static-array.untouched.wat b/tests/compiler/std/static-array.untouched.wat index c60689f5f3..e69de29bb2 100644 --- a/tests/compiler/std/static-array.untouched.wat +++ b/tests/compiler/std/static-array.untouched.wat @@ -1,2389 +0,0 @@ -(module - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$jii (func (param i32 i32) (result i64))) - (type $FUNCSIG$viij (func (param i32 i32 i64))) - (type $FUNCSIG$fii (func (param i32 i32) (result f32))) - (type $FUNCSIG$viif (func (param i32 i32 f32))) - (type $FUNCSIG$dii (func (param i32 i32) (result f64))) - (type $FUNCSIG$viid (func (param i32 i32 f64))) - (type $FUNCSIG$v (func)) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (memory $0 1) - (data (i32.const 8) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") - (data (i32.const 32) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\18\00\00\00\18\00\00\00\08\00\00\00\02\00\00\00") - (data (i32.const 64) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\03\00\00\00\00\00\00\00\04\00\00\00\00\00\00\00") - (data (i32.const 96) "\10\00\00\00\01\00\00\00\04\00\00\00\10\00\00\00P\00\00\00P\00\00\00\10\00\00\00\02\00\00\00") - (data (i32.const 128) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\00\00\c0?\00\00 @") - (data (i32.const 152) "\10\00\00\00\01\00\00\00\05\00\00\00\10\00\00\00\90\00\00\00\90\00\00\00\08\00\00\00\02\00\00\00") - (data (i32.const 184) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\00\00\f4?\00\00\00\00\00\00\02@") - (data (i32.const 216) "\10\00\00\00\01\00\00\00\06\00\00\00\10\00\00\00\c8\00\00\00\c8\00\00\00\10\00\00\00\02\00\00\00") - (data (i32.const 248) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00s\00t\00d\00/\00s\00t\00a\00t\00i\00c\00-\00a\00r\00r\00a\00y\00.\00t\00s\00") - (data (i32.const 304) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") - (data (i32.const 360) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") - (data (i32.const 408) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") - (data (i32.const 456) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00s\00t\00u\00b\00.\00t\00s\00") - (table $0 1 funcref) - (elem (i32.const 0) $null) - (global $std/static-array/i i32 (i32.const 48)) - (global $std/static-array/I i32 (i32.const 112)) - (global $std/static-array/f i32 (i32.const 168)) - (global $std/static-array/F i32 (i32.const 232)) - (global $~lib/rt/stub/startOffset (mut i32) (i32.const 0)) - (global $~lib/rt/stub/offset (mut i32) (i32.const 0)) - (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) - (global $~lib/heap/__heap_base i32 (i32.const 504)) - (export "memory" (memory $0)) - (start $start) - (func $~lib/array/Array#get:length (; 1 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array#__unchecked_get (; 2 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - ) - (func $~lib/array/Array#__get (; 3 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 320 - i32.const 376 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $~lib/rt/stub/maybeGrowMemory (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - memory.size - local.set $1 - local.get $1 - i32.const 16 - i32.shl - local.set $2 - local.get $0 - local.get $2 - i32.gt_u - if - local.get $0 - local.get $2 - i32.sub - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $3 - local.get $1 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.set $4 - local.get $4 - memory.grow - i32.const 0 - i32.lt_s - if - local.get $3 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - end - local.get $0 - global.set $~lib/rt/stub/offset - ) - (func $~lib/rt/stub/__alloc (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.const 1073741808 - i32.gt_u - if - unreachable - end - global.get $~lib/rt/stub/offset - i32.const 16 - i32.add - local.set $2 - local.get $0 - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.tee $3 - i32.const 16 - local.tee $4 - local.get $3 - local.get $4 - i32.gt_u - select - local.set $5 - local.get $2 - local.get $5 - i32.add - call $~lib/rt/stub/maybeGrowMemory - local.get $2 - i32.const 16 - i32.sub - local.set $6 - local.get $6 - local.get $5 - i32.store - local.get $6 - i32.const -1 - i32.store offset=4 - local.get $6 - local.get $1 - i32.store offset=8 - local.get $6 - local.get $0 - i32.store offset=12 - local.get $2 - ) - (func $~lib/util/memory/memcpy (; 6 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - loop $continue|0 - local.get $2 - if (result i32) - local.get $1 - i32.const 3 - i32.and - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $0 - i32.const 3 - i32.and - i32.const 0 - i32.eq - if - block $break|1 - loop $continue|1 - local.get $2 - i32.const 16 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $1 - i32.const 8 - i32.add - i32.load - i32.store - local.get $0 - i32.const 12 - i32.add - local.get $1 - i32.const 12 - i32.add - i32.load - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|1 - end - unreachable - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.set $0 - local.get $1 - i32.const 4 - i32.add - local.set $1 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.get $1 - i32.load16_u - i32.store16 - local.get $0 - i32.const 2 - i32.add - local.set $0 - local.get $1 - i32.const 2 - i32.add - local.set $1 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - return - end - local.get $2 - i32.const 32 - i32.ge_u - if - block $break|2 - block $case2|2 - block $case1|2 - block $case0|2 - local.get $0 - i32.const 3 - i32.and - local.set $5 - local.get $5 - i32.const 1 - i32.eq - br_if $case0|2 - local.get $5 - i32.const 2 - i32.eq - br_if $case1|2 - local.get $5 - i32.const 3 - i32.eq - br_if $case2|2 - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 3 - i32.sub - local.set $2 - block $break|3 - loop $continue|3 - local.get $2 - i32.const 17 - i32.ge_u - i32.eqz - br_if $break|3 - local.get $1 - i32.const 1 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 5 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 9 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 13 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|3 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - block $break|4 - loop $continue|4 - local.get $2 - i32.const 18 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $1 - i32.const 2 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 6 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 10 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 14 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|4 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - block $break|5 - loop $continue|5 - local.get $2 - i32.const 19 - i32.ge_u - i32.eqz - br_if $break|5 - local.get $1 - i32.const 3 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 7 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 11 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 15 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|5 - end - unreachable - end - br $break|2 - end - end - local.get $2 - i32.const 16 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - ) - (func $~lib/memory/memory.copy (; 7 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - block $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - local.get $4 - i32.eq - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $4 - local.get $3 - i32.add - local.get $5 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $5 - local.get $3 - i32.add - local.get $4 - i32.le_u - end - if - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $4 - i32.lt_u - if - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|0 - loop $continue|0 - local.get $5 - i32.const 7 - i32.and - i32.eqz - br_if $break|0 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $3 - i32.const 1 - i32.sub - local.set $3 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - br $continue|0 - end - unreachable - end - block $break|1 - loop $continue|1 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $5 - local.get $4 - i64.load - i64.store - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - i32.const 8 - i32.add - local.set $5 - local.get $4 - i32.const 8 - i32.add - local.set $4 - br $continue|1 - end - unreachable - end - end - block $break|2 - loop $continue|2 - local.get $3 - i32.eqz - br_if $break|2 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - local.get $3 - i32.const 1 - i32.sub - local.set $3 - br $continue|2 - end - unreachable - end - else - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|3 - loop $continue|3 - local.get $5 - local.get $3 - i32.add - i32.const 7 - i32.and - i32.eqz - br_if $break|3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - local.get $3 - i32.add - local.get $4 - local.get $3 - i32.add - i64.load - i64.store - br $continue|4 - end - unreachable - end - end - block $break|5 - loop $continue|5 - local.get $3 - i32.eqz - br_if $break|5 - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|5 - end - unreachable - end - end - end - ) - (func $~lib/rt/stub/__realloc (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 472 - i32.const 43 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 16 - i32.sub - local.set $2 - local.get $2 - i32.load - local.set $3 - local.get $2 - i32.load offset=4 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 472 - i32.const 46 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $3 - i32.gt_u - if - local.get $0 - local.get $3 - i32.add - global.get $~lib/rt/stub/offset - i32.eq - if - local.get $1 - i32.const 1073741808 - i32.gt_u - if - unreachable - end - local.get $1 - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.set $3 - local.get $0 - local.get $3 - i32.add - call $~lib/rt/stub/maybeGrowMemory - local.get $2 - local.get $3 - i32.store - else - local.get $1 - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.tee $4 - local.get $3 - i32.const 1 - i32.shl - local.tee $5 - local.get $4 - local.get $5 - i32.gt_u - select - local.set $3 - local.get $3 - local.get $2 - i32.load offset=8 - call $~lib/rt/stub/__alloc - local.set $4 - local.get $4 - local.get $0 - local.get $2 - i32.load offset=12 - call $~lib/memory/memory.copy - local.get $4 - local.tee $0 - i32.const 16 - i32.sub - local.set $2 - end - else - local.get $0 - local.get $3 - i32.add - global.get $~lib/rt/stub/offset - i32.eq - if - local.get $1 - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.set $3 - local.get $0 - local.get $3 - i32.add - global.set $~lib/rt/stub/offset - local.get $2 - local.get $3 - i32.store - end - end - local.get $2 - local.get $1 - i32.store offset=12 - local.get $0 - ) - (func $~lib/memory/memory.fill (; 9 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - block $~lib/util/memory/memset|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 1 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 2 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.get $4 - i32.store8 - local.get $5 - i32.const 2 - i32.add - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 2 - i32.sub - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 3 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 6 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 3 - i32.add - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 8 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - i32.const 0 - local.get $5 - i32.sub - i32.const 3 - i32.and - local.set $6 - local.get $5 - local.get $6 - i32.add - local.set $5 - local.get $3 - local.get $6 - i32.sub - local.set $3 - local.get $3 - i32.const -4 - i32.and - local.set $3 - i32.const -1 - i32.const 255 - i32.div_u - local.get $4 - i32.const 255 - i32.and - i32.mul - local.set $7 - local.get $5 - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.get $7 - i32.store - local.get $3 - i32.const 8 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 4 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 8 - i32.add - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 12 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 8 - i32.sub - local.get $7 - i32.store - local.get $3 - i32.const 24 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 12 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 16 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 20 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 24 - i32.add - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 28 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 24 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 20 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 16 - i32.sub - local.get $7 - i32.store - i32.const 24 - local.get $5 - i32.const 4 - i32.and - i32.add - local.set $6 - local.get $5 - local.get $6 - i32.add - local.set $5 - local.get $3 - local.get $6 - i32.sub - local.set $3 - local.get $7 - i64.extend_i32_u - local.get $7 - i64.extend_i32_u - i64.const 32 - i64.shl - i64.or - local.set $8 - block $break|0 - loop $continue|0 - local.get $3 - i32.const 32 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $5 - local.get $8 - i64.store - local.get $5 - i32.const 8 - i32.add - local.get $8 - i64.store - local.get $5 - i32.const 16 - i32.add - local.get $8 - i64.store - local.get $5 - i32.const 24 - i32.add - local.get $8 - i64.store - local.get $3 - i32.const 32 - i32.sub - local.set $3 - local.get $5 - i32.const 32 - i32.add - local.set $5 - br $continue|0 - end - unreachable - end - end - ) - (func $~lib/rt/stub/__retain (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - ) - (func $~lib/array/ensureSize (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=8 - local.set $3 - local.get $1 - local.get $3 - local.get $2 - i32.shr_u - i32.gt_u - if - local.get $1 - i32.const 1073741808 - local.get $2 - i32.shr_u - i32.gt_u - if - i32.const 424 - i32.const 376 - i32.const 14 - i32.const 47 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load - local.set $4 - local.get $1 - local.get $2 - i32.shl - local.set $5 - local.get $4 - local.get $5 - call $~lib/rt/stub/__realloc - local.set $6 - local.get $6 - local.get $3 - i32.add - i32.const 0 - local.get $5 - local.get $3 - i32.sub - call $~lib/memory/memory.fill - local.get $6 - local.get $4 - i32.ne - if - local.get $0 - local.get $6 - call $~lib/rt/stub/__retain - i32.store - local.get $0 - local.get $6 - i32.store offset=4 - end - local.get $0 - local.get $5 - i32.store offset=8 - end - ) - (func $~lib/array/Array#__unchecked_set (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.get $2 - i32.store - ) - (func $~lib/array/Array#__set (; 13 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.const 2 - call $~lib/array/ensureSize - local.get $0 - local.get $1 - local.get $2 - call $~lib/array/Array#__unchecked_set - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_s - if - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=12 - end - ) - (func $~lib/array/Array#get:length (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array#__unchecked_get (; 15 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - i64.load - ) - (func $~lib/array/Array#__get (; 16 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - (local $2 i64) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 320 - i32.const 376 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $~lib/array/Array#__unchecked_set (; 17 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - local.get $2 - i64.store - ) - (func $~lib/array/Array#__set (; 18 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.const 3 - call $~lib/array/ensureSize - local.get $0 - local.get $1 - local.get $2 - call $~lib/array/Array#__unchecked_set - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_s - if - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=12 - end - ) - (func $~lib/array/Array#get:length (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array#__unchecked_get (; 20 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - f32.load - ) - (func $~lib/array/Array#__get (; 21 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) - (local $2 f32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 320 - i32.const 376 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $~lib/array/Array#__unchecked_set (; 22 ;) (type $FUNCSIG$viif) (param $0 i32) (param $1 i32) (param $2 f32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.get $2 - f32.store - ) - (func $~lib/array/Array#__set (; 23 ;) (type $FUNCSIG$viif) (param $0 i32) (param $1 i32) (param $2 f32) - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.const 2 - call $~lib/array/ensureSize - local.get $0 - local.get $1 - local.get $2 - call $~lib/array/Array#__unchecked_set - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_s - if - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=12 - end - ) - (func $~lib/array/Array#get:length (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array#__unchecked_get (; 25 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - f64.load - ) - (func $~lib/array/Array#__get (; 26 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) - (local $2 f64) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 320 - i32.const 376 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $~lib/array/Array#__unchecked_set (; 27 ;) (type $FUNCSIG$viid) (param $0 i32) (param $1 i32) (param $2 f64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - local.get $2 - f64.store - ) - (func $~lib/array/Array#__set (; 28 ;) (type $FUNCSIG$viid) (param $0 i32) (param $1 i32) (param $2 f64) - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.const 3 - call $~lib/array/ensureSize - local.get $0 - local.get $1 - local.get $2 - call $~lib/array/Array#__unchecked_set - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_s - if - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=12 - end - ) - (func $start:std/static-array (; 29 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - i32.const 48 - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 6 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 48 - i32.const 0 - call $~lib/array/Array#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 7 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 48 - i32.const 1 - call $~lib/array/Array#__get - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 8 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/heap/__heap_base - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - global.set $~lib/rt/stub/startOffset - global.get $~lib/rt/stub/startOffset - global.set $~lib/rt/stub/offset - global.get $std/static-array/i - i32.const 0 - i32.const 2 - call $~lib/array/Array#__set - i32.const 48 - i32.const 0 - call $~lib/array/Array#__get - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 10 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 112 - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 12 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 112 - i32.const 0 - call $~lib/array/Array#__get - i64.const 3 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 13 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 112 - i32.const 1 - call $~lib/array/Array#__get - i64.const 4 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 14 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/static-array/I - i32.const 0 - i64.const 4 - call $~lib/array/Array#__set - i32.const 112 - i32.const 0 - call $~lib/array/Array#__get - i64.const 4 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 16 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 168 - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 18 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 168 - i32.const 0 - call $~lib/array/Array#__get - f32.const 1.5 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 19 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 168 - i32.const 1 - call $~lib/array/Array#__get - f32.const 2.5 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 20 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/static-array/f - i32.const 0 - f32.const 2.5 - call $~lib/array/Array#__set - i32.const 168 - i32.const 0 - call $~lib/array/Array#__get - f32.const 2.5 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 22 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 232 - call $~lib/array/Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 24 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 232 - i32.const 0 - call $~lib/array/Array#__get - f64.const 1.25 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 25 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 232 - i32.const 1 - call $~lib/array/Array#__get - f64.const 2.25 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 26 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/static-array/F - i32.const 0 - f64.const 2.25 - call $~lib/array/Array#__set - i32.const 232 - i32.const 0 - call $~lib/array/Array#__get - f64.const 2.25 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 264 - i32.const 28 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - ) - (func $start (; 30 ;) (type $FUNCSIG$v) - call $start:std/static-array - ) - (func $null (; 31 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index 54ac4558aa..ef6cf43c35 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -3864,7 +3864,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/std/string-encoding.untouched.wat b/tests/compiler/std/string-encoding.untouched.wat index eb9da63f99..aabb8d9f5e 100644 --- a/tests/compiler/std/string-encoding.untouched.wat +++ b/tests/compiler/std/string-encoding.untouched.wat @@ -5597,7 +5597,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/string.untouched.wat b/tests/compiler/std/string.untouched.wat index 557e8f3b35..e69de29bb2 100644 --- a/tests/compiler/std/string.untouched.wat +++ b/tests/compiler/std/string.untouched.wat @@ -1,18441 +0,0 @@ -(module - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$vii (func (param i32 i32))) - (type $FUNCSIG$v (func)) - (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$dii (func (param i32 i32) (result f64))) - (type $FUNCSIG$jii (func (param i32 i32) (result i64))) - (type $FUNCSIG$di (func (param i32) (result f64))) - (type $FUNCSIG$ddi (func (param f64 i32) (result f64))) - (type $FUNCSIG$id (func (param f64) (result i32))) - (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$ij (func (param i64) (result i32))) - (type $FUNCSIG$viji (func (param i32 i64 i32))) - (type $FUNCSIG$iid (func (param i32 f64) (result i32))) - (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) - (type $FUNCSIG$i (func (result i32))) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32))) - (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32))) - (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32))) - (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32))) - (memory $0 1) - (data (i32.const 8) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00h\00i\00,\00 \00I\00\'\00m\00 \00a\00 \00s\00t\00r\00i\00n\00g\00") - (data (i32.const 56) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00s\00t\00d\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s\00") - (data (i32.const 104) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00") - (data (i32.const 120) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") - (data (i32.const 168) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") - (data (i32.const 216) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") - (data (i32.const 272) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") - (data (i32.const 312) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") - (data (i32.const 368) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00\00\00") - (data (i32.const 392) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00a\00") - (data (i32.const 416) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\006\00") - (data (i32.const 440) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00\00\d8\00\df") - (data (i32.const 464) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00~\00l\00i\00b\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s\00") - (data (i32.const 512) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\004\d8\06\df") - (data (i32.const 536) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00h\00i\00") - (data (i32.const 560) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00n\00u\00l\00l\00") - (data (i32.const 584) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00s\00t\00r\00i\00n\00g\00") - (data (i32.const 616) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00I\00\'\00m\00") - (data (i32.const 640) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00 \00") - (data (i32.const 664) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00 \00 \00 \00") - (data (i32.const 688) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00a\00b\00c\00") - (data (i32.const 712) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00 \00 \00a\00b\00c\00") - (data (i32.const 744) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\001\002\003\00") - (data (i32.const 768) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\002\003\00a\00b\00c\00") - (data (i32.const 800) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\001\002\003\001\002\00a\00b\00c\00") - (data (i32.const 832) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00a\00b\00c\00 \00 \00") - (data (i32.const 864) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00a\00b\00c\00a\00b\00c\00") - (data (i32.const 896) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00a\00b\00c\00a\00b\00c\00a\00b\00") - (data (i32.const 928) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00,\00") - (data (i32.const 952) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00x\00") - (data (i32.const 976) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00,\00 \00I\00") - (data (i32.const 1000) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00g\00") - (data (i32.const 1024) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00i\00") - (data (i32.const 1048) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00a\00b\00 \00c\00") - (data (i32.const 1072) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\00 \00\n\00\t\00\0d\00a\00b\00c\00 \00\t\00\0d\00 \00") - (data (i32.const 1112) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00a\00b\00c\00 \00\t\00\0d\00 \00") - (data (i32.const 1144) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00 \00\n\00\t\00\0d\00a\00b\00c\00") - (data (i32.const 1176) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") - (data (i32.const 1200) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\000\000\00") - (data (i32.const 1224) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\001\00") - (data (i32.const 1248) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\000\000\000\001\00") - (data (i32.const 1272) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\00b\001\000\001\00") - (data (i32.const 1304) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\00o\007\000\007\00") - (data (i32.const 1336) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\00x\00f\000\00f\00") - (data (i32.const 1368) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\00x\00F\000\00F\00") - (data (i32.const 1400) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\001\001\00") - (data (i32.const 1424) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\000\00x\001\00g\00") - (data (i32.const 1448) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00-\001\002\003\00") - (data (i32.const 1472) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00+\001\002\003\00") - (data (i32.const 1496) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00-\001\002\00.\003\00") - (data (i32.const 1528) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00 \00\t\00\n\001\00") - (data (i32.const 1552) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00 \00\t\00\n\000\00x\000\002\00") - (data (i32.const 1584) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\000\00x\007\00F\00F\00F\00F\00F\00F\00F\00") - (data (i32.const 1624) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\000\00x\007\00F\00F\00F\00F\00F\00F\00F\00F\00F\00F\00F\00F\00F\00F\00F\00") - (data (i32.const 1680) "P\00\00\00\01\00\00\00\00\00\00\00P\00\00\00\00\00\00\00\00\00\f0?\17n\05\b5\b5\b8\93F\f5\f9?\e9\03O8Mc\b3\d8bu\f6\ddS2\1d0\f9Hw\82Z\c3\fco%\d4\c2&a\eb$\a7\f1\1e\0e\ccg\99g\fc\dfRJqn<\bfs\7f\ddO\15uF\8d+\83\dfD\ba{") - (data (i32.const 1776) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\a0\06\00\00\a0\06\00\00P\00\00\00\n\00\00\00") - (data (i32.const 1808) "\00\01\00\00\01\00\00\00\00\00\00\00\00\01\00\00\00\00\00\00\00\00\f0?\00\00\00\00\00\00$@\00\00\00\00\00\00Y@\00\00\00\00\00@\8f@\00\00\00\00\00\88\c3@\00\00\00\00\00j\f8@\00\00\00\00\80\84.A\00\00\00\00\d0\12cA\00\00\00\00\84\d7\97A\00\00\00\00e\cd\cdA\00\00\00 _\a0\02B\00\00\00\e8vH7B\00\00\00\a2\94\1amB\00\00@\e5\9c0\a2B\00\00\90\1e\c4\bc\d6B\00\004&\f5k\0cC\00\80\e07y\c3AC\00\a0\d8\85W4vC\00\c8Ngm\c1\abC\00=\91`\e4X\e1C@\8c\b5x\1d\af\15DP\ef\e2\d6\e4\1aKD\92\d5M\06\cf\f0\80D\f6J\e1\c7\02-\b5D\b4\9d\d9yCx\eaD\91\02(,*\8b E5\032\b7\f4\adTE\02\84\fe\e4q\d9\89E\81\12\1f/\e7\'\c0E!\d7\e6\fa\e01\f4E\ea\8c\a09Y>)F$\b0\08\88\ef\8d_F") - (data (i32.const 2080) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00 \07\00\00 \07\00\00\00\01\00\00 \00\00\00") - (data (i32.const 2112) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\001\00.\00") - (data (i32.const 2136) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00.\000\000\00") - (data (i32.const 2160) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00e\00-\005\00") - (data (i32.const 2184) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00-\001\00e\00-\005\00") - (data (i32.const 2216) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00-\000\00.\003\00e\00-\002\002\00") - (data (i32.const 2248) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\000\00.\003\00e\00+\002\002\00") - (data (i32.const 2280) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00e\00-\001\00") - (data (i32.const 2304) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\000\00.\001\00e\00-\000\00") - (data (i32.const 2336) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\001\00") - (data (i32.const 2360) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00.\002\005\00") - (data (i32.const 2384) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\00.\000\00e\00-\001\000\00") - (data (i32.const 2416) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\00.\000\00e\00-\003\000\00") - (data (i32.const 2448) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\001\00.\000\00e\00-\003\002\003\00") - (data (i32.const 2480) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\001\00.\000\00e\00-\003\002\004\00") - (data (i32.const 2512) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00e\00+\003\000\008\00") - (data (i32.const 2544) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00e\00+\003\000\009\00") - (data (i32.const 2576) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\001\00.\000\00e\00-\001\00_\000\00") - (data (i32.const 2608) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\001\00.\000\00e\00-\001\000\00_\000\00") - (data (i32.const 2648) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\001\00.\000\00e\00+\001\00_\000\00") - (data (i32.const 2680) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\001\00_\000\00") - (data (i32.const 2704) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\001\00_\001\00") - (data (i32.const 2728) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\001\000\00.\000\000\00_\000\001\00e\002\00") - (data (i32.const 2768) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\001\002\003\004\005\006\007\008\009\00_\004\00") - (data (i32.const 2808) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\001\00_\000\001\002\003\004\005\006\007\008\009\00") - (data (i32.const 2848) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\00e\00-\006\000\00") - (data (i32.const 2880) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00e\006\000\00") - (data (i32.const 2904) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00-\00.\000\000\000\000\000\00") - (data (i32.const 2936) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\001\00x\00") - (data (i32.const 2960) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00-\001\001\00e\00-\001\00s\00t\00r\00i\00n\00g\00") - (data (i32.const 3000) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\000\001\00e\001\00s\00t\00r\00i\00n\00g\00") - (data (i32.const 3040) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\000\001\000\00s\00t\00r\00i\00n\00g\00") - (data (i32.const 3080) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00+\00.\002\002\00e\00-\001\00") - (data (i32.const 3112) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\001\00.\00s\001\00") - (data (i32.const 3144) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00x\000\00") - (data (i32.const 3168) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00x\005\00") - (data (i32.const 3192) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00x\00D\00") - (data (i32.const 3216) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00\0b\001\00.\001\00") - (data (i32.const 3240) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00\0b\00\0b\00-\001\00.\001\00") - (data (i32.const 3272) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00\0c\00\0c\00-\001\00.\001\00") - (data (i32.const 3304) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00( ( -\001\00.\001\00") - (data (i32.const 3336) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00) ) -\001\00.\001\00") - (data (i32.const 3368) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\000\000\000\000\00") - (data (i32.const 3400) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\000\000\000\00a\00") - (data (i32.const 3432) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\000\000\000\001\00") - (data (i32.const 3464) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\000\00.\000\000\00") - (data (i32.const 3496) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\000\00.\000\00a\00") - (data (i32.const 3528) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00e\001\00e\00") - (data (i32.const 3552) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\00e\00+\000\000\000\001\00") - (data (i32.const 3584) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\000\00e\00+\001\000\000\00") - (data (i32.const 3616) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\00.\00-\001\00.\00") - (data (i32.const 3648) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00e\00-\001\00.\002\00") - (data (i32.const 3680) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\001\00e\00x\00") - (data (i32.const 3704) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00e\001\00x\00") - (data (i32.const 3728) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00e\00-\00x\00") - (data (i32.const 3752) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\00e\00-\001\00x\00") - (data (i32.const 3784) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\000\00.\001\00e\00-\001\00x\00") - (data (i32.const 3816) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\000\00.\00") - (data (i32.const 3840) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00.\000\000\00") - (data (i32.const 3864) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00.\000\00.\00") - (data (i32.const 3888) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00.\001\00.\00") - (data (i32.const 3912) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\00.\00") - (data (i32.const 3936) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\00a\00") - (data (i32.const 3960) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00.\00.\001\00") - (data (i32.const 3984) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\00.\001\00.\001\00") - (data (i32.const 4016) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\000\00.\00 \001\00") - (data (i32.const 4040) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00+\000\00.\000\00") - (data (i32.const 4064) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00-\000\00.\000\00") - (data (i32.const 4088) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00+\000\00") - (data (i32.const 4112) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00-\000\00") - (data (i32.const 4136) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00+\00") - (data (i32.const 4160) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00-\00") - (data (i32.const 4184) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00-\00-\000\00") - (data (i32.const 4208) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00+\00+\000\00") - (data (i32.const 4232) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00.\00a\00") - (data (i32.const 4256) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00.\00.\000\00") - (data (i32.const 4280) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00.\00") - (data (i32.const 4304) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00.\00.\00") - (data (i32.const 4328) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") - (data (i32.const 4352) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00\0b\00") - (data (i32.const 4376) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00\0e\18") - (data (i32.const 4400) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00\0e\181\00.\001\00") - (data (i32.const 4424) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00\0e\18\0e\181\00.\001\00") - (data (i32.const 4456) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00\0c\00") - (data (i32.const 4480) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00t\00r\00u\00e\00") - (data (i32.const 4504) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00f\00a\00l\00s\00e\00") - (data (i32.const 4536) "*\00\00\00\01\00\00\00\01\00\00\00*\00\00\002\00.\002\002\000\004\004\006\000\004\009\002\005\000\003\001\003\00e\00-\001\006\00") - (data (i32.const 4600) ".\00\00\00\01\00\00\00\01\00\00\00.\00\00\001\00.\007\009\007\006\009\003\001\003\004\008\006\002\003\001\005\007\00e\00+\003\000\008\00") - (data (i32.const 4664) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\005\00e\00-\003\002\004\00") - (data (i32.const 4696) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\000\00.\000\000\000\000\000\001\00e\00+\003\001\004\00") - (data (i32.const 4744) "|\00\00\00\01\00\00\00\01\00\00\00|\00\00\000\00.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\00e\00+\005\006\00") - (data (i32.const 4888) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00+\001\00E\00-\003\002\005\00") - (data (i32.const 4920) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00+\001\00E\00+\003\000\009\00") - (data (i32.const 4952) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00-\001\00E\00-\003\002\005\00") - (data (i32.const 4984) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00-\001\00E\00+\003\000\009\00") - (data (i32.const 5016) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\001\00e\00-\001\000\000\000\000\000\000\00") - (data (i32.const 5056) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\001\00e\00+\001\000\000\000\000\000\000\00") - (data (i32.const 5096) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00.\00e\003\006\000\00") - (data (i32.const 5128) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00 \00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 5168) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00+\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 5208) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 5248) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00x\00") - (data (i32.const 5288) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00+\001\00") - (data (i32.const 5328) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00I\00n\00f\00i\00") - (data (i32.const 5352) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00+\00I\00n\00f\00i\00n\00i\00t\00") - (data (i32.const 5384) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00i\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 5416) "\aa\00\00\00\01\00\00\00\01\00\00\00\aa\00\00\00.\002\004\007\000\003\002\008\002\002\009\002\000\006\002\003\002\007\002\000\008\008\002\008\004\003\009\006\004\003\004\001\001\000\006\008\006\001\008\002\005\002\009\009\000\001\003\000\007\001\006\002\003\008\002\002\001\002\007\009\002\008\004\001\002\005\000\003\003\007\007\005\003\006\003\005\001\000\004\003\00e\00-\003\002\003\00") - (data (i32.const 5608) "\aa\00\00\00\01\00\00\00\01\00\00\00\aa\00\00\00.\007\004\001\000\009\008\004\006\008\007\006\001\008\006\009\008\001\006\002\006\004\008\005\003\001\008\009\003\000\002\003\003\002\000\005\008\005\004\007\005\008\009\007\000\003\009\002\001\004\008\007\001\004\006\006\003\008\003\007\008\005\002\003\007\005\001\000\001\003\002\006\000\009\000\005\003\001\003\002\00e\00-\003\002\003\00") - (data (i32.const 5800) "\aa\00\00\00\01\00\00\00\01\00\00\00\aa\00\00\00.\002\002\002\005\000\007\003\008\005\008\005\000\007\002\000\001\006\003\000\001\002\003\000\005\005\006\003\007\009\005\005\006\007\006\001\005\002\005\000\003\006\001\002\004\001\004\005\007\003\000\001\008\000\001\003\000\008\003\002\002\008\007\002\004\000\004\009\005\008\006\006\004\007\006\000\006\007\006\000\00e\00-\003\000\007\00") - (data (i32.const 5992) "\88\00\00\00\01\00\00\00\01\00\00\00\88\00\00\001\007\009\007\006\009\003\001\003\004\008\006\002\003\001\005\008\000\007\009\003\007\002\008\009\007\001\004\000\005\003\000\003\004\001\005\000\007\009\009\003\004\001\003\002\007\001\000\000\003\007\008\002\006\009\003\006\001\007\003\007\007\008\009\008\000\004\004\00") - (data (i32.const 6144) "\88\00\00\00\01\00\00\00\01\00\00\00\88\00\00\004\009\006\008\002\009\002\007\006\004\007\005\000\009\004\006\006\004\009\000\001\007\009\007\007\005\008\007\002\000\007\000\009\006\003\003\000\002\008\006\004\001\006\006\009\002\008\008\007\009\001\000\009\004\006\005\005\005\005\004\007\008\005\001\009\004\000\004\00") - (data (i32.const 6296) "\88\00\00\00\01\00\00\00\01\00\00\00\88\00\00\000\002\006\003\000\006\005\007\004\008\008\006\007\001\005\000\005\008\002\000\006\008\001\009\000\008\009\000\002\000\000\000\007\000\008\003\008\003\006\007\006\002\007\003\008\005\004\008\004\005\008\001\007\007\001\001\005\003\001\007\006\004\004\007\005\007\003\000\00") - (data (i32.const 6448) "\88\00\00\00\01\00\00\00\01\00\00\00\88\00\00\002\007\000\000\006\009\008\005\005\005\007\001\003\006\006\009\005\009\006\002\002\008\004\002\009\001\004\008\001\009\008\006\000\008\003\004\009\003\006\004\007\005\002\009\002\007\001\009\000\007\004\001\006\008\004\004\004\003\006\005\005\001\000\007\000\004\003\004\00") - (data (i32.const 6600) "\88\00\00\00\01\00\00\00\01\00\00\00\88\00\00\002\007\001\001\005\005\009\006\009\009\005\000\008\000\009\003\000\004\002\008\008\000\001\007\007\009\000\004\001\007\004\004\009\007\007\009\001\00.\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\00") - (data (i32.const 6752) "\\\00\00\00\01\00\00\00\01\00\00\00\\\00\00\000\00.\009\007\005\003\005\003\001\008\008\008\007\009\009\005\000\002\006\001\003\008\000\007\001\003\005\002\007\006\001\004\007\001\006\004\004\000\004\003\009\00e\00-\001\000\003\00") - (data (i32.const 6864) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\00.\005\009\006\001\008\006\000\003\004\008\001\003\001\008\000\007\000\009\001\008\006\001\000\000\002\002\006\006\004\005\003\009\004\001\009\005\000\004\002\008\00e\000\000\00") - (data (i32.const 6968) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\001\00.\008\001\005\000\001\003\001\006\009\002\001\008\000\003\008\007\002\009\008\008\007\004\006\000\008\009\008\007\003\003\005\002\006\009\005\007\004\004\002\00e\00-\001\00") - (data (i32.const 7072) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\004\002\00.\000\007\000\008\002\003\005\007\005\003\004\004\005\003\006\000\000\006\008\001\006\001\008\006\008\005\006\008\002\002\005\007\005\009\000\007\007\002\00e\00-\002\00") - (data (i32.const 7176) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\006\006\005\00.\004\006\008\006\003\000\006\005\001\006\002\006\001\004\005\006\003\002\008\009\007\003\002\002\005\005\007\009\008\003\003\004\007\000\008\001\006\00e\00-\003\00") - (data (i32.const 7280) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\006\001\000\001\00.\008\005\002\009\002\002\009\007\000\008\006\008\006\002\001\007\008\006\006\009\000\004\009\005\004\008\005\004\004\009\008\003\001\007\005\003\00e\00-\004\00") - (data (i32.const 7384) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\007\006\009\006\006\00.\009\005\002\000\008\002\003\006\009\006\008\000\007\007\008\004\009\004\006\004\003\004\008\008\007\005\004\007\001\001\005\008\005\004\009\00e\00-\005\00") - (data (i32.const 7488) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\002\005\000\005\000\006\00.\005\003\002\002\002\002\008\006\008\002\004\009\006\001\003\002\006\000\004\008\000\007\002\002\002\009\002\003\007\000\002\003\000\004\00e\00-\006\00") - (data (i32.const 7592) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\002\007\004\000\000\003\007\00.\002\003\000\002\002\008\000\000\005\003\002\005\008\005\002\004\002\004\006\009\007\006\009\008\003\003\001\001\007\007\003\007\007\00e\00-\007\00") - (data (i32.const 7696) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\002\000\007\002\003\000\009\003\00.\005\000\000\004\009\007\004\002\006\004\005\009\004\001\005\002\009\002\006\008\007\001\005\004\002\008\003\002\004\004\009\000\00e\00-\008\00") - (data (i32.const 7800) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\007\009\000\000\002\008\000\002\003\008\000\008\001\006\000\004\009\005\006\002\002\006\000\001\001\000\004\007\004\006\000\002\003\008\007\004\008\009\001\002\00e\001\00") - (data (i32.const 7904) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\009\008\002\002\008\006\000\006\005\003\007\003\007\002\009\006\008\004\008\001\009\000\005\005\008\004\004\008\007\006\000\004\006\005\008\006\003\005\009\007\00e\002\00") - (data (i32.const 8008) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\007\004\006\008\009\004\009\007\002\003\001\009\000\003\007\000\008\000\009\004\000\005\005\007\000\005\006\000\001\006\000\004\000\005\003\002\004\008\006\009\00e\003\00") - (data (i32.const 8112) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\001\006\003\000\002\006\008\003\002\000\002\008\002\007\002\008\004\007\005\009\008\000\004\005\009\008\004\004\002\007\001\000\003\001\007\005\001\006\006\005\00e\004\00") - (data (i32.const 8216) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\004\006\003\007\001\006\008\006\002\009\007\001\009\001\007\000\006\009\005\001\000\009\009\001\008\007\006\009\006\004\005\004\009\002\000\002\002\000\008\008\00e\005\00") - (data (i32.const 8320) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\006\005\003\007\008\000\005\009\004\004\004\009\007\007\001\001\005\005\004\002\000\009\004\006\001\006\008\006\004\001\005\008\007\002\000\006\007\005\002\003\00e\006\00") - (data (i32.const 8424) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\002\003\004\006\003\002\004\003\005\006\005\000\002\004\003\007\000\004\005\002\001\002\002\003\000\007\001\003\009\006\000\004\005\007\006\007\006\005\003\001\00e\006\00") - (data (i32.const 8528) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\009\007\000\009\004\008\001\007\001\006\004\002\000\000\004\008\003\004\001\008\009\007\002\005\008\009\008\000\004\005\004\002\009\008\002\000\005\002\007\008\00e\008\00") - (data (i32.const 8632) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\004\009\009\006\009\000\008\005\002\002\000\005\001\008\007\004\001\001\000\007\007\009\009\008\002\003\005\004\009\003\002\004\009\009\004\009\009\006\000\002\00e\009\00") - (data (i32.const 8736) "Z\00\00\00\01\00\00\00\01\00\00\00Z\00\00\000\00.\007\009\002\005\002\000\001\002\000\000\005\005\007\002\004\005\008\006\001\009\004\004\000\001\001\002\006\007\000\004\001\007\008\007\005\000\005\001\004\009\00e\002\002\00") - (data (i32.const 8848) "Z\00\00\00\01\00\00\00\01\00\00\00Z\00\00\000\00.\006\000\009\006\005\006\004\005\008\005\009\008\003\001\007\007\004\000\008\009\003\004\003\005\002\005\007\000\002\001\003\003\007\007\004\007\005\007\003\009\00e\003\000\00") - (data (i32.const 8960) "Z\00\00\00\01\00\00\00\01\00\00\00Z\00\00\000\00.\004\008\000\000\004\001\006\001\001\007\004\007\007\000\002\008\007\008\007\008\007\004\003\006\000\002\000\005\000\002\003\005\004\009\004\009\007\001\002\008\00e\006\007\00") - (data (i32.const 9072) "\\\00\00\00\01\00\00\00\01\00\00\00\\\00\00\000\00.\008\005\002\004\008\002\009\000\007\009\008\001\007\009\006\008\002\002\004\008\003\000\003\003\007\009\003\001\000\005\002\007\008\001\006\004\001\004\008\003\00e\001\000\005\00") - (data (i32.const 9184) "\\\00\00\00\01\00\00\00\01\00\00\00\\\00\00\000\00.\000\003\002\007\001\002\003\009\002\009\001\007\000\009\007\008\002\001\001\005\004\004\007\000\006\009\003\007\002\007\004\008\009\005\006\000\008\004\002\005\00e\002\006\009\00") - (data (i32.const 9296) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00 \00\t\00\n\00") - (data (i32.const 9320) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00 \00\t\00\n\00\0d\00.\001\00") - (data (i32.const 9352) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00b\00") - (data (i32.const 9376) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00a\00b\00") - (data (i32.const 9400) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00k\00e\00y\001\00") - (data (i32.const 9424) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00k\00e\00y\002\00") - (data (i32.const 9448) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00k\00e\001\00") - (data (i32.const 9472) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00k\00e\002\00") - (data (i32.const 9496) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00k\00e\00y\001\002\00") - (data (i32.const 9528) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00k\00e\00y\001\001\00") - (data (i32.const 9560) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00\a40\ed0\cf0\cb0\db0\d80\c80") - (data (i32.const 9592) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00\a60\f00\ce0\aa0\af0\e40\de0") - (data (i32.const 9624) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\00D\00\19 f\00h\00u\00a\00s\00c\00a\00i\00l\00") - (data (i32.const 9664) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00D\00\19 \1f\1eu\00a\00s\00c\00a\00i\00l\00") - (data (i32.const 9704) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00b\00a\00") - (data (i32.const 9728) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00a\00a\00") - (data (i32.const 9752) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") - (data (i32.const 9800) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00a\00a\00a\00") - (data (i32.const 9824) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00a\00b\00a\00b\00a\00b\00a\00b\00") - (data (i32.const 9856) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00a\00a\00a\00a\00a\00") - (data (i32.const 9888) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00a\00a\00a\00a\00a\00a\00") - (data (i32.const 9920) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00a\00a\00a\00a\00a\00a\00a\00") - (data (i32.const 9952) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00a\00b\00c\00d\00") - (data (i32.const 9976) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00a\00-\00b\00-\00c\00") - (data (i32.const 10008) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00a\00+\00b\00-\00c\00") - (data (i32.const 10040) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00+\00a\00b\00c\00") - (data (i32.const 10064) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00\n\00a\00b\00c\00") - (data (i32.const 10088) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00\n\00") - (data (i32.const 10112) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00c\00") - (data (i32.const 10136) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00+\00+\00") - (data (i32.const 10160) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00a\00b\00+\00+\00") - (data (i32.const 10184) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00a\00b\00c\00a\00b\00c\00a\00b\00c\00") - (data (i32.const 10224) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00+\00+\00+\00") - (data (i32.const 10248) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00a\00b\00c\00a\00b\00c\00a\00") - (data (i32.const 10280) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00+\00+\00+\00b\00c\00+\00+\00+\00b\00c\00+\00+\00+\00") - (data (i32.const 10328) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00+\00+\00c\00+\00+\00c\00") - (data (i32.const 10360) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00c\00c\00c\00c\00") - (data (i32.const 10384) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00c\00c\00") - (data (i32.const 10408) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00+\00+\00+\00+\00") - (data (i32.const 10432) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00e\00") - (data (i32.const 10456) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00b\00c\00") - (data (i32.const 10480) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00a\00+\00") - (data (i32.const 10504) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00a\00+\00b\00+\00c\00") - (data (i32.const 10536) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00a\00b\00d\00") - (data (i32.const 10560) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00+\00a\00+\00b\00+\00c\00+\00") - (data (i32.const 10592) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00a\00b\00c\00d\00e\00f\00g\00h\00i\00j\00k\00l\00m\00n\00") - (data (i32.const 10640) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00n\00") - (data (i32.const 10664) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00j\00k\00l\00m\00n\00") - (data (i32.const 10696) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00c\00d\00e\00f\00g\00") - (data (i32.const 10728) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00d\00e\00f\00g\00h\00") - (data (i32.const 10760) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00a\00b\00c\00d\00e\00f\00g\00h\00i\00j\00k\00l\00m\00") - (data (i32.const 10808) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") - (data (i32.const 10856) "^\00\00\00\01\00\00\00\01\00\00\00^\00\00\00E\00l\00e\00m\00e\00n\00t\00 \00t\00y\00p\00e\00 \00m\00u\00s\00t\00 \00b\00e\00 \00n\00u\00l\00l\00a\00b\00l\00e\00 \00i\00f\00 \00a\00r\00r\00a\00y\00 \00i\00s\00 \00h\00o\00l\00e\00y\00") - (data (i32.const 10968) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00a\00,\00b\00,\00c\00") - (data (i32.const 11000) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00a\00,\00 \00b\00,\00 \00c\00") - (data (i32.const 11032) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00,\00 \00") - (data (i32.const 11056) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00a\00,\00b\00,\00,\00c\00") - (data (i32.const 11088) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00,\00a\00,\00b\00,\00c\00") - (data (i32.const 11120) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00a\00,\00b\00,\00c\00,\00") - (data (i32.const 11152) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") - (data (i32.const 11568) "\10\00\00\00\01\00\00\00\06\00\00\00\10\00\00\00\a0+\00\00\a0+\00\00\90\01\00\00d\00\00\00") - (data (i32.const 11600) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\008\00") - (data (i32.const 11624) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\001\002\00") - (data (i32.const 11648) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00-\001\000\000\000\00") - (data (i32.const 11680) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\002\003\004\00") - (data (i32.const 11704) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\002\003\004\005\00") - (data (i32.const 11736) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\002\003\004\005\006\00") - (data (i32.const 11768) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\001\001\001\001\001\001\00") - (data (i32.const 11800) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\002\003\004\005\006\007\00") - (data (i32.const 11832) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\001\002\003\004\005\006\007\008\00") - (data (i32.const 11864) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\001\002\003\004\005\006\007\008\009\00") - (data (i32.const 11904) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\002\001\004\007\004\008\003\006\004\006\00") - (data (i32.const 11944) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\002\001\004\007\004\008\003\006\004\007\00") - (data (i32.const 11984) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\00-\002\001\004\007\004\008\003\006\004\008\00") - (data (i32.const 12024) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00-\001\00") - (data (i32.const 12048) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\000\000\000\00") - (data (i32.const 12072) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\002\001\004\007\004\008\003\006\004\008\00") - (data (i32.const 12112) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\004\002\009\004\009\006\007\002\009\005\00") - (data (i32.const 12152) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\009\009\009\009\009\009\009\009\00") - (data (i32.const 12184) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\001\000\000\000\000\000\000\000\000\00") - (data (i32.const 12224) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\004\002\009\004\009\006\007\002\009\007\00") - (data (i32.const 12264) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 12304) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 12344) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\008\006\008\007\001\009\004\007\006\007\003\005\000\00") - (data (i32.const 12392) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\008\006\008\007\001\009\004\007\006\007\003\005\000\001\00") - (data (i32.const 12440) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 12488) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 12536) "\"\00\00\00\01\00\00\00\01\00\00\00\"\00\00\001\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 12592) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\001\002\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 12648) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\001\002\003\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 12704) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\001\008\004\004\006\007\004\004\000\007\003\007\000\009\005\005\001\006\001\005\00") - (data (i32.const 12760) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00-\001\002\003\004\00") - (data (i32.const 12792) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\00-\004\002\009\004\009\006\007\002\009\005\00") - (data (i32.const 12832) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00-\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 12872) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00-\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 12920) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00-\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 12968) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00-\001\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 13024) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\009\002\002\003\003\007\002\000\003\006\008\005\004\007\007\005\008\000\007\00") - (data (i32.const 13080) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00-\009\002\002\003\003\007\002\000\003\006\008\005\004\007\007\005\008\000\008\00") - (data (i32.const 13136) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") - (data (i32.const 13160) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 13192) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8 (; 51 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) - (local $2 i32) - (local $3 f64) - (local $4 i32) - (local $5 i32) - (local $6 f64) - (local $7 i32) - (local $8 f64) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/string/String#get:length - local.set $2 - local.get $2 - i32.eqz - if - f64.const nan:0x8000000000000 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $0 - local.set $4 - local.get $4 - i32.load16_u - local.set $5 - f64.const 1 - local.set $6 - block $break|0 - loop $continue|0 - local.get $5 - call $~lib/util/string/isSpace - i32.eqz - br_if $break|0 - local.get $4 - i32.const 2 - i32.add - local.tee $4 - i32.load16_u - local.set $5 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $5 - i32.const 45 - i32.eq - if - local.get $2 - i32.const 1 - i32.sub - local.tee $2 - i32.eqz - if - f64.const nan:0x8000000000000 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $4 - i32.const 2 - i32.add - local.tee $4 - i32.load16_u - local.set $5 - f64.const -1 - local.set $6 - else - local.get $5 - i32.const 43 - i32.eq - if - local.get $2 - i32.const 1 - i32.sub - local.tee $2 - i32.eqz - if - f64.const nan:0x8000000000000 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $4 - i32.const 2 - i32.add - local.tee $4 - i32.load16_u - local.set $5 - end - end - local.get $1 - i32.eqz - if - local.get $5 - i32.const 48 - i32.eq - if (result i32) - local.get $2 - i32.const 2 - i32.gt_s - else - i32.const 0 - end - if - block $break|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $4 - i32.const 2 - i32.add - i32.load16_u - i32.const 32 - i32.or - local.set $7 - local.get $7 - i32.const 98 - i32.eq - br_if $case0|1 - local.get $7 - i32.const 111 - i32.eq - br_if $case1|1 - local.get $7 - i32.const 120 - i32.eq - br_if $case2|1 - br $case3|1 - end - local.get $4 - i32.const 4 - i32.add - local.set $4 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - i32.const 2 - local.set $1 - br $break|1 - end - local.get $4 - i32.const 4 - i32.add - local.set $4 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - i32.const 8 - local.set $1 - br $break|1 - end - local.get $4 - i32.const 4 - i32.add - local.set $4 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - i32.const 16 - local.set $1 - br $break|1 - end - i32.const 10 - local.set $1 - end - else - i32.const 10 - local.set $1 - end - else - local.get $1 - i32.const 2 - i32.lt_s - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 36 - i32.gt_s - end - if - f64.const nan:0x8000000000000 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - return - end - end - f64.const 0 - local.set $8 - block $break|2 - loop $continue|2 - local.get $2 - local.tee $7 - i32.const 1 - i32.sub - local.set $2 - local.get $7 - i32.eqz - br_if $break|2 - local.get $4 - i32.load16_u - local.set $5 - local.get $5 - i32.const 48 - i32.sub - i32.const 10 - i32.lt_u - if - local.get $5 - i32.const 48 - i32.sub - local.set $5 - else - local.get $5 - i32.const 65 - i32.sub - i32.const 25 - i32.le_u - if - local.get $5 - i32.const 65 - i32.const 10 - i32.sub - i32.sub - local.set $5 - else - local.get $5 - i32.const 97 - i32.sub - i32.const 25 - i32.le_u - if - local.get $5 - i32.const 97 - i32.const 10 - i32.sub - i32.sub - local.set $5 - else - br $break|2 - end - end - end - local.get $5 - local.get $1 - i32.ge_u - if - br $break|2 - end - local.get $8 - local.get $1 - f64.convert_i32_s - f64.mul - local.get $5 - f64.convert_i32_u - f64.add - local.set $8 - local.get $4 - i32.const 2 - i32.add - local.set $4 - br $continue|2 - end - unreachable - end - local.get $6 - local.get $8 - f64.mul - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/string/parseInt (; 52 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) - (local $2 f64) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - call $~lib/util/string/strtol - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/util/string/strtol (; 53 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/string/String#get:length - local.set $2 - local.get $2 - i32.eqz - if - i32.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $0 - local.set $4 - local.get $4 - i32.load16_u - local.set $5 - i32.const 1 - local.set $6 - block $break|0 - loop $continue|0 - local.get $5 - call $~lib/util/string/isSpace - i32.eqz - br_if $break|0 - local.get $4 - i32.const 2 - i32.add - local.tee $4 - i32.load16_u - local.set $5 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $5 - i32.const 45 - i32.eq - if - local.get $2 - i32.const 1 - i32.sub - local.tee $2 - i32.eqz - if - i32.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $4 - i32.const 2 - i32.add - local.tee $4 - i32.load16_u - local.set $5 - i32.const -1 - local.set $6 - else - local.get $5 - i32.const 43 - i32.eq - if - local.get $2 - i32.const 1 - i32.sub - local.tee $2 - i32.eqz - if - i32.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $4 - i32.const 2 - i32.add - local.tee $4 - i32.load16_u - local.set $5 - end - end - local.get $1 - i32.eqz - if - local.get $5 - i32.const 48 - i32.eq - if (result i32) - local.get $2 - i32.const 2 - i32.gt_s - else - i32.const 0 - end - if - block $break|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $4 - i32.const 2 - i32.add - i32.load16_u - i32.const 32 - i32.or - local.set $3 - local.get $3 - i32.const 98 - i32.eq - br_if $case0|1 - local.get $3 - i32.const 111 - i32.eq - br_if $case1|1 - local.get $3 - i32.const 120 - i32.eq - br_if $case2|1 - br $case3|1 - end - local.get $4 - i32.const 4 - i32.add - local.set $4 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - i32.const 2 - local.set $1 - br $break|1 - end - local.get $4 - i32.const 4 - i32.add - local.set $4 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - i32.const 8 - local.set $1 - br $break|1 - end - local.get $4 - i32.const 4 - i32.add - local.set $4 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - i32.const 16 - local.set $1 - br $break|1 - end - i32.const 10 - local.set $1 - end - else - i32.const 10 - local.set $1 - end - else - local.get $1 - i32.const 2 - i32.lt_s - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 36 - i32.gt_s - end - if - i32.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - return - end - end - i32.const 0 - local.set $7 - block $break|2 - loop $continue|2 - local.get $2 - local.tee $3 - i32.const 1 - i32.sub - local.set $2 - local.get $3 - i32.eqz - br_if $break|2 - local.get $4 - i32.load16_u - local.set $5 - local.get $5 - i32.const 48 - i32.sub - i32.const 10 - i32.lt_u - if - local.get $5 - i32.const 48 - i32.sub - local.set $5 - else - local.get $5 - i32.const 65 - i32.sub - i32.const 25 - i32.le_u - if - local.get $5 - i32.const 65 - i32.const 10 - i32.sub - i32.sub - local.set $5 - else - local.get $5 - i32.const 97 - i32.sub - i32.const 25 - i32.le_u - if - local.get $5 - i32.const 97 - i32.const 10 - i32.sub - i32.sub - local.set $5 - else - br $break|2 - end - end - end - local.get $5 - local.get $1 - i32.ge_u - if - br $break|2 - end - local.get $7 - local.get $1 - i32.mul - local.get $5 - i32.add - local.set $7 - local.get $4 - i32.const 2 - i32.add - local.set $4 - br $continue|2 - end - unreachable - end - local.get $6 - local.get $7 - i32.mul - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/number/I32.parseInt (; 54 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - call $~lib/util/string/strtol - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/util/string/strtol (; 55 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - (local $2 i32) - (local $3 i64) - (local $4 i32) - (local $5 i32) - (local $6 i64) - (local $7 i32) - (local $8 i64) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/string/String#get:length - local.set $2 - local.get $2 - i32.eqz - if - i64.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $0 - local.set $4 - local.get $4 - i32.load16_u - local.set $5 - i64.const 1 - local.set $6 - block $break|0 - loop $continue|0 - local.get $5 - call $~lib/util/string/isSpace - i32.eqz - br_if $break|0 - local.get $4 - i32.const 2 - i32.add - local.tee $4 - i32.load16_u - local.set $5 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $5 - i32.const 45 - i32.eq - if - local.get $2 - i32.const 1 - i32.sub - local.tee $2 - i32.eqz - if - i64.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $4 - i32.const 2 - i32.add - local.tee $4 - i32.load16_u - local.set $5 - i64.const -1 - local.set $6 - else - local.get $5 - i32.const 43 - i32.eq - if - local.get $2 - i32.const 1 - i32.sub - local.tee $2 - i32.eqz - if - i64.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $4 - i32.const 2 - i32.add - local.tee $4 - i32.load16_u - local.set $5 - end - end - local.get $1 - i32.eqz - if - local.get $5 - i32.const 48 - i32.eq - if (result i32) - local.get $2 - i32.const 2 - i32.gt_s - else - i32.const 0 - end - if - block $break|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $4 - i32.const 2 - i32.add - i32.load16_u - i32.const 32 - i32.or - local.set $7 - local.get $7 - i32.const 98 - i32.eq - br_if $case0|1 - local.get $7 - i32.const 111 - i32.eq - br_if $case1|1 - local.get $7 - i32.const 120 - i32.eq - br_if $case2|1 - br $case3|1 - end - local.get $4 - i32.const 4 - i32.add - local.set $4 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - i32.const 2 - local.set $1 - br $break|1 - end - local.get $4 - i32.const 4 - i32.add - local.set $4 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - i32.const 8 - local.set $1 - br $break|1 - end - local.get $4 - i32.const 4 - i32.add - local.set $4 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - i32.const 16 - local.set $1 - br $break|1 - end - i32.const 10 - local.set $1 - end - else - i32.const 10 - local.set $1 - end - else - local.get $1 - i32.const 2 - i32.lt_s - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 36 - i32.gt_s - end - if - i64.const 0 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - return - end - end - i64.const 0 - local.set $8 - block $break|2 - loop $continue|2 - local.get $2 - local.tee $7 - i32.const 1 - i32.sub - local.set $2 - local.get $7 - i32.eqz - br_if $break|2 - local.get $4 - i32.load16_u - local.set $5 - local.get $5 - i32.const 48 - i32.sub - i32.const 10 - i32.lt_u - if - local.get $5 - i32.const 48 - i32.sub - local.set $5 - else - local.get $5 - i32.const 65 - i32.sub - i32.const 25 - i32.le_u - if - local.get $5 - i32.const 65 - i32.const 10 - i32.sub - i32.sub - local.set $5 - else - local.get $5 - i32.const 97 - i32.sub - i32.const 25 - i32.le_u - if - local.get $5 - i32.const 97 - i32.const 10 - i32.sub - i32.sub - local.set $5 - else - br $break|2 - end - end - end - local.get $5 - local.get $1 - i32.ge_u - if - br $break|2 - end - local.get $8 - local.get $1 - i64.extend_i32_s - i64.mul - local.get $5 - i64.extend_i32_u - i64.add - local.set $8 - local.get $4 - i32.const 2 - i32.add - local.set $4 - br $continue|2 - end - unreachable - end - local.get $6 - local.get $8 - i64.mul - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/number/I64.parseInt (; 56 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - (local $2 i64) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - call $~lib/util/string/strtol - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/util/string/pow10 (; 57 ;) (type $FUNCSIG$di) (param $0 i32) (result f64) - (local $1 i32) - (local $2 i32) - i32.const 1792 - i32.load offset=4 - local.set $1 - i32.const 2096 - i32.load offset=4 - local.set $2 - local.get $1 - local.get $0 - i32.const 5 - i32.shr_s - i32.const 3 - i32.shl - i32.add - f64.load - local.get $2 - local.get $0 - i32.const 31 - i32.and - i32.const 3 - i32.shl - i32.add - f64.load - f64.mul - ) - (func $~lib/math/ipow32 (; 58 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - i32.const 1 - local.set $2 - local.get $1 - i32.const 0 - i32.lt_s - if - i32.const 0 - return - end - block $break|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $1 - local.set $3 - local.get $3 - i32.const 0 - i32.eq - br_if $case0|0 - local.get $3 - i32.const 1 - i32.eq - br_if $case1|0 - local.get $3 - i32.const 2 - i32.eq - br_if $case2|0 - br $break|0 - end - i32.const 1 - return - end - local.get $0 - return - end - local.get $0 - local.get $0 - i32.mul - return - end - i32.const 32 - local.get $1 - i32.clz - i32.sub - local.set $3 - local.get $3 - i32.const 5 - i32.le_s - if - block $break|1 - block $case4|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $3 - local.set $4 - local.get $4 - i32.const 5 - i32.eq - br_if $case0|1 - local.get $4 - i32.const 4 - i32.eq - br_if $case1|1 - local.get $4 - i32.const 3 - i32.eq - br_if $case2|1 - local.get $4 - i32.const 2 - i32.eq - br_if $case3|1 - local.get $4 - i32.const 1 - i32.eq - br_if $case4|1 - br $break|1 - end - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i32.mul - local.set $2 - end - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - i32.mul - local.set $0 - end - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i32.mul - local.set $2 - end - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - i32.mul - local.set $0 - end - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i32.mul - local.set $2 - end - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - i32.mul - local.set $0 - end - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i32.mul - local.set $2 - end - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - i32.mul - local.set $0 - end - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i32.mul - local.set $2 - end - end - local.get $2 - return - end - block $break|2 - loop $continue|2 - local.get $1 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|2 - local.get $1 - i32.const 1 - i32.and - if - local.get $2 - local.get $0 - i32.mul - local.set $2 - end - local.get $1 - i32.const 1 - i32.shr_s - local.set $1 - local.get $0 - local.get $0 - i32.mul - local.set $0 - br $continue|2 - end - unreachable - end - local.get $2 - ) - (func $~lib/math/NativeMath.scalbn (; 59 ;) (type $FUNCSIG$ddi) (param $0 f64) (param $1 i32) (result f64) - (local $2 f64) - (local $3 i32) - (local $4 i32) - local.get $0 - local.set $2 - local.get $1 - i32.const 1023 - i32.gt_s - if - local.get $2 - f64.const 8988465674311579538646525e283 - f64.mul - local.set $2 - local.get $1 - i32.const 1023 - i32.sub - local.set $1 - local.get $1 - i32.const 1023 - i32.gt_s - if - local.get $2 - f64.const 8988465674311579538646525e283 - f64.mul - local.set $2 - local.get $1 - i32.const 1023 - i32.sub - local.tee $3 - i32.const 1023 - local.tee $4 - local.get $3 - local.get $4 - i32.lt_s - select - local.set $1 - end - else - local.get $1 - i32.const -1022 - i32.lt_s - if - local.get $2 - f64.const 2.2250738585072014e-308 - f64.const 9007199254740992 - f64.mul - f64.mul - local.set $2 - local.get $1 - i32.const 1022 - i32.const 53 - i32.sub - i32.add - local.set $1 - local.get $1 - i32.const -1022 - i32.lt_s - if - local.get $2 - f64.const 2.2250738585072014e-308 - f64.const 9007199254740992 - f64.mul - f64.mul - local.set $2 - local.get $1 - i32.const 1022 - i32.add - i32.const 53 - i32.sub - local.tee $3 - i32.const -1022 - local.tee $4 - local.get $3 - local.get $4 - i32.gt_s - select - local.set $1 - end - end - end - local.get $2 - i64.const 1023 - local.get $1 - i64.extend_i32_s - i64.add - i64.const 52 - i64.shl - f64.reinterpret_i64 - f64.mul - ) - (func $~lib/util/string/strtod (; 60 ;) (type $FUNCSIG$di) (param $0 i32) (result f64) - (local $1 i32) - (local $2 f64) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/string/String#get:length - local.set $1 - local.get $1 - i32.eqz - if - f64.const nan:0x8000000000000 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - local.set $3 - local.get $3 - i32.load16_u - local.set $4 - f64.const 1 - local.set $5 - block $break|0 - loop $continue|0 - local.get $1 - if (result i32) - local.get $4 - call $~lib/util/string/isSpace - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $3 - i32.const 2 - i32.add - local.tee $3 - i32.load16_u - local.set $4 - local.get $1 - i32.const 1 - i32.sub - local.set $1 - br $continue|0 - end - unreachable - end - local.get $1 - i32.eqz - if - f64.const nan:0x8000000000000 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $4 - i32.const 45 - i32.eq - if - local.get $1 - i32.const 1 - i32.sub - local.tee $1 - i32.eqz - if - f64.const nan:0x8000000000000 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $3 - i32.const 2 - i32.add - local.tee $3 - i32.load16_u - local.set $4 - f64.const -1 - local.set $5 - else - local.get $4 - i32.const 43 - i32.eq - if - local.get $1 - i32.const 1 - i32.sub - local.tee $1 - i32.eqz - if - f64.const nan:0x8000000000000 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $3 - i32.const 2 - i32.add - local.tee $3 - i32.load16_u - local.set $4 - end - end - local.get $1 - i32.const 8 - i32.ge_s - if (result i32) - local.get $4 - i32.const 73 - i32.eq - else - i32.const 0 - end - if - local.get $3 - i64.load - i64.const 29555310648492105 - i64.eq - if (result i32) - local.get $3 - i64.load offset=8 - i64.const 34058970405077102 - i64.eq - else - i32.const 0 - end - if - f64.const inf - local.get $5 - f64.copysign - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - return - end - f64.const nan:0x8000000000000 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $4 - i32.const 46 - i32.ne - if (result i32) - local.get $4 - i32.const 48 - i32.sub - i32.const 10 - i32.ge_u - else - i32.const 0 - end - if - f64.const nan:0x8000000000000 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $3 - local.set $6 - block $break|1 - loop $continue|1 - local.get $4 - i32.const 48 - i32.eq - i32.eqz - br_if $break|1 - local.get $3 - i32.const 2 - i32.add - local.tee $3 - i32.load16_u - local.set $4 - local.get $1 - i32.const 1 - i32.sub - local.set $1 - br $continue|1 - end - unreachable - end - local.get $1 - i32.const 0 - i32.le_s - if - f64.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - return - end - i32.const 0 - local.set $7 - i32.const 0 - local.set $8 - i32.const 0 - local.set $9 - i64.const 0 - local.set $10 - local.get $4 - i32.const 46 - i32.eq - if - local.get $6 - local.get $3 - i32.sub - i32.eqz - local.set $11 - local.get $3 - i32.const 2 - i32.add - local.set $3 - local.get $1 - i32.const 1 - i32.sub - local.set $1 - local.get $1 - i32.eqz - if (result i32) - local.get $11 - else - i32.const 0 - end - if - f64.const nan:0x8000000000000 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - return - end - block $break|2 - i32.const 1 - local.set $7 - loop $loop|2 - local.get $3 - i32.load16_u - local.tee $4 - i32.const 48 - i32.eq - i32.eqz - br_if $break|2 - local.get $1 - i32.const 1 - i32.sub - local.set $1 - local.get $9 - i32.const 1 - i32.sub - local.set $9 - local.get $3 - i32.const 2 - i32.add - local.set $3 - br $loop|2 - end - unreachable - end - local.get $1 - i32.const 0 - i32.le_s - if - f64.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $9 - i32.eqz - if (result i32) - local.get $11 - else - i32.const 0 - end - if (result i32) - local.get $4 - i32.const 48 - i32.sub - i32.const 10 - i32.ge_u - else - i32.const 0 - end - if - f64.const nan:0x8000000000000 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - return - end - end - block $break|3 - local.get $4 - i32.const 48 - i32.sub - local.set $11 - loop $loop|3 - local.get $11 - i32.const 10 - i32.lt_u - if (result i32) - i32.const 1 - else - local.get $4 - i32.const 46 - i32.eq - if (result i32) - local.get $7 - i32.eqz - else - i32.const 0 - end - end - i32.eqz - br_if $break|3 - local.get $11 - i32.const 10 - i32.lt_u - if - local.get $8 - i32.const 19 - i32.lt_s - if (result i64) - i64.const 10 - local.get $10 - i64.mul - local.get $11 - i64.extend_i32_u - i64.add - else - local.get $10 - local.get $11 - i32.eqz - i32.eqz - i64.extend_i32_u - i64.or - end - local.set $10 - local.get $8 - i32.const 1 - i32.add - local.set $8 - else - local.get $8 - local.set $9 - i32.const 1 - local.set $7 - end - local.get $1 - i32.const 1 - i32.sub - local.tee $1 - i32.eqz - if - br $break|3 - end - local.get $3 - i32.const 2 - i32.add - local.tee $3 - i32.load16_u - local.set $4 - local.get $4 - i32.const 48 - i32.sub - local.set $11 - br $loop|3 - end - unreachable - end - local.get $7 - i32.eqz - if - local.get $8 - local.set $9 - end - block $~lib/util/string/scientific|inlined.0 (result f64) - local.get $10 - local.set $17 - local.get $9 - i32.const 19 - local.tee $11 - local.get $8 - local.tee $12 - local.get $11 - local.get $12 - i32.lt_s - select - i32.sub - block $~lib/util/string/parseExp|inlined.0 (result i32) - local.get $3 - local.set $11 - local.get $1 - local.set $12 - i32.const 1 - local.set $13 - i32.const 0 - local.set $14 - local.get $11 - i32.load16_u - local.set $15 - local.get $15 - i32.const 32 - i32.or - i32.const 101 - i32.ne - if - i32.const 0 - br $~lib/util/string/parseExp|inlined.0 - end - local.get $11 - i32.const 2 - i32.add - local.tee $11 - i32.load16_u - local.set $15 - local.get $15 - i32.const 45 - i32.eq - if - local.get $12 - i32.const 1 - i32.sub - local.tee $12 - i32.eqz - if - i32.const 0 - br $~lib/util/string/parseExp|inlined.0 - end - local.get $11 - i32.const 2 - i32.add - local.tee $11 - i32.load16_u - local.set $15 - i32.const -1 - local.set $13 - else - local.get $15 - i32.const 43 - i32.eq - if - local.get $12 - i32.const 1 - i32.sub - local.tee $12 - i32.eqz - if - i32.const 0 - br $~lib/util/string/parseExp|inlined.0 - end - local.get $11 - i32.const 2 - i32.add - local.tee $11 - i32.load16_u - local.set $15 - end - end - block $break|4 - loop $continue|4 - local.get $15 - i32.const 48 - i32.eq - i32.eqz - br_if $break|4 - local.get $12 - i32.const 1 - i32.sub - local.tee $12 - i32.eqz - if - i32.const 0 - br $~lib/util/string/parseExp|inlined.0 - end - local.get $11 - i32.const 2 - i32.add - local.tee $11 - i32.load16_u - local.set $15 - br $continue|4 - end - unreachable - end - block $break|5 - local.get $15 - i32.const 48 - i32.sub - local.set $16 - loop $loop|5 - local.get $12 - if (result i32) - local.get $16 - i32.const 10 - i32.lt_u - else - i32.const 0 - end - i32.eqz - br_if $break|5 - local.get $14 - i32.const 3200 - i32.ge_s - if - local.get $13 - i32.const 3200 - i32.mul - br $~lib/util/string/parseExp|inlined.0 - end - i32.const 10 - local.get $14 - i32.mul - local.get $16 - i32.add - local.set $14 - local.get $11 - i32.const 2 - i32.add - local.tee $11 - i32.load16_u - local.set $15 - local.get $12 - i32.const 1 - i32.sub - local.set $12 - local.get $15 - i32.const 48 - i32.sub - local.set $16 - br $loop|5 - end - unreachable - end - local.get $13 - local.get $14 - i32.mul - end - i32.add - local.set $16 - local.get $17 - i64.eqz - if (result i32) - i32.const 1 - else - local.get $16 - i32.const -342 - i32.lt_s - end - if - f64.const 0 - br $~lib/util/string/scientific|inlined.0 - end - local.get $16 - i32.const 308 - i32.gt_s - if - f64.const inf - br $~lib/util/string/scientific|inlined.0 - end - local.get $17 - f64.convert_i64_u - local.set $2 - local.get $16 - i32.eqz - if - local.get $2 - br $~lib/util/string/scientific|inlined.0 - end - local.get $16 - i32.const 22 - i32.gt_s - if (result i32) - local.get $16 - i32.const 37 - i32.le_s - else - i32.const 0 - end - if - local.get $2 - local.get $16 - i32.const 22 - i32.sub - call $~lib/util/string/pow10 - f64.mul - local.set $2 - i32.const 22 - local.set $16 - end - local.get $17 - i64.const 9007199254740991 - i64.le_u - if (result i32) - local.get $16 - local.tee $15 - i32.const 31 - i32.shr_s - local.tee $14 - local.get $15 - i32.add - local.get $14 - i32.xor - i32.const 22 - i32.le_s - else - i32.const 0 - end - if - local.get $16 - i32.const 0 - i32.gt_s - if - local.get $2 - local.get $16 - call $~lib/util/string/pow10 - f64.mul - br $~lib/util/string/scientific|inlined.0 - end - local.get $2 - i32.const 0 - local.get $16 - i32.sub - call $~lib/util/string/pow10 - f64.div - br $~lib/util/string/scientific|inlined.0 - else - local.get $16 - i32.const 0 - i32.lt_s - if - local.get $17 - local.set $18 - local.get $16 - local.set $12 - local.get $18 - i64.clz - local.set $19 - local.get $18 - local.get $19 - i64.shl - local.set $18 - local.get $12 - i64.extend_i32_s - local.get $19 - i64.sub - local.set $19 - block $break|6 - loop $loop|6 - local.get $12 - i32.const -14 - i32.le_s - i32.eqz - br_if $break|6 - local.get $18 - i64.const 6103515625 - i64.div_u - local.set $20 - local.get $18 - i64.const 6103515625 - i64.rem_u - local.set $21 - local.get $20 - i64.clz - local.set $22 - local.get $20 - local.get $22 - i64.shl - f64.const 0.00004294967296 - local.get $21 - local.get $22 - i64.const 18 - i64.sub - i64.shl - f64.convert_i64_u - f64.mul - f64.nearest - i64.trunc_f64_u - i64.add - local.set $18 - local.get $19 - local.get $22 - i64.sub - local.set $19 - local.get $12 - i32.const 14 - i32.add - local.set $12 - br $loop|6 - end - unreachable - end - i32.const 5 - i32.const 0 - local.get $12 - i32.sub - call $~lib/math/ipow32 - i64.extend_i32_s - local.set $22 - local.get $18 - local.get $22 - i64.div_u - local.set $21 - local.get $18 - local.get $22 - i64.rem_u - local.set $20 - local.get $21 - i64.clz - local.set $23 - local.get $21 - local.get $23 - i64.shl - local.get $20 - f64.convert_i64_u - i64.reinterpret_f64 - local.get $23 - i64.const 52 - i64.shl - i64.add - f64.reinterpret_i64 - local.get $22 - f64.convert_i64_u - f64.div - i64.trunc_f64_u - i64.add - local.set $18 - local.get $19 - local.get $23 - i64.sub - local.set $19 - local.get $18 - f64.convert_i64_u - local.get $19 - i32.wrap_i64 - call $~lib/math/NativeMath.scalbn - br $~lib/util/string/scientific|inlined.0 - else - local.get $17 - local.set $18 - local.get $16 - local.set $11 - local.get $18 - i64.ctz - local.set $23 - local.get $18 - local.get $23 - i64.shr_u - local.set $18 - local.get $23 - local.get $11 - i64.extend_i32_s - i64.add - local.set $23 - local.get $23 - global.set $~lib/util/string/__fixmulShift - block $break|7 - loop $loop|7 - local.get $11 - i32.const 13 - i32.ge_s - i32.eqz - br_if $break|7 - local.get $18 - local.set $19 - i32.const 1220703125 - local.set $13 - local.get $19 - i64.const 4294967295 - i64.and - local.get $13 - i64.extend_i32_u - i64.mul - local.set $20 - local.get $19 - i64.const 32 - i64.shr_u - local.get $13 - i64.extend_i32_u - i64.mul - local.get $20 - i64.const 32 - i64.shr_u - i64.add - local.set $21 - local.get $21 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $12 - local.get $12 - i32.clz - local.set $15 - i64.const 32 - local.get $15 - i64.extend_i32_u - i64.sub - local.set $22 - global.get $~lib/util/string/__fixmulShift - local.get $22 - i64.add - global.set $~lib/util/string/__fixmulShift - local.get $21 - local.get $15 - i64.extend_i32_u - i64.shl - local.get $20 - i64.const 4294967295 - i64.and - local.get $22 - i64.shr_u - i64.or - local.get $20 - local.get $15 - i64.extend_i32_u - i64.shl - i64.const 31 - i64.shr_u - i64.const 1 - i64.and - i64.add - local.set $18 - local.get $11 - i32.const 13 - i32.sub - local.set $11 - br $loop|7 - end - unreachable - end - local.get $18 - local.set $19 - i32.const 5 - local.get $11 - call $~lib/math/ipow32 - local.set $14 - local.get $19 - i64.const 4294967295 - i64.and - local.get $14 - i64.extend_i32_u - i64.mul - local.set $22 - local.get $19 - i64.const 32 - i64.shr_u - local.get $14 - i64.extend_i32_u - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $21 - local.get $21 - i64.const 32 - i64.shr_u - i32.wrap_i64 - local.set $15 - local.get $15 - i32.clz - local.set $12 - i64.const 32 - local.get $12 - i64.extend_i32_u - i64.sub - local.set $20 - global.get $~lib/util/string/__fixmulShift - local.get $20 - i64.add - global.set $~lib/util/string/__fixmulShift - local.get $21 - local.get $12 - i64.extend_i32_u - i64.shl - local.get $22 - i64.const 4294967295 - i64.and - local.get $20 - i64.shr_u - i64.or - local.get $22 - local.get $12 - i64.extend_i32_u - i64.shl - i64.const 31 - i64.shr_u - i64.const 1 - i64.and - i64.add - local.set $18 - global.get $~lib/util/string/__fixmulShift - local.set $23 - local.get $18 - f64.convert_i64_u - local.get $23 - i32.wrap_i64 - call $~lib/math/NativeMath.scalbn - br $~lib/util/string/scientific|inlined.0 - end - unreachable - end - unreachable - end - local.get $5 - f64.copysign - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/string/parseFloat (; 61 ;) (type $FUNCSIG$di) (param $0 i32) (result f64) - (local $1 f64) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/util/string/strtod - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - ) - (func $~lib/number/isNaN (; 62 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.ne - ) - (func $~lib/string/String#concat (; 63 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 0 - i32.eq - if - i32.const 576 - local.tee $2 - local.get $1 - local.tee $3 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/rt/pure/__release - end - local.get $2 - local.set $1 - end - local.get $0 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - local.set $4 - local.get $1 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - local.set $5 - local.get $4 - local.get $5 - i32.add - local.set $6 - local.get $6 - i32.const 0 - i32.eq - if - i32.const 120 - call $~lib/rt/pure/__retain - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $6 - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.get $0 - local.get $4 - call $~lib/memory/memory.copy - local.get $7 - local.get $4 - i32.add - local.get $1 - local.get $5 - call $~lib/memory/memory.copy - local.get $7 - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/string/String.__concat (; 64 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 576 - local.get $0 - i32.const 0 - i32.ne - select - local.get $1 - call $~lib/string/String#concat - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/string/String.__ne (; 65 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - call $~lib/string/String.__eq - i32.eqz - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/string/String.__gt (; 66 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.eq - if (result i32) - i32.const 1 - else - local.get $0 - i32.const 0 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 0 - i32.eq - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - call $~lib/string/String#get:length - local.set $4 - local.get $3 - i32.eqz - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $4 - i32.eqz - if - i32.const 1 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - local.get $1 - i32.const 0 - local.get $3 - local.tee $2 - local.get $4 - local.tee $5 - local.get $2 - local.get $5 - i32.lt_s - select - call $~lib/util/string/compareImpl - i32.const 0 - i32.gt_s - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/string/String.__lt (; 67 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.eq - if (result i32) - i32.const 1 - else - local.get $0 - i32.const 0 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 0 - i32.eq - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - call $~lib/string/String#get:length - local.set $4 - local.get $4 - i32.eqz - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $3 - i32.eqz - if - i32.const 1 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - local.get $1 - i32.const 0 - local.get $3 - local.tee $2 - local.get $4 - local.tee $5 - local.get $2 - local.get $5 - i32.lt_s - select - call $~lib/util/string/compareImpl - i32.const 0 - i32.lt_s - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/string/String.__gte (; 68 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - call $~lib/string/String.__lt - i32.eqz - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/string/String.__lte (; 69 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - call $~lib/string/String.__gt - i32.eqz - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/string/String#repeat (; 70 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - local.get $0 - call $~lib/string/String#get:length - local.set $2 - local.get $1 - i32.const 0 - i32.lt_s - if (result i32) - i32.const 1 - else - local.get $2 - i64.extend_i32_s - local.get $1 - i64.extend_i32_s - i64.mul - i64.const 268435456 - i64.gt_u - end - if - i32.const 9768 - i32.const 480 - i32.const 299 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $2 - i32.eqz - end - if - i32.const 120 - call $~lib/rt/pure/__retain - return - end - local.get $1 - i32.const 1 - i32.eq - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $2 - local.get $1 - i32.mul - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $3 - local.get $3 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - local.get $1 - call $~lib/memory/memory.repeat - local.get $3 - call $~lib/rt/pure/__retain - ) - (func $~lib/string/String#replace (; 71 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - call $~lib/string/String#get:length - local.set $4 - local.get $3 - local.get $4 - i32.le_u - if - local.get $3 - local.get $4 - i32.lt_u - if (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.tee $5 - else - local.get $2 - local.get $0 - local.get $1 - local.get $0 - call $~lib/string/String.__eq - select - call $~lib/rt/pure/__retain - local.tee $6 - end - call $~lib/rt/pure/__retain - local.set $7 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $7 - return - end - local.get $0 - local.get $1 - i32.const 0 - call $~lib/string/String#indexOf - local.set $8 - local.get $8 - i32.const -1 - i32.xor - if - local.get $2 - call $~lib/string/String#get:length - local.set $6 - local.get $3 - local.get $4 - i32.sub - local.set $3 - local.get $3 - local.get $6 - i32.add - local.set $5 - local.get $5 - if - local.get $5 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $7 - local.get $7 - local.get $0 - local.get $8 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $7 - local.get $8 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $7 - local.get $8 - local.get $6 - i32.add - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $8 - local.get $4 - i32.add - i32.const 1 - i32.shl - i32.add - local.get $3 - local.get $8 - i32.sub - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $7 - call $~lib/rt/pure/__retain - local.set $9 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $9 - return - end - end - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - ) - (func $~lib/rt/tlsf/reallocateBlock (; 72 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $2 - call $~lib/rt/tlsf/prepareSize - local.set $3 - local.get $1 - i32.load - local.set $4 - local.get $4 - i32.const 1 - i32.and - i32.eqz - if (result i32) - local.get $1 - i32.load offset=4 - i32.const -268435456 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 184 - i32.const 521 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - local.get $4 - i32.const -4 - i32.and - i32.le_u - if - local.get $0 - local.get $1 - local.get $3 - call $~lib/rt/tlsf/prepareBlock - local.get $1 - local.get $2 - i32.store offset=12 - local.get $1 - return - end - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $6 - local.get $6 - i32.load - local.set $7 - local.get $7 - i32.const 1 - i32.and - if - local.get $4 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $7 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $5 - local.get $5 - local.get $3 - i32.ge_u - if - local.get $0 - local.get $6 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $4 - i32.const 3 - i32.and - local.get $5 - i32.or - i32.store - local.get $1 - local.get $2 - i32.store offset=12 - local.get $0 - local.get $1 - local.get $3 - call $~lib/rt/tlsf/prepareBlock - local.get $1 - return - end - end - local.get $0 - local.get $2 - call $~lib/rt/tlsf/allocateBlock - local.set $8 - local.get $8 - local.get $1 - i32.load offset=8 - i32.store offset=8 - local.get $8 - i32.const 16 - i32.add - local.get $1 - i32.const 16 - i32.add - local.get $2 - call $~lib/memory/memory.copy - local.get $1 - local.get $4 - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $1 - call $~lib/rt/tlsf/insertBlock - local.get $1 - call $~lib/rt/rtrace/onfree - local.get $8 - ) - (func $~lib/rt/tlsf/__realloc (; 73 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - i32.const 0 - i32.const 184 - i32.const 585 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 184 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/tlsf/ROOT - local.get $0 - i32.const 16 - i32.sub - local.get $1 - call $~lib/rt/tlsf/reallocateBlock - i32.const 16 - i32.add - ) - (func $~lib/string/String#replaceAll (; 74 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - call $~lib/string/String#get:length - local.set $4 - local.get $3 - local.get $4 - i32.le_u - if - local.get $3 - local.get $4 - i32.lt_u - if (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.tee $5 - else - local.get $2 - local.get $0 - local.get $1 - local.get $0 - call $~lib/string/String.__eq - select - call $~lib/rt/pure/__retain - local.tee $6 - end - call $~lib/rt/pure/__retain - local.set $7 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $7 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $8 - local.get $4 - i32.eqz - if - local.get $8 - i32.eqz - if - local.get $0 - call $~lib/rt/pure/__retain - local.set $6 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $6 - return - end - local.get $3 - local.get $3 - i32.const 1 - i32.add - local.get $8 - i32.mul - i32.add - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $6 - local.get $2 - local.get $8 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $8 - local.set $5 - block $break|0 - i32.const 0 - local.set $7 - loop $loop|0 - local.get $7 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $6 - local.get $5 - local.tee $9 - i32.const 1 - i32.add - local.set $5 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $7 - i32.const 1 - i32.shl - i32.add - i32.load16_u - i32.store16 - local.get $6 - local.get $5 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $8 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $5 - local.get $8 - i32.add - local.set $5 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $6 - call $~lib/rt/pure/__retain - local.set $7 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $7 - return - end - i32.const 0 - local.set $10 - i32.const 0 - local.set $11 - local.get $4 - local.get $8 - i32.eq - if - local.get $3 - i32.const 1 - i32.shl - local.set $5 - local.get $5 - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $6 - local.get $0 - local.get $5 - call $~lib/memory/memory.copy - block $break|1 - loop $continue|1 - local.get $0 - local.get $1 - local.get $10 - call $~lib/string/String#indexOf - local.tee $11 - i32.const -1 - i32.xor - i32.eqz - br_if $break|1 - local.get $6 - local.get $11 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $8 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $11 - local.get $4 - i32.add - local.set $10 - br $continue|1 - end - unreachable - end - local.get $6 - call $~lib/rt/pure/__retain - local.set $7 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $7 - return - end - i32.const 0 - local.set $12 - i32.const 0 - local.set $13 - local.get $3 - local.set $14 - block $break|2 - loop $continue|2 - local.get $0 - local.get $1 - local.get $10 - call $~lib/string/String#indexOf - local.tee $11 - i32.const -1 - i32.xor - i32.eqz - br_if $break|2 - local.get $12 - i32.eqz - if - local.get $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $12 - end - local.get $13 - local.get $14 - i32.gt_u - if - local.get $14 - i32.const 1 - i32.shl - local.set $6 - local.get $12 - local.get $6 - i32.const 1 - i32.shl - call $~lib/rt/tlsf/__realloc - local.set $12 - local.get $6 - local.set $14 - end - local.get $11 - local.get $10 - i32.sub - local.set $6 - local.get $12 - local.get $13 - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $10 - i32.const 1 - i32.shl - i32.add - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $13 - local.get $6 - i32.add - local.set $13 - local.get $12 - local.get $13 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $8 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $13 - local.get $8 - i32.add - local.set $13 - local.get $11 - local.get $4 - i32.add - local.set $10 - br $continue|2 - end - unreachable - end - local.get $13 - if - local.get $13 - local.get $14 - i32.gt_u - if - local.get $14 - i32.const 1 - i32.shl - local.set $6 - local.get $12 - local.get $6 - i32.const 1 - i32.shl - call $~lib/rt/tlsf/__realloc - local.set $12 - local.get $6 - local.set $14 - end - local.get $3 - local.get $10 - i32.sub - local.set $6 - local.get $6 - if - local.get $12 - local.get $13 - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $10 - i32.const 1 - i32.shl - i32.add - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - end - local.get $6 - local.get $13 - i32.add - local.set $6 - local.get $14 - local.get $6 - i32.gt_u - if - local.get $12 - local.get $6 - i32.const 1 - i32.shl - call $~lib/rt/tlsf/__realloc - local.set $12 - end - local.get $12 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $0 - call $~lib/rt/pure/__retain - local.set $6 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $6 - ) - (func $~lib/string/String#slice (; 75 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - i32.const 0 - i32.lt_s - if (result i32) - local.get $1 - local.get $3 - i32.add - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - else - local.get $1 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - end - local.set $1 - local.get $2 - i32.const 0 - i32.lt_s - if (result i32) - local.get $2 - local.get $3 - i32.add - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - else - local.get $2 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - end - local.set $2 - local.get $2 - local.get $1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.le_s - if - i32.const 120 - call $~lib/rt/pure/__retain - return - end - local.get $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $6 - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.get $3 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $6 - call $~lib/rt/pure/__retain - ) - (func $~lib/rt/__allocArray (; 76 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - i32.const 16 - local.get $2 - call $~lib/rt/tlsf/__alloc - local.set $4 - local.get $0 - local.get $1 - i32.shl - local.set $5 - local.get $5 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $4 - local.get $6 - call $~lib/rt/pure/__retain - i32.store - local.get $4 - local.get $6 - i32.store offset=4 - local.get $4 - local.get $5 - i32.store offset=8 - local.get $4 - local.get $0 - i32.store offset=12 - local.get $3 - if - local.get $6 - local.get $3 - local.get $5 - call $~lib/memory/memory.copy - end - local.get $4 - ) - (func $~lib/memory/memory.fill (; 77 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - block $~lib/util/memory/memset|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 1 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 2 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.get $4 - i32.store8 - local.get $5 - i32.const 2 - i32.add - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 2 - i32.sub - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 3 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 6 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 3 - i32.add - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 8 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - i32.const 0 - local.get $5 - i32.sub - i32.const 3 - i32.and - local.set $6 - local.get $5 - local.get $6 - i32.add - local.set $5 - local.get $3 - local.get $6 - i32.sub - local.set $3 - local.get $3 - i32.const -4 - i32.and - local.set $3 - i32.const -1 - i32.const 255 - i32.div_u - local.get $4 - i32.const 255 - i32.and - i32.mul - local.set $7 - local.get $5 - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.get $7 - i32.store - local.get $3 - i32.const 8 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 4 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 8 - i32.add - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 12 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 8 - i32.sub - local.get $7 - i32.store - local.get $3 - i32.const 24 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 12 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 16 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 20 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 24 - i32.add - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 28 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 24 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 20 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 16 - i32.sub - local.get $7 - i32.store - i32.const 24 - local.get $5 - i32.const 4 - i32.and - i32.add - local.set $6 - local.get $5 - local.get $6 - i32.add - local.set $5 - local.get $3 - local.get $6 - i32.sub - local.set $3 - local.get $7 - i64.extend_i32_u - local.get $7 - i64.extend_i32_u - i64.const 32 - i64.shl - i64.or - local.set $8 - block $break|0 - loop $continue|0 - local.get $3 - i32.const 32 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $5 - local.get $8 - i64.store - local.get $5 - i32.const 8 - i32.add - local.get $8 - i64.store - local.get $5 - i32.const 16 - i32.add - local.get $8 - i64.store - local.get $5 - i32.const 24 - i32.add - local.get $8 - i64.store - local.get $3 - i32.const 32 - i32.sub - local.set $3 - local.get $5 - i32.const 32 - i32.add - local.set $5 - br $continue|0 - end - unreachable - end - end - ) - (func $~lib/array/ensureSize (; 78 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.load offset=8 - local.set $3 - local.get $1 - local.get $3 - local.get $2 - i32.shr_u - i32.gt_u - if - local.get $1 - i32.const 1073741808 - local.get $2 - i32.shr_u - i32.gt_u - if - i32.const 9768 - i32.const 10824 - i32.const 14 - i32.const 47 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load - local.set $4 - local.get $1 - local.get $2 - i32.shl - local.set $5 - local.get $4 - local.get $5 - call $~lib/rt/tlsf/__realloc - local.set $6 - local.get $6 - local.get $3 - i32.add - i32.const 0 - local.get $5 - local.get $3 - i32.sub - call $~lib/memory/memory.fill - local.get $6 - local.get $4 - i32.ne - if - local.get $0 - local.get $6 - call $~lib/rt/pure/__retain - i32.store - local.get $0 - local.get $6 - i32.store offset=4 - end - local.get $0 - local.get $5 - i32.store offset=8 - end - ) - (func $~lib/array/Array<~lib/string/String>#push (; 79 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=12 - local.set $2 - local.get $2 - i32.const 1 - i32.add - local.set $3 - local.get $0 - local.get $3 - i32.const 2 - call $~lib/array/ensureSize - local.get $0 - i32.load offset=4 - local.get $2 - i32.const 2 - i32.shl - i32.add - local.get $1 - call $~lib/rt/pure/__retain - i32.store - local.get $0 - local.get $3 - i32.store offset=12 - local.get $3 - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/string/String#split (; 80 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $2 - i32.eqz - if - i32.const 0 - i32.const 2 - i32.const 4 - i32.const 0 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $1 - i32.const 0 - i32.eq - if - i32.const 1 - i32.const 2 - i32.const 4 - i32.const 0 - call $~lib/rt/__allocArray - local.set $3 - local.get $3 - i32.load offset=4 - local.set $4 - local.get $4 - local.get $0 - call $~lib/rt/pure/__retain - i32.store - local.get $3 - call $~lib/rt/pure/__retain - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $0 - call $~lib/string/String#get:length - local.set $5 - local.get $1 - call $~lib/string/String#get:length - local.set $6 - local.get $2 - i32.const 0 - i32.lt_s - if - global.get $~lib/builtins/i32.MAX_VALUE - local.set $2 - end - local.get $6 - i32.eqz - if - local.get $5 - i32.eqz - if - i32.const 0 - i32.const 2 - i32.const 4 - i32.const 0 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $5 - local.tee $4 - local.get $2 - local.tee $3 - local.get $4 - local.get $3 - i32.lt_s - select - local.set $5 - local.get $5 - i32.const 2 - i32.const 4 - i32.const 0 - call $~lib/rt/__allocArray - local.set $4 - local.get $4 - i32.load offset=4 - local.set $3 - block $break|0 - i32.const 0 - local.set $7 - loop $loop|0 - local.get $7 - local.get $5 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 2 - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $8 - local.get $8 - local.get $0 - local.get $7 - i32.const 1 - i32.shl - i32.add - i32.load16_u - i32.store16 - local.get $3 - local.get $7 - i32.const 2 - i32.shl - i32.add - local.get $8 - i32.store - local.get $8 - call $~lib/rt/pure/__retain - drop - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $4 - call $~lib/rt/pure/__retain - local.set $8 - local.get $1 - call $~lib/rt/pure/__release - local.get $8 - return - else - local.get $5 - i32.eqz - if - i32.const 1 - i32.const 2 - i32.const 4 - i32.const 0 - call $~lib/rt/__allocArray - local.set $3 - local.get $3 - i32.load offset=4 - i32.const 120 - i32.store - local.get $3 - call $~lib/rt/pure/__retain - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - end - end - i32.const 0 - i32.const 2 - i32.const 4 - i32.const 0 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.set $9 - i32.const 0 - local.set $10 - i32.const 0 - local.set $11 - i32.const 0 - local.set $12 - block $break|1 - loop $continue|1 - local.get $0 - local.get $1 - local.get $11 - call $~lib/string/String#indexOf - local.tee $10 - i32.const -1 - i32.xor - i32.eqz - br_if $break|1 - local.get $10 - local.get $11 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.gt_s - if - local.get $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $4 - local.get $4 - local.get $0 - local.get $11 - i32.const 1 - i32.shl - i32.add - local.get $3 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $4 - call $~lib/array/Array<~lib/string/String>#push - drop - else - local.get $9 - i32.const 120 - call $~lib/array/Array<~lib/string/String>#push - drop - end - local.get $12 - i32.const 1 - i32.add - local.tee $12 - local.get $2 - i32.eq - if - local.get $9 - local.set $4 - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $10 - local.get $6 - i32.add - local.set $11 - br $continue|1 - end - unreachable - end - local.get $11 - i32.eqz - if - local.get $9 - local.get $0 - call $~lib/array/Array<~lib/string/String>#push - drop - local.get $9 - local.set $3 - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - return - end - local.get $5 - local.get $11 - i32.sub - local.set $13 - local.get $13 - i32.const 0 - i32.gt_s - if - local.get $13 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $3 - local.get $3 - local.get $0 - local.get $11 - i32.const 1 - i32.shl - i32.add - local.get $13 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $3 - call $~lib/array/Array<~lib/string/String>#push - drop - else - local.get $9 - i32.const 120 - call $~lib/array/Array<~lib/string/String>#push - drop - end - local.get $9 - local.set $3 - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/array/Array<~lib/string/String>#get:length (; 81 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 82 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/array/Array<~lib/string/String>#__get (; 83 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 232 - i32.const 10824 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/string/String>#__unchecked_get - local.set $2 - local.get $2 - i32.eqz - if - local.get $2 - call $~lib/rt/pure/__release - i32.const 10872 - i32.const 10824 - i32.const 100 - i32.const 39 - call $~lib/builtins/abort - unreachable - end - local.get $2 - ) - (func $~lib/util/number/decimalCount32 (; 84 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - i32.const 100000 - i32.lt_u - if - local.get $0 - i32.const 100 - i32.lt_u - if - i32.const 1 - i32.const 2 - local.get $0 - i32.const 10 - i32.lt_u - select - return - else - i32.const 4 - i32.const 5 - local.get $0 - i32.const 10000 - i32.lt_u - select - local.set $1 - i32.const 3 - local.get $1 - local.get $0 - i32.const 1000 - i32.lt_u - select - return - end - unreachable - else - local.get $0 - i32.const 10000000 - i32.lt_u - if - i32.const 6 - i32.const 7 - local.get $0 - i32.const 1000000 - i32.lt_u - select - return - else - i32.const 9 - i32.const 10 - local.get $0 - i32.const 1000000000 - i32.lt_u - select - local.set $1 - i32.const 8 - local.get $1 - local.get $0 - i32.const 100000000 - i32.lt_u - select - return - end - unreachable - end - unreachable - ) - (func $~lib/util/number/utoa32_lut (; 85 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - i32.const 11584 - i32.load offset=4 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i32.const 10000 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $1 - i32.const 10000 - i32.div_u - local.set $4 - local.get $1 - i32.const 10000 - i32.rem_u - local.set $5 - local.get $4 - local.set $1 - local.get $5 - i32.const 100 - i32.div_u - local.set $6 - local.get $5 - i32.const 100 - i32.rem_u - local.set $7 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $8 - local.get $3 - local.get $7 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $9 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $8 - local.get $9 - i64.const 32 - i64.shl - i64.or - i64.store - br $continue|0 - end - unreachable - end - local.get $1 - i32.const 100 - i32.ge_u - if - local.get $1 - i32.const 100 - i32.div_u - local.set $7 - local.get $1 - i32.const 100 - i32.rem_u - local.set $6 - local.get $7 - local.set $1 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - end - local.get $1 - i32.const 10 - i32.ge_u - if - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - else - local.get $2 - i32.const 1 - i32.sub - local.set $2 - i32.const 48 - local.get $1 - i32.add - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store16 - end - ) - (func $~lib/util/number/itoa32 (; 86 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.eqz - if - i32.const 1192 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i32.const 0 - i32.lt_s - local.set $1 - local.get $1 - if - i32.const 0 - local.get $0 - i32.sub - local.set $0 - end - local.get $0 - call $~lib/util/number/decimalCount32 - local.get $1 - i32.add - local.set $2 - local.get $2 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $3 - local.get $3 - local.set $6 - local.get $0 - local.set $5 - local.get $2 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - local.get $1 - if - local.get $3 - i32.const 45 - i32.store16 - end - local.get $3 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/utoa32 (; 87 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.eqz - if - i32.const 1192 - call $~lib/rt/pure/__retain - return - end - local.get $0 - call $~lib/util/number/decimalCount32 - local.set $1 - local.get $1 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $2 - local.get $2 - local.set $5 - local.get $0 - local.set $4 - local.get $1 - local.set $3 - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/number/utoa32_lut - local.get $2 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/decimalCount64 (; 88 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - (local $1 i32) - local.get $0 - i64.const 1000000000000000 - i64.lt_u - if - local.get $0 - i64.const 1000000000000 - i64.lt_u - if - i32.const 11 - i32.const 12 - local.get $0 - i64.const 100000000000 - i64.lt_u - select - local.set $1 - i32.const 10 - local.get $1 - local.get $0 - i64.const 10000000000 - i64.lt_u - select - return - else - i32.const 14 - i32.const 15 - local.get $0 - i64.const 100000000000000 - i64.lt_u - select - local.set $1 - i32.const 13 - local.get $1 - local.get $0 - i64.const 10000000000000 - i64.lt_u - select - return - end - unreachable - else - local.get $0 - i64.const 100000000000000000 - i64.lt_u - if - i32.const 16 - i32.const 17 - local.get $0 - i64.const 10000000000000000 - i64.lt_u - select - return - else - i32.const 19 - i32.const 20 - local.get $0 - i64.const -8446744073709551616 - i64.lt_u - select - local.set $1 - i32.const 18 - local.get $1 - local.get $0 - i64.const 1000000000000000000 - i64.lt_u - select - return - end - unreachable - end - unreachable - ) - (func $~lib/util/number/utoa64_lut (; 89 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) - (local $3 i32) - (local $4 i64) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i64) - (local $13 i64) - i32.const 11584 - i32.load offset=4 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i64.const 100000000 - i64.ge_u - i32.eqz - br_if $break|0 - local.get $1 - i64.const 100000000 - i64.div_u - local.set $4 - local.get $1 - local.get $4 - i64.const 100000000 - i64.mul - i64.sub - i32.wrap_i64 - local.set $5 - local.get $4 - local.set $1 - local.get $5 - i32.const 10000 - i32.div_u - local.set $6 - local.get $5 - i32.const 10000 - i32.rem_u - local.set $7 - local.get $6 - i32.const 100 - i32.div_u - local.set $8 - local.get $6 - i32.const 100 - i32.rem_u - local.set $9 - local.get $7 - i32.const 100 - i32.div_u - local.set $10 - local.get $7 - i32.const 100 - i32.rem_u - local.set $11 - local.get $3 - local.get $10 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $12 - local.get $3 - local.get $11 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $13 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $12 - local.get $13 - i64.const 32 - i64.shl - i64.or - i64.store - local.get $3 - local.get $8 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $12 - local.get $3 - local.get $9 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $13 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $12 - local.get $13 - i64.const 32 - i64.shl - i64.or - i64.store - br $continue|0 - end - unreachable - end - local.get $0 - local.get $1 - i32.wrap_i64 - local.get $2 - call $~lib/util/number/utoa32_lut - ) - (func $~lib/util/number/utoa64 (; 90 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i64) - local.get $0 - i64.eqz - if - i32.const 1192 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i64.const 4294967295 - i64.le_u - if - local.get $0 - i32.wrap_i64 - local.set $2 - local.get $2 - call $~lib/util/number/decimalCount32 - local.set $3 - local.get $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $1 - local.get $1 - local.set $6 - local.get $2 - local.set $5 - local.get $3 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - else - local.get $0 - call $~lib/util/number/decimalCount64 - local.set $3 - local.get $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $1 - local.get $1 - local.set $5 - local.get $0 - local.set $7 - local.get $3 - local.set $4 - local.get $5 - local.get $7 - local.get $4 - call $~lib/util/number/utoa64_lut - end - local.get $1 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/itoa64 (; 91 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - local.get $0 - i64.eqz - if - i32.const 1192 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i64.const 0 - i64.lt_s - local.set $1 - local.get $1 - if - i64.const 0 - local.get $0 - i64.sub - local.set $0 - end - local.get $0 - i64.const 4294967295 - i64.le_u - if - local.get $0 - i32.wrap_i64 - local.set $3 - local.get $3 - call $~lib/util/number/decimalCount32 - local.get $1 - i32.add - local.set $4 - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $2 - local.get $2 - local.set $7 - local.get $3 - local.set $6 - local.get $4 - local.set $5 - local.get $7 - local.get $6 - local.get $5 - call $~lib/util/number/utoa32_lut - else - local.get $0 - call $~lib/util/number/decimalCount64 - local.get $1 - i32.add - local.set $4 - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $2 - local.get $2 - local.set $6 - local.get $0 - local.set $8 - local.get $4 - local.set $5 - local.get $6 - local.get $8 - local.get $5 - call $~lib/util/number/utoa64_lut - end - local.get $1 - if - local.get $2 - i32.const 45 - i32.store16 - end - local.get $2 - call $~lib/rt/pure/__retain - ) - (func $~lib/number/isFinite (; 92 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.eq - ) - (func $~lib/array/Array#__unchecked_get (; 93 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - i64.load - ) - (func $~lib/array/Array#__unchecked_get (; 94 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.load16_s - ) - (func $~lib/util/number/genDigits (; 95 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i64) - (local $11 i32) - (local $12 i32) - (local $13 i64) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i32) - (local $25 i32) - (local $26 i32) - i32.const 0 - local.get $4 - i32.sub - local.set $7 - i64.const 1 - local.get $7 - i64.extend_i32_s - i64.shl - local.set $8 - local.get $8 - i64.const 1 - i64.sub - local.set $9 - local.get $3 - local.get $1 - i64.sub - local.set $10 - local.get $4 - local.set $11 - local.get $3 - local.get $7 - i64.extend_i32_s - i64.shr_u - i32.wrap_i64 - local.set $12 - local.get $3 - local.get $9 - i64.and - local.set $13 - local.get $12 - call $~lib/util/number/decimalCount32 - local.set $14 - local.get $6 - local.set $15 - i32.const 14232 - i32.load offset=4 - local.set $16 - block $break|0 - loop $continue|0 - local.get $14 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|0 - block $break|1 - block $case10|1 - block $case9|1 - block $case8|1 - block $case7|1 - block $case6|1 - block $case5|1 - block $case4|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $14 - local.set $18 - local.get $18 - i32.const 10 - i32.eq - br_if $case0|1 - local.get $18 - i32.const 9 - i32.eq - br_if $case1|1 - local.get $18 - i32.const 8 - i32.eq - br_if $case2|1 - local.get $18 - i32.const 7 - i32.eq - br_if $case3|1 - local.get $18 - i32.const 6 - i32.eq - br_if $case4|1 - local.get $18 - i32.const 5 - i32.eq - br_if $case5|1 - local.get $18 - i32.const 4 - i32.eq - br_if $case6|1 - local.get $18 - i32.const 3 - i32.eq - br_if $case7|1 - local.get $18 - i32.const 2 - i32.eq - br_if $case8|1 - local.get $18 - i32.const 1 - i32.eq - br_if $case9|1 - br $case10|1 - end - local.get $12 - i32.const 1000000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100 - i32.div_u - local.set $17 - local.get $12 - i32.const 100 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10 - i32.div_u - local.set $17 - local.get $12 - i32.const 10 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - local.set $17 - i32.const 0 - local.set $12 - br $break|1 - end - i32.const 0 - local.set $17 - br $break|1 - end - local.get $17 - local.get $15 - i32.or - if - local.get $0 - local.get $15 - local.tee $18 - i32.const 1 - i32.add - local.set $15 - local.get $18 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $17 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $12 - i64.extend_i32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.get $13 - i64.add - local.set $19 - local.get $19 - local.get $5 - i64.le_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $19 - local.set $22 - local.get $16 - local.get $14 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $25 - local.get $25 - i32.load16_u - local.set $26 - block $break|2 - loop $continue|2 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|2 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|2 - end - unreachable - end - local.get $25 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|0 - end - unreachable - end - loop $continue|3 - local.get $13 - i64.const 10 - i64.mul - local.set $13 - local.get $5 - i64.const 10 - i64.mul - local.set $5 - local.get $13 - local.get $7 - i64.extend_i32_s - i64.shr_u - local.set $19 - local.get $19 - local.get $15 - i64.extend_i32_s - i64.or - i64.const 0 - i64.ne - if - local.get $0 - local.get $15 - local.tee $17 - i32.const 1 - i32.add - local.set $15 - local.get $17 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $19 - i32.wrap_i64 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $13 - local.get $9 - i64.and - local.set $13 - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $13 - local.get $5 - i64.lt_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $10 - local.get $16 - i32.const 0 - local.get $14 - i32.sub - i32.const 2 - i32.shl - i32.add - i64.load32_u - i64.mul - local.set $10 - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $13 - local.set $22 - local.get $8 - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $17 - local.get $17 - i32.load16_u - local.set $26 - block $break|4 - loop $continue|4 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|4 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|4 - end - unreachable - end - local.get $17 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|3 - end - unreachable - ) - (func $~lib/util/number/prettify (; 96 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $2 - i32.eqz - if - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 2 - i32.add - return - end - local.get $1 - local.get $2 - i32.add - local.set $3 - local.get $1 - local.get $3 - i32.le_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - block $break|0 - local.get $1 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $3 - i32.const 2 - i32.add - return - else - local.get $3 - i32.const 0 - i32.gt_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $4 - local.get $4 - i32.const 2 - i32.add - local.get $4 - i32.const 0 - local.get $2 - i32.sub - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.store16 - local.get $1 - i32.const 1 - i32.add - return - else - i32.const -6 - local.get $3 - i32.lt_s - if (result i32) - local.get $3 - i32.const 0 - i32.le_s - else - i32.const 0 - end - if - i32.const 2 - local.get $3 - i32.sub - local.set $4 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $1 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - i32.const 48 - i32.const 46 - i32.const 16 - i32.shl - i32.or - i32.store - block $break|1 - i32.const 2 - local.set $5 - loop $loop|1 - local.get $5 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|1 - end - unreachable - end - local.get $1 - local.get $4 - i32.add - return - else - local.get $1 - i32.const 1 - i32.eq - if - local.get $0 - i32.const 101 - i32.store16 offset=2 - local.get $0 - i32.const 4 - i32.add - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - local.get $5 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $5 - i32.sub - local.set $5 - end - local.get $5 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $7 - local.get $4 - local.set $10 - local.get $5 - local.set $9 - local.get $7 - local.set $8 - local.get $10 - local.get $9 - local.get $8 - call $~lib/util/number/utoa32_lut - local.get $4 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $7 - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - else - local.get $1 - i32.const 1 - i32.shl - local.set $7 - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.const 2 - i32.add - local.get $7 - i32.const 2 - i32.sub - call $~lib/memory/memory.copy - local.get $0 - i32.const 46 - i32.store16 offset=2 - local.get $0 - local.get $7 - i32.add - i32.const 101 - i32.store16 offset=2 - local.get $1 - local.get $0 - local.get $7 - i32.add - i32.const 4 - i32.add - local.set $9 - local.get $3 - i32.const 1 - i32.sub - local.set $8 - local.get $8 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $8 - i32.sub - local.set $8 - end - local.get $8 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $4 - local.get $9 - local.set $11 - local.get $8 - local.set $5 - local.get $4 - local.set $10 - local.get $11 - local.get $5 - local.get $10 - call $~lib/util/number/utoa32_lut - local.get $9 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $4 - i32.add - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - end - unreachable - end - unreachable - end - unreachable - end - unreachable - ) - (func $~lib/util/number/dtoa_core (; 97 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 i64) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i32) - (local $11 i64) - (local $12 i64) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 f64) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i64) - (local $25 i64) - (local $26 i32) - (local $27 i64) - (local $28 i32) - local.get $1 - f64.const 0 - f64.lt - local.set $2 - local.get $2 - if - local.get $1 - f64.neg - local.set $1 - local.get $0 - i32.const 45 - i32.store16 - end - local.get $1 - local.set $5 - local.get $0 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i64.reinterpret_f64 - local.set $6 - local.get $6 - i64.const 9218868437227405312 - i64.and - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.set $7 - local.get $6 - i64.const 4503599627370495 - i64.and - local.set $8 - local.get $7 - i32.const 0 - i32.ne - i64.extend_i32_u - i64.const 52 - i64.shl - local.get $8 - i64.add - local.set $9 - local.get $7 - i32.const 1 - local.get $7 - i32.const 0 - i32.ne - select - i32.const 1023 - i32.const 52 - i32.add - i32.sub - local.set $7 - local.get $9 - local.set $11 - local.get $7 - local.set $10 - local.get $11 - i64.const 1 - i64.shl - i64.const 1 - i64.add - local.set $12 - local.get $10 - i32.const 1 - i32.sub - local.set $13 - local.get $12 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $12 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $12 - local.get $13 - local.get $14 - i32.sub - local.set $13 - i32.const 1 - local.get $11 - i64.const 4503599627370496 - i64.eq - i32.add - local.set $15 - local.get $12 - global.set $~lib/util/number/_frc_plus - local.get $11 - local.get $15 - i64.extend_i32_s - i64.shl - i64.const 1 - i64.sub - local.get $10 - local.get $15 - i32.sub - local.get $13 - i32.sub - i64.extend_i32_s - i64.shl - global.set $~lib/util/number/_frc_minus - local.get $13 - global.set $~lib/util/number/_exp - global.get $~lib/util/number/_exp - local.set $10 - i32.const -61 - local.get $10 - i32.sub - f64.convert_i32_s - f64.const 0.30102999566398114 - f64.mul - f64.const 347 - f64.add - local.set $16 - local.get $16 - i32.trunc_f64_s - local.set $15 - local.get $15 - local.get $15 - f64.convert_i32_s - local.get $16 - f64.ne - i32.add - local.set $15 - local.get $15 - i32.const 3 - i32.shr_s - i32.const 1 - i32.add - local.set $14 - i32.const 348 - local.get $14 - i32.const 3 - i32.shl - i32.sub - global.set $~lib/util/number/_K - i32.const 13920 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_frc_pow - i32.const 14144 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_exp_pow - local.get $9 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $9 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $9 - local.get $7 - local.get $14 - i32.sub - local.set $7 - global.get $~lib/util/number/_frc_pow - local.set $12 - global.get $~lib/util/number/_exp_pow - local.set $15 - local.get $9 - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $24 - local.get $24 - i64.const 2147483647 - i64.add - local.set $24 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $24 - i64.const 32 - i64.shr_u - local.set $24 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $24 - i64.add - local.set $24 - local.get $7 - local.set $10 - local.get $15 - local.set $13 - local.get $10 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $10 - global.get $~lib/util/number/_frc_plus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $23 - local.get $11 - i64.const 4294967295 - i64.and - local.set $22 - local.get $17 - i64.const 32 - i64.shr_u - local.set $21 - local.get $11 - i64.const 32 - i64.shr_u - local.set $20 - local.get $23 - local.get $22 - i64.mul - local.set $19 - local.get $21 - local.get $22 - i64.mul - local.get $19 - i64.const 32 - i64.shr_u - i64.add - local.set $18 - local.get $23 - local.get $20 - i64.mul - local.get $18 - i64.const 4294967295 - i64.and - i64.add - local.set $25 - local.get $25 - i64.const 2147483647 - i64.add - local.set $25 - local.get $18 - i64.const 32 - i64.shr_u - local.set $18 - local.get $25 - i64.const 32 - i64.shr_u - local.set $25 - local.get $21 - local.get $20 - i64.mul - local.get $18 - i64.add - local.get $25 - i64.add - i64.const 1 - i64.sub - local.set $25 - global.get $~lib/util/number/_exp - local.set $26 - local.get $15 - local.set $13 - local.get $26 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $26 - global.get $~lib/util/number/_frc_minus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $27 - local.get $27 - i64.const 2147483647 - i64.add - local.set $27 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $27 - i64.const 32 - i64.shr_u - local.set $27 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $27 - i64.add - i64.const 1 - i64.add - local.set $27 - local.get $25 - local.get $27 - i64.sub - local.set $23 - local.get $4 - local.get $24 - local.get $10 - local.get $25 - local.get $26 - local.get $23 - local.get $3 - call $~lib/util/number/genDigits - local.set $28 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $28 - local.get $2 - i32.sub - global.get $~lib/util/number/_K - call $~lib/util/number/prettify - local.set $28 - local.get $28 - local.get $2 - i32.add - ) - (func $~lib/string/String#substring (; 98 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $6 - local.get $2 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $7 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - i32.const 1 - i32.shl - local.set $8 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - i32.const 1 - i32.shl - local.set $9 - local.get $9 - local.get $8 - i32.sub - local.set $3 - local.get $3 - i32.eqz - if - i32.const 120 - call $~lib/rt/pure/__retain - return - end - local.get $8 - i32.eqz - if (result i32) - local.get $9 - local.get $0 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - i32.eq - else - i32.const 0 - end - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $3 - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $10 - local.get $10 - local.get $0 - local.get $8 - i32.add - local.get $3 - call $~lib/memory/memory.copy - local.get $10 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/dtoa (; 99 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - f64.const 0 - f64.eq - if - i32.const 13152 - call $~lib/rt/pure/__retain - return - end - local.get $0 - call $~lib/number/isFinite - i32.eqz - if - local.get $0 - call $~lib/number/isNaN - if - i32.const 4344 - call $~lib/rt/pure/__retain - return - end - i32.const 5224 - i32.const 13176 - local.get $0 - f64.const 0 - f64.lt - select - call $~lib/rt/pure/__retain - return - end - i32.const 28 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $1 - local.get $1 - local.get $0 - call $~lib/util/number/dtoa_core - local.set $2 - local.get $2 - i32.const 28 - i32.eq - if - local.get $1 - call $~lib/rt/pure/__retain - return - end - local.get $1 - i32.const 0 - local.get $2 - call $~lib/string/String#substring - local.set $3 - local.get $1 - call $~lib/rt/tlsf/__free - local.get $3 - ) - (func $start:std/string (; 100 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i32) - (local $20 i32) - (local $21 i32) - (local $22 i32) - (local $23 i32) - (local $24 i32) - (local $25 i32) - (local $26 i32) - (local $27 i32) - (local $28 i32) - (local $29 i32) - (local $30 i32) - (local $31 i32) - (local $32 i32) - (local $33 i32) - (local $34 i32) - (local $35 i32) - (local $36 i32) - (local $37 i32) - (local $38 i32) - (local $39 i32) - (local $40 i32) - (local $41 i32) - (local $42 i32) - (local $43 i32) - (local $44 i32) - (local $45 i32) - (local $46 i32) - (local $47 i32) - (local $48 i32) - (local $49 i32) - (local $50 i32) - (local $51 i32) - (local $52 i32) - (local $53 i32) - (local $54 i32) - (local $55 i32) - (local $56 i32) - (local $57 i32) - (local $58 i32) - (local $59 i32) - (local $60 i32) - (local $61 i32) - (local $62 i32) - (local $63 i32) - (local $64 i32) - (local $65 i32) - (local $66 i32) - (local $67 i32) - (local $68 i32) - (local $69 i32) - (local $70 i32) - (local $71 i32) - (local $72 i32) - (local $73 i32) - (local $74 i32) - (local $75 i32) - (local $76 i32) - (local $77 i32) - (local $78 i32) - (local $79 i32) - (local $80 i32) - (local $81 i32) - (local $82 i32) - (local $83 i32) - (local $84 i32) - (local $85 i32) - (local $86 i32) - (local $87 i32) - (local $88 i32) - (local $89 i32) - (local $90 i32) - (local $91 i32) - (local $92 i32) - (local $93 i32) - (local $94 i32) - (local $95 i32) - (local $96 i32) - (local $97 i32) - (local $98 i32) - (local $99 i32) - (local $100 i32) - (local $101 i32) - (local $102 i32) - (local $103 i32) - (local $104 i32) - (local $105 i32) - (local $106 i32) - (local $107 i32) - (local $108 i32) - (local $109 i32) - (local $110 i32) - (local $111 i32) - (local $112 i32) - (local $113 i32) - (local $114 i32) - (local $115 i32) - (local $116 i32) - (local $117 i32) - (local $118 i32) - (local $119 i32) - (local $120 i32) - (local $121 i32) - (local $122 i32) - (local $123 i32) - (local $124 i32) - (local $125 i32) - (local $126 i32) - (local $127 i32) - (local $128 i32) - (local $129 i32) - (local $130 i32) - (local $131 i32) - (local $132 i32) - (local $133 i32) - (local $134 i32) - (local $135 i32) - (local $136 i32) - (local $137 i32) - (local $138 i32) - (local $139 i32) - (local $140 i32) - (local $141 i32) - (local $142 i32) - (local $143 i32) - (local $144 i32) - (local $145 i32) - (local $146 i32) - (local $147 i32) - (local $148 i32) - (local $149 i32) - (local $150 i32) - (local $151 i32) - (local $152 i32) - (local $153 i32) - (local $154 i32) - (local $155 i32) - (local $156 i32) - (local $157 i32) - (local $158 i32) - (local $159 i32) - (local $160 i32) - (local $161 i32) - (local $162 i32) - (local $163 i32) - (local $164 i32) - (local $165 i32) - (local $166 i32) - (local $167 i32) - (local $168 i32) - (local $169 i32) - (local $170 i32) - (local $171 i32) - (local $172 i32) - (local $173 i32) - (local $174 i32) - (local $175 i32) - (local $176 i32) - (local $177 i32) - (local $178 i32) - (local $179 i32) - (local $180 i32) - (local $181 i32) - (local $182 i32) - (local $183 i32) - (local $184 i32) - (local $185 i32) - (local $186 i32) - (local $187 i32) - (local $188 i32) - (local $189 i32) - (local $190 i32) - global.get $std/string/str - i32.const 24 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 8 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - call $~lib/string/String#get:length - i32.const 16 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 10 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 0 - call $~lib/string/String#charCodeAt - i32.const 104 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 11 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - call $~lib/string/String.__not - i32.eqz - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 13 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 384 - call $~lib/string/String.__not - i32.eqz - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 14 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - call $~lib/string/String.__not - i32.eqz - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 15 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - i32.const 0 - i32.const 0 - call $~lib/string/String.fromCharCode|trampoline - local.tee $0 - i32.const 384 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 17 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - i32.const 54 - i32.const 0 - call $~lib/string/String.fromCharCode|trampoline - local.tee $1 - i32.const 432 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 18 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - i32.const 65590 - i32.const 0 - call $~lib/string/String.fromCharCode|trampoline - local.tee $2 - i32.const 432 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 19 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 55296 - i32.const 57088 - call $~lib/string/String.fromCharCode - local.tee $3 - i32.const 456 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 20 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/string/String.fromCodePoint - local.tee $4 - i32.const 384 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 22 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 54 - call $~lib/string/String.fromCodePoint - local.tee $5 - i32.const 432 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 23 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 119558 - call $~lib/string/String.fromCodePoint - local.tee $6 - i32.const 528 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 24 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 552 - i32.const 0 - call $~lib/string/String#startsWith - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 26 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 600 - i32.const 536870904 - call $~lib/string/String#endsWith - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 27 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 632 - i32.const 0 - call $~lib/string/String#includes - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 28 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 0 - i32.const 656 - call $~lib/string/String#padStart - local.tee $7 - global.get $std/string/str - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 30 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 15 - i32.const 656 - call $~lib/string/String#padStart - local.tee $8 - global.get $std/string/str - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 31 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 3 - i32.const 656 - call $~lib/string/String#padStart - local.tee $9 - i32.const 680 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 32 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 10 - i32.const 120 - call $~lib/string/String#padStart - local.tee $10 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 33 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 100 - i32.const 120 - call $~lib/string/String#padStart - local.tee $11 - i32.const 408 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 34 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 5 - i32.const 656 - call $~lib/string/String#padStart - local.tee $12 - i32.const 728 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 35 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 6 - i32.const 760 - call $~lib/string/String#padStart - local.tee $13 - i32.const 784 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 36 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 8 - i32.const 760 - call $~lib/string/String#padStart - local.tee $14 - i32.const 816 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 37 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 0 - i32.const 656 - call $~lib/string/String#padEnd - local.tee $15 - global.get $std/string/str - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 39 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 15 - i32.const 656 - call $~lib/string/String#padEnd - local.tee $16 - global.get $std/string/str - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 40 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 3 - i32.const 656 - call $~lib/string/String#padEnd - local.tee $17 - i32.const 680 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 41 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 10 - i32.const 120 - call $~lib/string/String#padEnd - local.tee $18 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 42 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 100 - i32.const 120 - call $~lib/string/String#padEnd - local.tee $19 - i32.const 408 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 43 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 5 - i32.const 656 - call $~lib/string/String#padEnd - local.tee $20 - i32.const 848 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 44 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 6 - i32.const 704 - call $~lib/string/String#padEnd - local.tee $21 - i32.const 880 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 45 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 8 - i32.const 704 - call $~lib/string/String#padEnd - local.tee $22 - i32.const 912 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 46 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 120 - i32.const 0 - call $~lib/string/String#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 48 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 552 - i32.const 0 - call $~lib/string/String#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 49 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 408 - i32.const 0 - call $~lib/string/String#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 50 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - global.get $std/string/str - i32.const 0 - call $~lib/string/String#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 51 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 120 - i32.const 0 - call $~lib/string/String#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 52 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 944 - i32.const 0 - call $~lib/string/String#indexOf - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 53 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 968 - i32.const 0 - call $~lib/string/String#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 54 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 944 - i32.const 2 - call $~lib/string/String#indexOf - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 55 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 944 - i32.const 3 - call $~lib/string/String#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 56 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 992 - i32.const -1 - call $~lib/string/String#indexOf - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 57 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 120 - i32.const 2147483647 - call $~lib/string/String#lastIndexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 59 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 552 - i32.const 2147483647 - call $~lib/string/String#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 60 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 120 - i32.const 2147483647 - call $~lib/string/String#lastIndexOf - global.get $std/string/str - call $~lib/string/String#get:length - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 61 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 944 - i32.const 2147483647 - call $~lib/string/String#lastIndexOf - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 62 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 968 - i32.const 2147483647 - call $~lib/string/String#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 63 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 1016 - i32.const 2147483647 - call $~lib/string/String#lastIndexOf - i32.const 15 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 64 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 944 - i32.const 2 - call $~lib/string/String#lastIndexOf - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 65 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 944 - i32.const 3 - call $~lib/string/String#lastIndexOf - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 66 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 992 - i32.const -1 - call $~lib/string/String#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 67 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 1040 - i32.const 0 - call $~lib/string/String#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 68 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 552 - i32.const 0 - call $~lib/string/String#lastIndexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 69 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - call $~lib/string/String#trimStart - local.tee $23 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 71 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1064 - call $~lib/string/String#trimStart - local.tee $24 - i32.const 1064 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 72 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1088 - call $~lib/string/String#trimStart - local.tee $25 - i32.const 1128 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 73 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - call $~lib/string/String#trimEnd - local.tee $26 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 75 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1064 - call $~lib/string/String#trimEnd - local.tee $27 - i32.const 1064 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 76 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1088 - call $~lib/string/String#trimEnd - local.tee $28 - i32.const 1160 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 77 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - call $~lib/string/String#trim - local.tee $29 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 79 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1064 - call $~lib/string/String#trim - local.tee $30 - i32.const 1064 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 80 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1088 - call $~lib/string/String#trim - local.tee $31 - i32.const 704 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 81 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1192 - i32.const 0 - call $~lib/string/parseInt - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 83 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1216 - i32.const 0 - call $~lib/string/parseInt - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 84 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1240 - i32.const 0 - call $~lib/string/parseInt - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 85 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1264 - i32.const 0 - call $~lib/string/parseInt - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 86 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1288 - i32.const 0 - call $~lib/string/parseInt - f64.const 5 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 87 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1320 - i32.const 0 - call $~lib/string/parseInt - f64.const 455 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 88 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1352 - i32.const 0 - call $~lib/string/parseInt - f64.const 3855 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 89 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1384 - i32.const 0 - call $~lib/string/parseInt - f64.const 3855 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 90 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1416 - i32.const 0 - call $~lib/string/parseInt - f64.const 11 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 91 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1440 - i32.const 0 - call $~lib/string/parseInt - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 92 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1464 - i32.const 0 - call $~lib/string/parseInt - f64.const -123 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 93 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1488 - i32.const 0 - call $~lib/string/parseInt - f64.const 123 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 94 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1512 - i32.const 0 - call $~lib/string/parseInt - f64.const -12 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 95 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1544 - i32.const 0 - call $~lib/string/parseInt - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 97 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1568 - i32.const 0 - call $~lib/string/parseInt - f64.const 2 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 98 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1600 - i32.const 0 - call $~lib/number/I32.parseInt - i32.const 2147483647 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 100 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1640 - i32.const 0 - call $~lib/number/I64.parseInt - i64.const 9223372036854775807 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 101 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1192 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 104 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1240 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 105 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2128 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 106 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2152 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 107 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2176 - call $~lib/string/parseFloat - f64.const 1e-05 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 108 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2200 - call $~lib/string/parseFloat - f64.const -1e-05 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 109 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2232 - call $~lib/string/parseFloat - f64.const -3e-23 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 110 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2264 - call $~lib/string/parseFloat - f64.const 3e21 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 111 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2296 - call $~lib/string/parseFloat - f64.const 0.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 112 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2320 - call $~lib/string/parseFloat - f64.const 0.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 113 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2352 - call $~lib/string/parseFloat - f64.const 0.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 114 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2376 - call $~lib/string/parseFloat - f64.const 0.25 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 115 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2400 - call $~lib/string/parseFloat - f64.const 1e-10 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 116 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2432 - call $~lib/string/parseFloat - f64.const 1e-30 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 117 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2464 - call $~lib/string/parseFloat - f64.const 1e-323 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 118 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2496 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 119 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2528 - call $~lib/string/parseFloat - f64.const 1.e+308 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 120 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2560 - call $~lib/string/parseFloat - f64.const inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 121 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 122 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2592 - call $~lib/string/parseFloat - f64.const 0.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 125 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2624 - call $~lib/string/parseFloat - f64.const 1e-10 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 126 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2664 - call $~lib/string/parseFloat - f64.const 10 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 127 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2696 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 128 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2720 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 129 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2744 - call $~lib/string/parseFloat - f64.const 10 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 130 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2784 - call $~lib/string/parseFloat - f64.const 123456789 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 131 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2824 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 132 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2864 - call $~lib/string/parseFloat - f64.const 1e-60 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 134 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2896 - call $~lib/string/parseFloat - f64.const 1.e+60 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 135 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2920 - call $~lib/string/parseFloat - f64.const -0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 138 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2952 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 139 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2976 - call $~lib/string/parseFloat - f64.const -1.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 140 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3016 - call $~lib/string/parseFloat - f64.const 10 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 141 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3056 - call $~lib/string/parseFloat - f64.const 10 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 142 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3096 - call $~lib/string/parseFloat - f64.const 0.022 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 143 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3128 - call $~lib/string/parseFloat - f64.const 11 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 144 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3160 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 145 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3184 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 146 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3208 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 147 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3232 - call $~lib/string/parseFloat - f64.const 1.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 148 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3256 - call $~lib/string/parseFloat - f64.const -1.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 149 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3288 - call $~lib/string/parseFloat - f64.const -1.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 150 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3320 - call $~lib/string/parseFloat - f64.const -1.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 151 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3352 - call $~lib/string/parseFloat - f64.const -1.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 152 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3384 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 153 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3416 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 154 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3448 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 155 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3480 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 156 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3512 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 157 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3544 - call $~lib/string/parseFloat - f64.const 10 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 158 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3568 - call $~lib/string/parseFloat - f64.const 10 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 159 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3600 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 160 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3632 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 161 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3664 - call $~lib/string/parseFloat - f64.const 0.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 162 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3696 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 163 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3720 - call $~lib/string/parseFloat - f64.const 10 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 164 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3744 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 165 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3768 - call $~lib/string/parseFloat - f64.const 0.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 166 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3800 - call $~lib/string/parseFloat - f64.const 0.01 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 167 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3832 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 168 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3856 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 169 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3880 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 170 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3904 - call $~lib/string/parseFloat - f64.const 0.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 171 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3928 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 172 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3952 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 173 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 3976 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 174 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4000 - call $~lib/string/parseFloat - f64.const 0.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 175 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4032 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 176 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4056 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 177 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4080 - call $~lib/string/parseFloat - f64.const -0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 178 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4104 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 179 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4128 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 180 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4152 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 181 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4176 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 182 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4200 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 183 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4224 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 184 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4248 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 185 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4272 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 186 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4296 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 187 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4320 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 188 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4344 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 189 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4368 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 190 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4392 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 191 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4416 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 192 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4440 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 193 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4472 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 194 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4496 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 195 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4520 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 196 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4552 - call $~lib/string/parseFloat - f64.const 2.220446049250313e-16 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 197 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4616 - call $~lib/string/parseFloat - f64.const 1797693134862315708145274e284 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 198 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4680 - call $~lib/string/parseFloat - f64.const 5e-324 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 199 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4712 - call $~lib/string/parseFloat - f64.const 1.e+308 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 200 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4760 - call $~lib/string/parseFloat - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 201 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4904 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 202 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4936 - call $~lib/string/parseFloat - f64.const inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 203 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4968 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 204 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5000 - call $~lib/string/parseFloat - f64.const -inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 205 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5032 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 206 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5072 - call $~lib/string/parseFloat - f64.const inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 207 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5112 - call $~lib/string/parseFloat - f64.const inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 208 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5144 - call $~lib/string/parseFloat - f64.const inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 209 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5184 - call $~lib/string/parseFloat - f64.const inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 210 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5224 - call $~lib/string/parseFloat - f64.const -inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 211 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5264 - call $~lib/string/parseFloat - f64.const inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 212 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5304 - call $~lib/string/parseFloat - f64.const inf - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 213 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5344 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 214 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5368 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 215 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5400 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 216 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5432 - call $~lib/string/parseFloat - f64.const 0 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 220 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5624 - call $~lib/string/parseFloat - f64.const 1e-323 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 233 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 5816 - call $~lib/string/parseFloat - f64.const 2.225073858507202e-308 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 237 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 6008 - i32.const 6160 - call $~lib/string/String.__concat - local.tee $32 - i32.const 6312 - call $~lib/string/String.__concat - local.tee $33 - i32.const 6464 - call $~lib/string/String.__concat - local.tee $34 - i32.const 6616 - call $~lib/string/String.__concat - local.tee $35 - call $~lib/string/parseFloat - f64.const 1797693134862315708145274e284 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 240 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 6768 - call $~lib/string/parseFloat - f64.const 9.753531888799502e-104 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 258 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 6880 - call $~lib/string/parseFloat - f64.const 0.5961860348131807 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 259 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 6984 - call $~lib/string/parseFloat - f64.const 0.18150131692180388 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 260 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 7088 - call $~lib/string/parseFloat - f64.const 0.42070823575344535 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 261 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 7192 - call $~lib/string/parseFloat - f64.const 0.6654686306516261 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 262 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 7296 - call $~lib/string/parseFloat - f64.const 0.6101852922970868 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 263 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 7400 - call $~lib/string/parseFloat - f64.const 0.7696695208236968 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 264 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 7504 - call $~lib/string/parseFloat - f64.const 0.25050653222286823 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 265 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 7608 - call $~lib/string/parseFloat - f64.const 0.2740037230228005 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 266 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 7712 - call $~lib/string/parseFloat - f64.const 0.20723093500497428 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 267 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 7816 - call $~lib/string/parseFloat - f64.const 7.900280238081605 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 268 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 7920 - call $~lib/string/parseFloat - f64.const 98.22860653737297 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 269 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 8024 - call $~lib/string/parseFloat - f64.const 746.894972319037 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 270 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 8128 - call $~lib/string/parseFloat - f64.const 1630.2683202827284 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 271 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 8232 - call $~lib/string/parseFloat - f64.const 46371.68629719171 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 272 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 8336 - call $~lib/string/parseFloat - f64.const 653780.5944497711 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 273 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 8440 - call $~lib/string/parseFloat - f64.const 234632.43565024371 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 274 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 8544 - call $~lib/string/parseFloat - f64.const 97094817.16420048 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 275 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 8648 - call $~lib/string/parseFloat - f64.const 499690852.20518744 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 276 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 8752 - call $~lib/string/parseFloat - f64.const 7925201200557245595648 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 277 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 8864 - call $~lib/string/parseFloat - f64.const 6096564585983177528398588e5 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 278 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 8976 - call $~lib/string/parseFloat - f64.const 4800416117477028695992383e42 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 279 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9088 - call $~lib/string/parseFloat - f64.const 8524829079817968137287277e80 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 280 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9200 - call $~lib/string/parseFloat - f64.const 3271239291709782092398754e243 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 281 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9312 - call $~lib/string/parseFloat - call $~lib/number/isNaN - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 284 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9336 - call $~lib/string/parseFloat - f64.const 0.1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 285 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 9368 - call $~lib/string/String.__concat - local.tee $36 - call $~lib/rt/pure/__retain - local.set $37 - local.get $37 - i32.const 9392 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 289 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - i32.const 408 - call $~lib/string/String.__ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 290 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $36 - call $~lib/rt/pure/__release - local.get $37 - call $~lib/rt/pure/__release - i32.const 120 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 292 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - global.get $std/string/nullStr - call $~lib/string/String.__ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 293 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/nullStr - i32.const 120 - call $~lib/string/String.__ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 294 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 9368 - call $~lib/string/String.__ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 295 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 408 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 296 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9416 - i32.const 9440 - call $~lib/string/String.__ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 297 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9416 - i32.const 9416 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 298 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9464 - i32.const 9488 - call $~lib/string/String.__ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 299 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9512 - i32.const 9544 - call $~lib/string/String.__ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 300 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9576 - i32.const 9576 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 301 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9576 - i32.const 9608 - call $~lib/string/String.__ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 302 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9640 - i32.const 9680 - call $~lib/string/String.__ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 303 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9368 - i32.const 408 - call $~lib/string/String.__gt - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 305 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9720 - i32.const 408 - call $~lib/string/String.__gt - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 306 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9720 - i32.const 9744 - call $~lib/string/String.__gte - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 307 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9720 - i32.const 9392 - call $~lib/string/String.__gt - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 308 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9720 - i32.const 9392 - call $~lib/string/String.__lt - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 309 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9368 - global.get $std/string/nullStr - call $~lib/string/String.__lt - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 311 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/nullStr - i32.const 9368 - call $~lib/string/String.__lt - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 312 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 120 - call $~lib/string/String.__gt - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 314 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 704 - call $~lib/string/String.__lt - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 315 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 120 - call $~lib/string/String.__gte - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 316 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 704 - call $~lib/string/String.__lte - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 317 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 120 - call $~lib/string/String.__lt - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 318 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 704 - call $~lib/string/String.__gt - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 319 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 120 - call $~lib/string/String.__lt - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 320 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 120 - call $~lib/string/String.__gt - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 321 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 120 - call $~lib/string/String.__gte - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 322 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 120 - call $~lib/string/String.__lte - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 323 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 65377 - call $~lib/string/String.fromCodePoint - local.set $37 - i32.const 55296 - call $~lib/string/String.fromCodePoint - local.tee $36 - i32.const 56322 - call $~lib/string/String.fromCodePoint - local.tee $38 - call $~lib/string/String.__concat - local.tee $39 - call $~lib/rt/pure/__retain - local.set $40 - local.get $37 - local.get $40 - call $~lib/string/String.__gt - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 328 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $37 - call $~lib/rt/pure/__release - local.get $36 - call $~lib/rt/pure/__release - local.get $38 - call $~lib/rt/pure/__release - local.get $39 - call $~lib/rt/pure/__release - local.get $40 - call $~lib/rt/pure/__release - i32.const 760 - call $~lib/string/String#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 331 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 100 - call $~lib/string/String#repeat - local.tee $40 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 333 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 0 - call $~lib/string/String#repeat - local.tee $39 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 334 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 1 - call $~lib/string/String#repeat - local.tee $38 - i32.const 408 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 335 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 2 - call $~lib/string/String#repeat - local.tee $36 - i32.const 9744 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 336 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 3 - call $~lib/string/String#repeat - local.tee $37 - i32.const 9816 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 337 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9392 - i32.const 4 - call $~lib/string/String#repeat - local.tee $41 - i32.const 9840 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 338 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 5 - call $~lib/string/String#repeat - local.tee $42 - i32.const 9872 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 339 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 6 - call $~lib/string/String#repeat - local.tee $43 - i32.const 9904 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 340 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 408 - i32.const 7 - call $~lib/string/String#repeat - local.tee $44 - i32.const 9936 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 341 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 120 - i32.const 120 - call $~lib/string/String#replace - local.tee $45 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 343 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 120 - i32.const 4152 - call $~lib/string/String#replace - local.tee $46 - i32.const 4152 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 344 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4152 - i32.const 4152 - i32.const 120 - call $~lib/string/String#replace - local.tee $47 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 345 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4152 - i32.const 120 - i32.const 120 - call $~lib/string/String#replace - local.tee $48 - i32.const 4152 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 346 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 4176 - i32.const 4152 - call $~lib/string/String#replace - local.tee $49 - i32.const 704 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 347 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 704 - i32.const 4152 - call $~lib/string/String#replace - local.tee $50 - i32.const 4152 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 348 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 9968 - i32.const 4152 - call $~lib/string/String#replace - local.tee $51 - i32.const 704 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 349 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 9392 - i32.const 9392 - call $~lib/string/String#replace - local.tee $52 - i32.const 704 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 350 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9992 - i32.const 4176 - i32.const 4152 - call $~lib/string/String#replace - local.tee $53 - i32.const 10024 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 351 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 120 - i32.const 4152 - call $~lib/string/String#replace - local.tee $54 - i32.const 10056 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 352 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 10080 - i32.const 10104 - i32.const 4152 - call $~lib/string/String#replace - local.tee $55 - i32.const 10056 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 353 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 10128 - i32.const 10152 - call $~lib/string/String#replace - local.tee $56 - i32.const 10176 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 354 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 10128 - i32.const 120 - call $~lib/string/String#replace - local.tee $57 - i32.const 9392 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 355 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 120 - i32.const 704 - call $~lib/string/String#replaceAll - local.tee $58 - i32.const 704 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 357 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 4176 - i32.const 4152 - call $~lib/string/String#replaceAll - local.tee $59 - i32.const 704 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 358 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 880 - i32.const 704 - i32.const 4152 - call $~lib/string/String#replaceAll - local.tee $60 - i32.const 10152 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 360 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 10200 - i32.const 704 - i32.const 4152 - call $~lib/string/String#replaceAll - local.tee $61 - i32.const 10240 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 361 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 880 - i32.const 9392 - i32.const 9392 - call $~lib/string/String#replaceAll - local.tee $62 - i32.const 880 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 362 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 10264 - i32.const 408 - i32.const 10240 - call $~lib/string/String#replaceAll - local.tee $63 - i32.const 10296 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 363 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 880 - i32.const 9392 - i32.const 10152 - call $~lib/string/String#replaceAll - local.tee $64 - i32.const 10344 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 364 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 10376 - i32.const 10400 - i32.const 10152 - call $~lib/string/String#replaceAll - local.tee $65 - i32.const 10424 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 365 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 9968 - i32.const 4152 - call $~lib/string/String#replaceAll - local.tee $66 - i32.const 704 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 366 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9968 - i32.const 10448 - i32.const 10152 - call $~lib/string/String#replaceAll - local.tee $67 - i32.const 9968 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 367 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 10472 - i32.const 4152 - call $~lib/string/String#replaceAll - local.tee $68 - i32.const 10496 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 368 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9392 - i32.const 9392 - i32.const 4152 - call $~lib/string/String#replaceAll - local.tee $69 - i32.const 4152 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 369 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 9992 - i32.const 4176 - i32.const 4152 - call $~lib/string/String#replaceAll - local.tee $70 - i32.const 10520 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 370 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 120 - i32.const 120 - call $~lib/string/String#replaceAll - local.tee $71 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 372 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 120 - i32.const 4152 - call $~lib/string/String#replaceAll - local.tee $72 - i32.const 4152 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 373 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4152 - i32.const 4152 - i32.const 120 - call $~lib/string/String#replaceAll - local.tee $73 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 374 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 4152 - i32.const 120 - i32.const 120 - call $~lib/string/String#replaceAll - local.tee $74 - i32.const 4152 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 375 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 704 - i32.const 4176 - call $~lib/string/String#replaceAll - local.tee $75 - i32.const 4176 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 376 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 10552 - i32.const 4176 - call $~lib/string/String#replaceAll - local.tee $76 - i32.const 704 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 377 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 120 - i32.const 4152 - call $~lib/string/String#replaceAll - local.tee $77 - i32.const 10576 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 378 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 120 - i32.const 120 - call $~lib/string/String#replaceAll - local.tee $78 - i32.const 704 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 379 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 10608 - local.tee $79 - global.get $std/string/str - local.tee $80 - i32.ne - if - local.get $79 - call $~lib/rt/pure/__retain - drop - local.get $80 - call $~lib/rt/pure/__release - end - local.get $79 - global.set $std/string/str - global.get $std/string/str - i32.const 0 - i32.const 2147483647 - call $~lib/string/String#slice - local.tee $79 - i32.const 10608 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 383 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const -1 - i32.const 2147483647 - call $~lib/string/String#slice - local.tee $80 - i32.const 10656 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 384 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const -5 - i32.const 2147483647 - call $~lib/string/String#slice - local.tee $81 - i32.const 10680 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 385 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 2 - i32.const 7 - call $~lib/string/String#slice - local.tee $82 - i32.const 10712 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 386 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const -11 - i32.const -6 - call $~lib/string/String#slice - local.tee $83 - i32.const 10744 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 387 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 4 - i32.const 3 - call $~lib/string/String#slice - local.tee $84 - i32.const 120 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 388 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - i32.const 0 - i32.const -1 - call $~lib/string/String#slice - local.tee $85 - i32.const 10776 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 389 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.set $86 - i32.const 120 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/string/String#split - local.set $87 - local.get $86 - call $~lib/rt/pure/__release - local.get $87 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 1 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 120 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 395 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 120 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/string/String#split - local.set $88 - local.get $86 - call $~lib/rt/pure/__release - local.get $88 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 397 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 120 - i32.const 944 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/string/String#split - local.set $87 - local.get $86 - call $~lib/rt/pure/__release - local.get $87 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 1 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 120 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 399 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 10984 - i32.const 4296 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/string/String#split - local.set $88 - local.get $86 - call $~lib/rt/pure/__release - local.get $88 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 1 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 10984 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 401 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 10984 - i32.const 944 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/string/String#split - local.set $87 - local.get $86 - call $~lib/rt/pure/__release - local.get $87 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 3 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 408 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 1 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 9368 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 2 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 10128 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 403 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 11016 - i32.const 11048 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/string/String#split - local.set $88 - local.get $86 - call $~lib/rt/pure/__release - local.get $88 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 3 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 408 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 1 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 9368 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 2 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 10128 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 405 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 11072 - i32.const 944 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/string/String#split - local.set $87 - local.get $86 - call $~lib/rt/pure/__release - local.get $87 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 4 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 408 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 1 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 9368 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 2 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 120 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 3 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 10128 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 407 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 11104 - i32.const 944 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/string/String#split - local.set $88 - local.get $86 - call $~lib/rt/pure/__release - local.get $88 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 4 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 120 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 1 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 408 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 2 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 9368 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 3 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 10128 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 409 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 11136 - i32.const 944 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/string/String#split - local.set $87 - local.get $86 - call $~lib/rt/pure/__release - local.get $87 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 4 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 408 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 1 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 9368 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 2 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 10128 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 3 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 120 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 411 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 120 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/string/String#split - local.set $88 - local.get $86 - call $~lib/rt/pure/__release - local.get $88 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 3 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 408 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 1 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 9368 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 2 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 10128 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 413 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 120 - i32.const 0 - call $~lib/string/String#split - local.set $87 - local.get $86 - call $~lib/rt/pure/__release - local.get $87 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 120 - i32.const 1 - call $~lib/string/String#split - local.set $88 - local.get $86 - call $~lib/rt/pure/__release - local.get $88 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 1 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 408 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 417 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 10984 - i32.const 944 - i32.const 1 - call $~lib/string/String#split - local.set $87 - local.get $86 - call $~lib/rt/pure/__release - local.get $87 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 1 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 408 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 419 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 120 - i32.const 4 - call $~lib/string/String#split - local.set $88 - local.get $86 - call $~lib/rt/pure/__release - local.get $88 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 3 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 408 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 1 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 9368 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 2 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 10128 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 421 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 704 - i32.const 120 - i32.const -1 - call $~lib/string/String#split - local.set $87 - local.get $86 - call $~lib/rt/pure/__release - local.get $87 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 3 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 408 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 1 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 9368 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 2 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $87 - i32.const 10128 - call $~lib/string/String.__eq - local.set $88 - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 423 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 10984 - i32.const 944 - i32.const -1 - call $~lib/string/String#split - local.set $88 - local.get $86 - call $~lib/rt/pure/__release - local.get $88 - local.set $86 - local.get $86 - call $~lib/array/Array<~lib/string/String>#get:length - i32.const 3 - i32.eq - if (result i32) - local.get $86 - i32.const 0 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 408 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 1 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 9368 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - if (result i32) - local.get $86 - i32.const 2 - call $~lib/array/Array<~lib/string/String>#__get - local.tee $88 - i32.const 10128 - call $~lib/string/String.__eq - local.set $87 - local.get $88 - call $~lib/rt/pure/__release - local.get $87 - else - i32.const 0 - end - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 425 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $86 - call $~lib/rt/pure/__release - i32.const 0 - call $~lib/util/number/itoa32 - local.tee $86 - i32.const 1192 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 428 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - call $~lib/util/number/itoa32 - local.tee $88 - i32.const 1240 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 429 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 8 - call $~lib/util/number/itoa32 - local.tee $87 - i32.const 11616 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 430 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - call $~lib/util/number/itoa32 - local.tee $89 - i32.const 11640 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 431 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 123 - call $~lib/util/number/itoa32 - local.tee $90 - i32.const 760 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 432 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const -1000 - call $~lib/util/number/itoa32 - local.tee $91 - i32.const 11664 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 433 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1234 - call $~lib/util/number/itoa32 - local.tee $92 - i32.const 11696 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 434 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 12345 - call $~lib/util/number/itoa32 - local.tee $93 - i32.const 11720 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 435 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 123456 - call $~lib/util/number/itoa32 - local.tee $94 - i32.const 11752 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 436 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1111111 - call $~lib/util/number/itoa32 - local.tee $95 - i32.const 11784 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 437 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1234567 - call $~lib/util/number/itoa32 - local.tee $96 - i32.const 11816 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 438 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 12345678 - call $~lib/util/number/itoa32 - local.tee $97 - i32.const 11848 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 439 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 123456789 - call $~lib/util/number/itoa32 - local.tee $98 - i32.const 11880 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 440 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2147483646 - call $~lib/util/number/itoa32 - local.tee $99 - i32.const 11920 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 441 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2147483647 - call $~lib/util/number/itoa32 - local.tee $100 - i32.const 11960 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 442 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const -2147483648 - call $~lib/util/number/itoa32 - local.tee $101 - i32.const 12000 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 443 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - call $~lib/util/number/itoa32 - local.tee $102 - i32.const 12040 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 444 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - call $~lib/util/number/utoa32 - local.tee $103 - i32.const 1192 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 446 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 1000 - call $~lib/util/number/utoa32 - local.tee $104 - i32.const 12064 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 447 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const 2147483647 - call $~lib/util/number/utoa32 - local.tee $105 - i32.const 11960 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 448 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const -2147483648 - call $~lib/util/number/utoa32 - local.tee $106 - i32.const 12088 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 449 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i32.const -1 - call $~lib/util/number/utoa32 - local.tee $107 - i32.const 12128 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 450 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 0 - call $~lib/util/number/utoa64 - local.tee $108 - i32.const 1192 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 452 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 12 - call $~lib/util/number/utoa64 - local.tee $109 - i32.const 11640 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 453 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 123 - call $~lib/util/number/utoa64 - local.tee $110 - i32.const 760 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 454 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 1234 - call $~lib/util/number/utoa64 - local.tee $111 - i32.const 11696 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 455 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 12345 - call $~lib/util/number/utoa64 - local.tee $112 - i32.const 11720 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 456 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 123456 - call $~lib/util/number/utoa64 - local.tee $113 - i32.const 11752 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 457 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 1234567 - call $~lib/util/number/utoa64 - local.tee $114 - i32.const 11816 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 458 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 99999999 - call $~lib/util/number/utoa64 - local.tee $115 - i32.const 12168 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 459 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 100000000 - call $~lib/util/number/utoa64 - local.tee $116 - i32.const 12200 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 460 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 4294967295 - call $~lib/util/number/utoa64 - local.tee $117 - i32.const 12128 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 461 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 4294967297 - call $~lib/util/number/utoa64 - local.tee $118 - i32.const 12240 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 462 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 68719476735 - call $~lib/util/number/utoa64 - local.tee $119 - i32.const 12280 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 463 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 868719476735 - call $~lib/util/number/utoa64 - local.tee $120 - i32.const 12320 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 464 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 8687194767350 - call $~lib/util/number/utoa64 - local.tee $121 - i32.const 12360 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 465 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 86871947673501 - call $~lib/util/number/utoa64 - local.tee $122 - i32.const 12408 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 466 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 999868719476735 - call $~lib/util/number/utoa64 - local.tee $123 - i32.const 12456 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 467 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 9999868719476735 - call $~lib/util/number/utoa64 - local.tee $124 - i32.const 12504 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 468 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 19999868719476735 - call $~lib/util/number/utoa64 - local.tee $125 - i32.const 12552 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 469 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 129999868719476735 - call $~lib/util/number/utoa64 - local.tee $126 - i32.const 12608 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 470 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 1239999868719476735 - call $~lib/util/number/utoa64 - local.tee $127 - i32.const 12664 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 471 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -1 - call $~lib/util/number/utoa64 - local.tee $128 - i32.const 12720 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 472 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 0 - call $~lib/util/number/itoa64 - local.tee $129 - i32.const 1192 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 474 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -1234 - call $~lib/util/number/itoa64 - local.tee $130 - i32.const 12776 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 475 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 4294967295 - call $~lib/util/number/itoa64 - local.tee $131 - i32.const 12128 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 476 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 4294967297 - call $~lib/util/number/itoa64 - local.tee $132 - i32.const 12240 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 477 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -4294967295 - call $~lib/util/number/itoa64 - local.tee $133 - i32.const 12808 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 478 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 68719476735 - call $~lib/util/number/itoa64 - local.tee $134 - i32.const 12280 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 479 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -68719476735 - call $~lib/util/number/itoa64 - local.tee $135 - i32.const 12848 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 480 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -868719476735 - call $~lib/util/number/itoa64 - local.tee $136 - i32.const 12888 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 481 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -999868719476735 - call $~lib/util/number/itoa64 - local.tee $137 - i32.const 12936 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 482 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -19999868719476735 - call $~lib/util/number/itoa64 - local.tee $138 - i32.const 12984 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 483 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const 9223372036854775807 - call $~lib/util/number/itoa64 - local.tee $139 - i32.const 13040 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 484 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - i64.const -9223372036854775808 - call $~lib/util/number/itoa64 - local.tee $140 - i32.const 13096 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 485 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - call $~lib/util/number/dtoa - local.tee $141 - i32.const 13152 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 488 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0 - call $~lib/util/number/dtoa - local.tee $142 - i32.const 13152 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 489 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const nan:0x8000000000000 - call $~lib/util/number/dtoa - local.tee $143 - i32.const 4344 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 490 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - call $~lib/util/number/dtoa - local.tee $144 - i32.const 13176 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 491 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - call $~lib/util/number/dtoa - local.tee $145 - i32.const 5224 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 492 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.220446049250313e-16 - call $~lib/util/number/dtoa - local.tee $146 - i32.const 4552 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 493 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -2.220446049250313e-16 - call $~lib/util/number/dtoa - local.tee $147 - i32.const 14264 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 494 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1797693134862315708145274e284 - call $~lib/util/number/dtoa - local.tee $148 - i32.const 4616 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 495 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1797693134862315708145274e284 - call $~lib/util/number/dtoa - local.tee $149 - i32.const 14328 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 496 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4185580496821356722454785e274 - call $~lib/util/number/dtoa - local.tee $150 - i32.const 14392 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 497 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.2250738585072014e-308 - call $~lib/util/number/dtoa - local.tee $151 - i32.const 14456 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 498 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4.940656e-318 - call $~lib/util/number/dtoa - local.tee $152 - i32.const 14520 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 501 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9060801153433600 - call $~lib/util/number/dtoa - local.tee $153 - i32.const 14568 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 502 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4708356024711512064 - call $~lib/util/number/dtoa - local.tee $154 - i32.const 14624 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 503 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 9409340012568248320 - call $~lib/util/number/dtoa - local.tee $155 - i32.const 14688 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 504 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 5e-324 - call $~lib/util/number/dtoa - local.tee $156 - i32.const 4680 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 505 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - call $~lib/util/number/dtoa - local.tee $157 - i32.const 14752 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 511 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.1 - call $~lib/util/number/dtoa - local.tee $158 - i32.const 2352 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 512 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1 - call $~lib/util/number/dtoa - local.tee $159 - i32.const 14776 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 513 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -0.1 - call $~lib/util/number/dtoa - local.tee $160 - i32.const 14800 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 514 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1e6 - call $~lib/util/number/dtoa - local.tee $161 - i32.const 14824 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 516 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1e-06 - call $~lib/util/number/dtoa - local.tee $162 - i32.const 14864 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 517 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1e6 - call $~lib/util/number/dtoa - local.tee $163 - i32.const 14896 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 518 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1e-06 - call $~lib/util/number/dtoa - local.tee $164 - i32.const 14936 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 519 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1e7 - call $~lib/util/number/dtoa - local.tee $165 - i32.const 14976 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 520 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1e-07 - call $~lib/util/number/dtoa - local.tee $166 - i32.const 15016 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 521 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.e+308 - call $~lib/util/number/dtoa - local.tee $167 - i32.const 2528 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 523 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1.e+308 - call $~lib/util/number/dtoa - local.tee $168 - i32.const 15040 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 524 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const inf - call $~lib/util/number/dtoa - local.tee $169 - i32.const 13176 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 525 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -inf - call $~lib/util/number/dtoa - local.tee $170 - i32.const 5224 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 526 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1e-308 - call $~lib/util/number/dtoa - local.tee $171 - i32.const 15072 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 527 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1e-308 - call $~lib/util/number/dtoa - local.tee $172 - i32.const 15104 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 528 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1e-323 - call $~lib/util/number/dtoa - local.tee $173 - i32.const 15136 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 529 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const -1e-323 - call $~lib/util/number/dtoa - local.tee $174 - i32.const 15168 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 530 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0 - call $~lib/util/number/dtoa - local.tee $175 - i32.const 13152 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 531 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 4294967272 - call $~lib/util/number/dtoa - local.tee $176 - i32.const 15200 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 533 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.2312145673456234e-08 - call $~lib/util/number/dtoa - local.tee $177 - i32.const 15240 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 534 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 555555555.5555556 - call $~lib/util/number/dtoa - local.tee $178 - i32.const 15304 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 536 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.9999999999999999 - call $~lib/util/number/dtoa - local.tee $179 - i32.const 15360 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 537 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1 - call $~lib/util/number/dtoa - local.tee $180 - i32.const 14752 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 538 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 12.34 - call $~lib/util/number/dtoa - local.tee $181 - i32.const 15416 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 539 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.3333333333333333 - call $~lib/util/number/dtoa - local.tee $182 - i32.const 15448 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 541 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1234e17 - call $~lib/util/number/dtoa - local.tee $183 - i32.const 15504 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 542 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1234e18 - call $~lib/util/number/dtoa - local.tee $184 - i32.const 15568 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 543 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 2.71828 - call $~lib/util/number/dtoa - local.tee $185 - i32.const 15608 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 544 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.0271828 - call $~lib/util/number/dtoa - local.tee $186 - i32.const 15640 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 545 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 271.828 - call $~lib/util/number/dtoa - local.tee $187 - i32.const 15680 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 546 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1e+128 - call $~lib/util/number/dtoa - local.tee $188 - i32.const 15712 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 547 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 1.1e-64 - call $~lib/util/number/dtoa - local.tee $189 - i32.const 15744 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 548 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - f64.const 0.000035689 - call $~lib/util/number/dtoa - local.tee $190 - i32.const 15776 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 72 - i32.const 549 - i32.const 0 - call $~lib/builtins/abort - unreachable - end - global.get $std/string/str - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - local.get $10 - call $~lib/rt/pure/__release - local.get $11 - call $~lib/rt/pure/__release - local.get $12 - call $~lib/rt/pure/__release - local.get $13 - call $~lib/rt/pure/__release - local.get $14 - call $~lib/rt/pure/__release - local.get $15 - call $~lib/rt/pure/__release - local.get $16 - call $~lib/rt/pure/__release - local.get $17 - call $~lib/rt/pure/__release - local.get $18 - call $~lib/rt/pure/__release - local.get $19 - call $~lib/rt/pure/__release - local.get $20 - call $~lib/rt/pure/__release - local.get $21 - call $~lib/rt/pure/__release - local.get $22 - call $~lib/rt/pure/__release - local.get $23 - call $~lib/rt/pure/__release - local.get $24 - call $~lib/rt/pure/__release - local.get $25 - call $~lib/rt/pure/__release - local.get $26 - call $~lib/rt/pure/__release - local.get $27 - call $~lib/rt/pure/__release - local.get $28 - call $~lib/rt/pure/__release - local.get $29 - call $~lib/rt/pure/__release - local.get $30 - call $~lib/rt/pure/__release - local.get $31 - call $~lib/rt/pure/__release - local.get $32 - call $~lib/rt/pure/__release - local.get $33 - call $~lib/rt/pure/__release - local.get $34 - call $~lib/rt/pure/__release - local.get $35 - call $~lib/rt/pure/__release - local.get $36 - call $~lib/rt/pure/__release - local.get $37 - call $~lib/rt/pure/__release - local.get $38 - call $~lib/rt/pure/__release - local.get $39 - call $~lib/rt/pure/__release - local.get $40 - call $~lib/rt/pure/__release - local.get $41 - call $~lib/rt/pure/__release - local.get $42 - call $~lib/rt/pure/__release - local.get $43 - call $~lib/rt/pure/__release - local.get $44 - call $~lib/rt/pure/__release - local.get $45 - call $~lib/rt/pure/__release - local.get $46 - call $~lib/rt/pure/__release - local.get $47 - call $~lib/rt/pure/__release - local.get $48 - call $~lib/rt/pure/__release - local.get $49 - call $~lib/rt/pure/__release - local.get $50 - call $~lib/rt/pure/__release - local.get $51 - call $~lib/rt/pure/__release - local.get $52 - call $~lib/rt/pure/__release - local.get $53 - call $~lib/rt/pure/__release - local.get $54 - call $~lib/rt/pure/__release - local.get $55 - call $~lib/rt/pure/__release - local.get $56 - call $~lib/rt/pure/__release - local.get $57 - call $~lib/rt/pure/__release - local.get $58 - call $~lib/rt/pure/__release - local.get $59 - call $~lib/rt/pure/__release - local.get $60 - call $~lib/rt/pure/__release - local.get $61 - call $~lib/rt/pure/__release - local.get $62 - call $~lib/rt/pure/__release - local.get $63 - call $~lib/rt/pure/__release - local.get $64 - call $~lib/rt/pure/__release - local.get $65 - call $~lib/rt/pure/__release - local.get $66 - call $~lib/rt/pure/__release - local.get $67 - call $~lib/rt/pure/__release - local.get $68 - call $~lib/rt/pure/__release - local.get $69 - call $~lib/rt/pure/__release - local.get $70 - call $~lib/rt/pure/__release - local.get $71 - call $~lib/rt/pure/__release - local.get $72 - call $~lib/rt/pure/__release - local.get $73 - call $~lib/rt/pure/__release - local.get $74 - call $~lib/rt/pure/__release - local.get $75 - call $~lib/rt/pure/__release - local.get $76 - call $~lib/rt/pure/__release - local.get $77 - call $~lib/rt/pure/__release - local.get $78 - call $~lib/rt/pure/__release - local.get $79 - call $~lib/rt/pure/__release - local.get $80 - call $~lib/rt/pure/__release - local.get $81 - call $~lib/rt/pure/__release - local.get $82 - call $~lib/rt/pure/__release - local.get $83 - call $~lib/rt/pure/__release - local.get $84 - call $~lib/rt/pure/__release - local.get $85 - call $~lib/rt/pure/__release - local.get $86 - call $~lib/rt/pure/__release - local.get $87 - call $~lib/rt/pure/__release - local.get $88 - call $~lib/rt/pure/__release - local.get $89 - call $~lib/rt/pure/__release - local.get $90 - call $~lib/rt/pure/__release - local.get $91 - call $~lib/rt/pure/__release - local.get $92 - call $~lib/rt/pure/__release - local.get $93 - call $~lib/rt/pure/__release - local.get $94 - call $~lib/rt/pure/__release - local.get $95 - call $~lib/rt/pure/__release - local.get $96 - call $~lib/rt/pure/__release - local.get $97 - call $~lib/rt/pure/__release - local.get $98 - call $~lib/rt/pure/__release - local.get $99 - call $~lib/rt/pure/__release - local.get $100 - call $~lib/rt/pure/__release - local.get $101 - call $~lib/rt/pure/__release - local.get $102 - call $~lib/rt/pure/__release - local.get $103 - call $~lib/rt/pure/__release - local.get $104 - call $~lib/rt/pure/__release - local.get $105 - call $~lib/rt/pure/__release - local.get $106 - call $~lib/rt/pure/__release - local.get $107 - call $~lib/rt/pure/__release - local.get $108 - call $~lib/rt/pure/__release - local.get $109 - call $~lib/rt/pure/__release - local.get $110 - call $~lib/rt/pure/__release - local.get $111 - call $~lib/rt/pure/__release - local.get $112 - call $~lib/rt/pure/__release - local.get $113 - call $~lib/rt/pure/__release - local.get $114 - call $~lib/rt/pure/__release - local.get $115 - call $~lib/rt/pure/__release - local.get $116 - call $~lib/rt/pure/__release - local.get $117 - call $~lib/rt/pure/__release - local.get $118 - call $~lib/rt/pure/__release - local.get $119 - call $~lib/rt/pure/__release - local.get $120 - call $~lib/rt/pure/__release - local.get $121 - call $~lib/rt/pure/__release - local.get $122 - call $~lib/rt/pure/__release - local.get $123 - call $~lib/rt/pure/__release - local.get $124 - call $~lib/rt/pure/__release - local.get $125 - call $~lib/rt/pure/__release - local.get $126 - call $~lib/rt/pure/__release - local.get $127 - call $~lib/rt/pure/__release - local.get $128 - call $~lib/rt/pure/__release - local.get $129 - call $~lib/rt/pure/__release - local.get $130 - call $~lib/rt/pure/__release - local.get $131 - call $~lib/rt/pure/__release - local.get $132 - call $~lib/rt/pure/__release - local.get $133 - call $~lib/rt/pure/__release - local.get $134 - call $~lib/rt/pure/__release - local.get $135 - call $~lib/rt/pure/__release - local.get $136 - call $~lib/rt/pure/__release - local.get $137 - call $~lib/rt/pure/__release - local.get $138 - call $~lib/rt/pure/__release - local.get $139 - call $~lib/rt/pure/__release - local.get $140 - call $~lib/rt/pure/__release - local.get $141 - call $~lib/rt/pure/__release - local.get $142 - call $~lib/rt/pure/__release - local.get $143 - call $~lib/rt/pure/__release - local.get $144 - call $~lib/rt/pure/__release - local.get $145 - call $~lib/rt/pure/__release - local.get $146 - call $~lib/rt/pure/__release - local.get $147 - call $~lib/rt/pure/__release - local.get $148 - call $~lib/rt/pure/__release - local.get $149 - call $~lib/rt/pure/__release - local.get $150 - call $~lib/rt/pure/__release - local.get $151 - call $~lib/rt/pure/__release - local.get $152 - call $~lib/rt/pure/__release - local.get $153 - call $~lib/rt/pure/__release - local.get $154 - call $~lib/rt/pure/__release - local.get $155 - call $~lib/rt/pure/__release - local.get $156 - call $~lib/rt/pure/__release - local.get $157 - call $~lib/rt/pure/__release - local.get $158 - call $~lib/rt/pure/__release - local.get $159 - call $~lib/rt/pure/__release - local.get $160 - call $~lib/rt/pure/__release - local.get $161 - call $~lib/rt/pure/__release - local.get $162 - call $~lib/rt/pure/__release - local.get $163 - call $~lib/rt/pure/__release - local.get $164 - call $~lib/rt/pure/__release - local.get $165 - call $~lib/rt/pure/__release - local.get $166 - call $~lib/rt/pure/__release - local.get $167 - call $~lib/rt/pure/__release - local.get $168 - call $~lib/rt/pure/__release - local.get $169 - call $~lib/rt/pure/__release - local.get $170 - call $~lib/rt/pure/__release - local.get $171 - call $~lib/rt/pure/__release - local.get $172 - call $~lib/rt/pure/__release - local.get $173 - call $~lib/rt/pure/__release - local.get $174 - call $~lib/rt/pure/__release - local.get $175 - call $~lib/rt/pure/__release - local.get $176 - call $~lib/rt/pure/__release - local.get $177 - call $~lib/rt/pure/__release - local.get $178 - call $~lib/rt/pure/__release - local.get $179 - call $~lib/rt/pure/__release - local.get $180 - call $~lib/rt/pure/__release - local.get $181 - call $~lib/rt/pure/__release - local.get $182 - call $~lib/rt/pure/__release - local.get $183 - call $~lib/rt/pure/__release - local.get $184 - call $~lib/rt/pure/__release - local.get $185 - call $~lib/rt/pure/__release - local.get $186 - call $~lib/rt/pure/__release - local.get $187 - call $~lib/rt/pure/__release - local.get $188 - call $~lib/rt/pure/__release - local.get $189 - call $~lib/rt/pure/__release - local.get $190 - call $~lib/rt/pure/__release - ) - (func $std/string/getString (; 101 ;) (type $FUNCSIG$i) (result i32) - global.get $std/string/str - call $~lib/rt/pure/__retain - ) - (func $start (; 102 ;) (type $FUNCSIG$v) - global.get $~lib/started - if - return - else - i32.const 1 - global.set $~lib/started - end - call $start:std/string - ) - (func $~lib/array/Array#__visit_impl (; 103 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/rt/pure/__visit (; 104 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.lt_u - if - return - end - local.get $0 - i32.const 16 - i32.sub - local.set $2 - block $break|0 - block $case5|0 - block $case4|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $1 - local.set $3 - local.get $3 - i32.const 1 - i32.eq - br_if $case0|0 - local.get $3 - i32.const 2 - i32.eq - br_if $case1|0 - local.get $3 - i32.const 3 - i32.eq - br_if $case2|0 - local.get $3 - i32.const 4 - i32.eq - br_if $case3|0 - local.get $3 - i32.const 5 - i32.eq - br_if $case4|0 - br $case5|0 - end - local.get $2 - call $~lib/rt/pure/decrement - br $break|0 - end - local.get $2 - i32.load offset=4 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - i32.eqz - if - i32.const 0 - i32.const 136 - i32.const 75 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $2 - i32.load offset=4 - i32.const 1 - i32.sub - i32.store offset=4 - local.get $2 - call $~lib/rt/pure/markGray - br $break|0 - end - local.get $2 - call $~lib/rt/pure/scan - br $break|0 - end - local.get $2 - i32.load offset=4 - local.set $3 - local.get $3 - i32.const -268435456 - i32.and - local.get $3 - i32.const 1 - i32.add - i32.const -268435456 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 136 - i32.const 86 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $3 - i32.const 1 - i32.add - i32.store offset=4 - local.get $3 - i32.const 1879048192 - i32.and - i32.const 0 - i32.ne - if - local.get $2 - call $~lib/rt/pure/scanBlack - end - br $break|0 - end - local.get $2 - call $~lib/rt/pure/collectWhite - br $break|0 - end - i32.const 0 - i32.eqz - if - i32.const 0 - i32.const 136 - i32.const 97 - i32.const 24 - call $~lib/builtins/abort - unreachable - end - end - ) - (func $~lib/array/Array<~lib/string/String>#__visit_impl (; 105 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - i32.load offset=4 - local.set $2 - local.get $2 - local.get $0 - i32.load offset=12 - i32.const 2 - i32.shl - i32.add - local.set $3 - block $break|0 - loop $continue|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - if - local.get $4 - local.get $1 - call $~lib/rt/pure/__visit - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $continue|0 - end - unreachable - end - ) - (func $~lib/array/Array#__visit_impl (; 106 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 107 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 108 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 109 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/rt/__visit_members (; 110 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - block $block$4$break - block $switch$1$default - block $switch$1$case$10 - block $switch$1$case$9 - block $switch$1$case$8 - block $switch$1$case$7 - block $switch$1$case$6 - block $switch$1$case$5 - block $switch$1$case$4 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$6 $switch$1$case$7 $switch$1$case$8 $switch$1$case$9 $switch$1$case$10 $switch$1$default - end - return - end - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/string/String>#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - unreachable - end - local.get $0 - i32.load - local.tee $2 - if - local.get $2 - local.get $1 - call $~lib/rt/pure/__visit - end - return - ) - (func $null (; 111 ;) (type $FUNCSIG$v) - ) -) diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index e51df11398..6e0754e1f8 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -369,7 +369,7 @@ if i32.const 96 i32.const 144 - i32.const 57 + i32.const 52 i32.const 42 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/symbol.untouched.wat b/tests/compiler/std/symbol.untouched.wat index adfcf7687d..c732d2afa0 100644 --- a/tests/compiler/std/symbol.untouched.wat +++ b/tests/compiler/std/symbol.untouched.wat @@ -467,7 +467,7 @@ if i32.const 96 i32.const 144 - i32.const 57 + i32.const 52 i32.const 42 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/typedarray.untouched.wat b/tests/compiler/std/typedarray.untouched.wat index d769eac0f5..e69de29bb2 100644 --- a/tests/compiler/std/typedarray.untouched.wat +++ b/tests/compiler/std/typedarray.untouched.wat @@ -1,43054 +0,0 @@ -(module - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $FUNCSIG$v (func)) - (type $FUNCSIG$vii (func (param i32 i32))) - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$viid (func (param i32 i32 f64))) - (type $FUNCSIG$idd (func (param f64 f64) (result i32))) - (type $FUNCSIG$dii (func (param i32 i32) (result f64))) - (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$viij (func (param i32 i32 i64))) - (type $FUNCSIG$jjjii (func (param i64 i64 i32 i32) (result i64))) - (type $FUNCSIG$jiij (func (param i32 i32 i64) (result i64))) - (type $FUNCSIG$viif (func (param i32 i32 f32))) - (type $FUNCSIG$fffii (func (param f32 f32 i32 i32) (result f32))) - (type $FUNCSIG$fiif (func (param i32 i32 f32) (result f32))) - (type $FUNCSIG$dddii (func (param f64 f64 i32 i32) (result f64))) - (type $FUNCSIG$diid (func (param i32 i32 f64) (result f64))) - (type $FUNCSIG$jjii (func (param i64 i32 i32) (result i64))) - (type $FUNCSIG$jii (func (param i32 i32) (result i64))) - (type $FUNCSIG$ffii (func (param f32 i32 i32) (result f32))) - (type $FUNCSIG$fii (func (param i32 i32) (result f32))) - (type $FUNCSIG$ddii (func (param f64 i32 i32) (result f64))) - (type $FUNCSIG$ijii (func (param i64 i32 i32) (result i32))) - (type $FUNCSIG$ifii (func (param f32 i32 i32) (result i32))) - (type $FUNCSIG$idii (func (param f64 i32 i32) (result i32))) - (type $FUNCSIG$fff (func (param f32 f32) (result f32))) - (type $FUNCSIG$if (func (param f32) (result i32))) - (type $FUNCSIG$ddd (func (param f64 f64) (result f64))) - (type $FUNCSIG$id (func (param f64) (result i32))) - (type $FUNCSIG$vjii (func (param i64 i32 i32))) - (type $FUNCSIG$vfii (func (param f32 i32 i32))) - (type $FUNCSIG$vdii (func (param f64 i32 i32))) - (type $FUNCSIG$iiji (func (param i32 i64 i32) (result i32))) - (type $FUNCSIG$iifi (func (param i32 f32 i32) (result i32))) - (type $FUNCSIG$iidi (func (param i32 f64 i32) (result i32))) - (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) - (type $FUNCSIG$ij (func (param i64) (result i32))) - (type $FUNCSIG$viji (func (param i32 i64 i32))) - (type $FUNCSIG$iiij (func (param i32 i32 i64) (result i32))) - (type $FUNCSIG$iid (func (param i32 f64) (result i32))) - (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) - (type $FUNCSIG$iiid (func (param i32 i32 f64) (result i32))) - (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) - (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32))) - (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32))) - (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32))) - (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32))) - (memory $0 1) - (data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") - (data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") - (data (i32.const 112) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") - (data (i32.const 160) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") - (data (i32.const 216) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") - (data (i32.const 264) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") - (data (i32.const 320) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") - (data (i32.const 360) "\"\00\00\00\01\00\00\00\01\00\00\00\"\00\00\00s\00t\00d\00/\00t\00y\00p\00e\00d\00a\00r\00r\00a\00y\00.\00t\00s\00") - (data (i32.const 416) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00~\00l\00i\00b\00/\00t\00y\00p\00e\00d\00a\00r\00r\00a\00y\00.\00t\00s\00") - (data (i32.const 472) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\01\04\05") - (data (i32.const 496) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") - (data (i32.const 544) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\00\00\00\00\00") - (data (i32.const 568) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\00\00\00") - (data (i32.const 592) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\00\02\02") - (data (i32.const 616) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\00\02\02") - (data (i32.const 640) "\03\00\00\00\01\00\00\00\00\00\00\00\03\00\00\00\00\00\00") - (data (i32.const 664) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\00\00\00\02") - (data (i32.const 688) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 728) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 768) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 808) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\02\00\00\00") - (data (i32.const 848) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\02\00\00\00") - (data (i32.const 888) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 920) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\02\00\00\00") - (data (i32.const 960) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1000) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1040) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00") - (data (i32.const 1080) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1120) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1160) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\04\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1200) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1240) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1280) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1320) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1360) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00\05\00\00\00") - (data (i32.const 1400) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00") - (data (i32.const 1440) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\n\00\00\00\0c\00\00\00\0e\00\00\00") - (data (i32.const 1472) "\10\00\00\00\01\00\00\00\0f\00\00\00\10\00\00\00\b0\05\00\00\b0\05\00\00\0c\00\00\00\03\00\00\00") - (data (i32.const 1504) "$\00\00\00\01\00\00\00\00\00\00\00$\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\08\00\00\00\t\00\00\00") - (data (i32.const 1560) "\10\00\00\00\01\00\00\00\0f\00\00\00\10\00\00\00\f0\05\00\00\f0\05\00\00$\00\00\00\t\00\00\00") - (data (i32.const 1592) ",\00\00\00\01\00\00\00\00\00\00\00,\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\08\00\00\00\t\00\00\00\n\00\00\00") - (data (i32.const 1656) "\10\00\00\00\01\00\00\00\0f\00\00\00\10\00\00\00H\06\00\00H\06\00\00,\00\00\00\0b\00\00\00") - (data (i32.const 1688) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00") - (data (i32.const 1704) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") - (data (i32.const 1728) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") - (data (i32.const 2144) "\10\00\00\00\01\00\00\00\10\00\00\00\10\00\00\00\d0\06\00\00\d0\06\00\00\90\01\00\00d\00\00\00") - (data (i32.const 2176) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00,\00") - (data (i32.const 2200) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\001\00,\002\00,\003\00,\004\00,\005\00") - (data (i32.const 2240) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") - (data (i32.const 2264) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") - (data (i32.const 2288) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 2328) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 2360) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Int8Array,i8>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Uint8Array,u8>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Int16Array,i16>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Uint16Array,u16>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Int32Array,i32>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Uint32Array,u32>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Int64Array,i64>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Uint64Array,u64>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Float32Array,f32>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Float64Array,f64>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int8Array,i8>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8Array,u8>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int16Array,i16>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint16Array,u16>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int32Array,i32>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint32Array,u32>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int64Array,i64>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint64Array,u64>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Float32Array,f32>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Float64Array,f64>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Int8Array,i8>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Uint8Array,u8>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Int16Array,i16>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Uint16Array,u16>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Int32Array,i32>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Uint32Array,u32>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Int64Array,i64>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Uint64Array,u64>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Float32Array,f32>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Float64Array,f64>~anonymous|1 $std/typedarray/testArrayForEach<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Float64Array,f64>~anonymous|0) - (global $~lib/typedarray/Int8Array.BYTES_PER_ELEMENT i32 (i32.const 1)) - (global $~lib/typedarray/Uint8Array.BYTES_PER_ELEMENT i32 (i32.const 1)) - (global $~lib/typedarray/Uint8ClampedArray.BYTES_PER_ELEMENT i32 (i32.const 1)) - (global $~lib/typedarray/Int16Array.BYTES_PER_ELEMENT i32 (i32.const 2)) - (global $~lib/typedarray/Uint16Array.BYTES_PER_ELEMENT i32 (i32.const 2)) - (global $~lib/typedarray/Int32Array.BYTES_PER_ELEMENT i32 (i32.const 4)) - (global $~lib/typedarray/Uint32Array.BYTES_PER_ELEMENT i32 (i32.const 4)) - (global $~lib/typedarray/Int64Array.BYTES_PER_ELEMENT i32 (i32.const 8)) - (global $~lib/typedarray/Uint64Array.BYTES_PER_ELEMENT i32 (i32.const 8)) - (global $~lib/typedarray/Float32Array.BYTES_PER_ELEMENT i32 (i32.const 4)) - (global $~lib/typedarray/Float64Array.BYTES_PER_ELEMENT i32 (i32.const 8)) - (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) - (global $~lib/rt/tlsf/collectLock (mut i32) (i32.const 0)) - (global $~lib/gc/gc.auto (mut i32) (i32.const 1)) - (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) - (global $~lib/rt/pure/CUR (mut i32) (i32.const 0)) - (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) - (global $~lib/rt/pure/END (mut i32) (i32.const 0)) - (global $~lib/argc (mut i32) (i32.const 0)) - (global $~lib/builtins/i32.MAX_VALUE i32 (i32.const 2147483647)) - (global $std/typedarray/forEachCallCount (mut i32) (i32.const 0)) - (global $std/typedarray/forEachSelf (mut i32) (i32.const 0)) - (global $std/typedarray/forEachValues i32 (i32.const 1488)) - (global $std/typedarray/testArrayReverseValues i32 (i32.const 1576)) - (global $std/typedarray/testArrayIndexOfAndLastIndexOfValues i32 (i32.const 1672)) - (global $~lib/builtins/u32.MAX_VALUE i32 (i32.const -1)) - (global $~lib/util/number/_frc_plus (mut i64) (i64.const 0)) - (global $~lib/util/number/_frc_minus (mut i64) (i64.const 0)) - (global $~lib/util/number/_exp (mut i32) (i32.const 0)) - (global $~lib/util/number/_K (mut i32) (i32.const 0)) - (global $~lib/util/number/_frc_pow (mut i64) (i64.const 0)) - (global $~lib/util/number/_exp_pow (mut i32) (i32.const 0)) - (global $std/typedarray/testArrayWrapValues i32 (i32.const 3552)) - (global $~lib/started (mut i32) (i32.const 0)) - (global $~lib/rt/__rtti_base i32 (i32.const 3568)) - (global $~lib/heap/__heap_base i32 (i32.const 3724)) - (export "__start" (func $start)) - (export "memory" (memory $0)) - (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 277 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.set $3 - local.get $3 - i32.const 16 - i32.ge_u - if (result i32) - local.get $3 - i32.const 1073741808 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 279 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $4 - local.get $3 - i32.const 4 - i32.shr_u - local.set $5 - else - i32.const 31 - local.get $3 - i32.clz - i32.sub - local.set $4 - local.get $3 - local.get $4 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $5 - local.get $4 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $4 - end - local.get $4 - i32.const 23 - i32.lt_u - if (result i32) - local.get $5 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 292 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load offset=16 - local.set $6 - local.get $1 - i32.load offset=20 - local.set $7 - local.get $6 - if - local.get $6 - local.get $7 - i32.store offset=20 - end - local.get $7 - if - local.get $7 - local.get $6 - i32.store offset=16 - end - local.get $1 - local.get $0 - local.set $10 - local.get $4 - local.set $9 - local.get $5 - local.set $8 - local.get $10 - local.get $9 - i32.const 4 - i32.shl - local.get $8 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - i32.eq - if - local.get $0 - local.set $11 - local.get $4 - local.set $10 - local.get $5 - local.set $9 - local.get $7 - local.set $8 - local.get $11 - local.get $10 - i32.const 4 - i32.shl - local.get $9 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $8 - i32.store offset=96 - local.get $7 - i32.eqz - if - local.get $0 - local.set $9 - local.get $4 - local.set $8 - local.get $9 - local.get $8 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - local.set $9 - local.get $0 - local.set $8 - local.get $4 - local.set $11 - local.get $9 - i32.const 1 - local.get $5 - i32.shl - i32.const -1 - i32.xor - i32.and - local.tee $9 - local.set $10 - local.get $8 - local.get $11 - i32.const 2 - i32.shl - i32.add - local.get $10 - i32.store offset=4 - local.get $9 - i32.eqz - if - local.get $0 - local.get $0 - i32.load - i32.const 1 - local.get $4 - i32.shl - i32.const -1 - i32.xor - i32.and - i32.store - end - end - end - ) - (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $1 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 205 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 207 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.set $3 - local.get $3 - i32.const 16 - i32.add - local.get $3 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $4 - local.get $4 - i32.load - local.set $5 - local.get $5 - i32.const 1 - i32.and - if - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $5 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $3 - local.get $3 - i32.const 1073741808 - i32.lt_u - if - local.get $0 - local.get $4 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $2 - i32.const 3 - i32.and - local.get $3 - i32.or - local.tee $2 - i32.store - local.get $1 - local.set $6 - local.get $6 - i32.const 16 - i32.add - local.get $6 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $4 - local.get $4 - i32.load - local.set $5 - end - end - local.get $2 - i32.const 2 - i32.and - if - local.get $1 - local.set $6 - local.get $6 - i32.const 4 - i32.sub - i32.load - local.set $6 - local.get $6 - i32.load - local.set $3 - local.get $3 - i32.const 1 - i32.and - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 228 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $7 - local.get $7 - i32.const 1073741808 - i32.lt_u - if - local.get $0 - local.get $6 - call $~lib/rt/tlsf/removeBlock - local.get $6 - local.get $3 - i32.const 3 - i32.and - local.get $7 - i32.or - local.tee $2 - i32.store - local.get $6 - local.set $1 - end - end - local.get $4 - local.get $5 - i32.const 2 - i32.or - i32.store - local.get $2 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.set $8 - local.get $8 - i32.const 16 - i32.ge_u - if (result i32) - local.get $8 - i32.const 1073741808 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 243 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 16 - i32.add - local.get $8 - i32.add - local.get $4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 244 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $4 - i32.const 4 - i32.sub - local.get $1 - i32.store - local.get $8 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $9 - local.get $8 - i32.const 4 - i32.shr_u - local.set $10 - else - i32.const 31 - local.get $8 - i32.clz - i32.sub - local.set $9 - local.get $8 - local.get $9 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $10 - local.get $9 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $9 - end - local.get $9 - i32.const 23 - i32.lt_u - if (result i32) - local.get $10 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 260 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $7 - local.get $9 - local.set $3 - local.get $10 - local.set $6 - local.get $7 - local.get $3 - i32.const 4 - i32.shl - local.get $6 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $11 - local.get $1 - i32.const 0 - i32.store offset=16 - local.get $1 - local.get $11 - i32.store offset=20 - local.get $11 - if - local.get $11 - local.get $1 - i32.store offset=16 - end - local.get $0 - local.set $12 - local.get $9 - local.set $7 - local.get $10 - local.set $3 - local.get $1 - local.set $6 - local.get $12 - local.get $7 - i32.const 4 - i32.shl - local.get $3 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store offset=96 - local.get $0 - local.get $0 - i32.load - i32.const 1 - local.get $9 - i32.shl - i32.or - i32.store - local.get $0 - local.set $13 - local.get $9 - local.set $12 - local.get $0 - local.set $3 - local.get $9 - local.set $6 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - i32.const 1 - local.get $10 - i32.shl - i32.or - local.set $7 - local.get $13 - local.get $12 - i32.const 2 - i32.shl - i32.add - local.get $7 - i32.store offset=4 - ) - (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - local.get $2 - i32.le_u - if (result i32) - local.get $1 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - if (result i32) - local.get $2 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 386 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $3 - local.get $3 - i32.load offset=1568 - local.set $4 - i32.const 0 - local.set $5 - local.get $4 - if - local.get $1 - local.get $4 - i32.const 16 - i32.add - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 396 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 16 - i32.sub - local.get $4 - i32.eq - if - local.get $1 - i32.const 16 - i32.sub - local.set $1 - local.get $4 - i32.load - local.set $5 - else - nop - end - else - local.get $1 - local.get $0 - i32.const 1572 - i32.add - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 408 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - end - local.get $2 - local.get $1 - i32.sub - local.set $6 - local.get $6 - i32.const 48 - i32.lt_u - if - i32.const 0 - return - end - local.get $6 - i32.const 16 - i32.const 1 - i32.shl - i32.sub - local.set $7 - local.get $1 - local.set $8 - local.get $8 - local.get $7 - i32.const 1 - i32.or - local.get $5 - i32.const 2 - i32.and - i32.or - i32.store - local.get $8 - i32.const 0 - i32.store offset=16 - local.get $8 - i32.const 0 - i32.store offset=20 - local.get $1 - local.get $6 - i32.add - i32.const 16 - i32.sub - local.set $4 - local.get $4 - i32.const 0 - i32.const 2 - i32.or - i32.store - local.get $0 - local.set $9 - local.get $4 - local.set $3 - local.get $9 - local.get $3 - i32.store offset=1568 - local.get $0 - local.get $8 - call $~lib/rt/tlsf/insertBlock - i32.const 1 - ) - (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - global.get $~lib/heap/__heap_base - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.set $0 - memory.size - local.set $1 - local.get $0 - i32.const 1572 - i32.add - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $2 - local.get $2 - local.get $1 - i32.gt_s - if (result i32) - local.get $2 - local.get $1 - i32.sub - memory.grow - i32.const 0 - i32.lt_s - else - i32.const 0 - end - if - unreachable - end - local.get $0 - local.set $3 - local.get $3 - i32.const 0 - i32.store - local.get $3 - local.set $5 - i32.const 0 - local.set $4 - local.get $5 - local.get $4 - i32.store offset=1568 - block $break|0 - i32.const 0 - local.set $5 - loop $loop|0 - local.get $5 - i32.const 23 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $3 - local.set $7 - local.get $5 - local.set $6 - i32.const 0 - local.set $4 - local.get $7 - local.get $6 - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store offset=4 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - i32.const 16 - i32.lt_u - i32.eqz - br_if $break|1 - local.get $3 - local.set $9 - local.get $5 - local.set $8 - local.get $7 - local.set $6 - i32.const 0 - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $6 - i32.add - i32.const 2 - i32.shl - i32.add - local.get $4 - i32.store offset=96 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - local.get $0 - i32.const 1572 - i32.add - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - memory.size - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - drop - local.get $3 - global.set $~lib/rt/tlsf/ROOT - ) - (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.const 1073741808 - i32.ge_u - if - i32.const 176 - i32.const 128 - i32.const 457 - i32.const 29 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 15 - i32.add - i32.const 15 - i32.const -1 - i32.xor - i32.and - local.tee $1 - i32.const 16 - local.tee $2 - local.get $1 - local.get $2 - i32.gt_u - select - ) - (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $1 - i32.const 256 - i32.lt_u - if - i32.const 0 - local.set $2 - local.get $1 - i32.const 4 - i32.shr_u - local.set $3 - else - local.get $1 - i32.const 536870904 - i32.lt_u - if (result i32) - local.get $1 - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - i32.add - i32.const 1 - i32.sub - else - local.get $1 - end - local.set $4 - i32.const 31 - local.get $4 - i32.clz - i32.sub - local.set $2 - local.get $4 - local.get $2 - i32.const 4 - i32.sub - i32.shr_u - i32.const 1 - i32.const 4 - i32.shl - i32.xor - local.set $3 - local.get $2 - i32.const 8 - i32.const 1 - i32.sub - i32.sub - local.set $2 - end - local.get $2 - i32.const 23 - i32.lt_u - if (result i32) - local.get $3 - i32.const 16 - i32.lt_u - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 338 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $5 - local.get $2 - local.set $4 - local.get $5 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - i32.const 0 - i32.const -1 - i32.xor - local.get $3 - i32.shl - i32.and - local.set $6 - i32.const 0 - local.set $7 - local.get $6 - i32.eqz - if - local.get $0 - i32.load - i32.const 0 - i32.const -1 - i32.xor - local.get $2 - i32.const 1 - i32.add - i32.shl - i32.and - local.set $5 - local.get $5 - i32.eqz - if - i32.const 0 - local.set $7 - else - local.get $5 - i32.ctz - local.set $2 - local.get $0 - local.set $8 - local.get $2 - local.set $4 - local.get $8 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load offset=4 - local.set $6 - local.get $6 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 351 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.set $9 - local.get $2 - local.set $8 - local.get $6 - i32.ctz - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $4 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $7 - end - else - local.get $0 - local.set $9 - local.get $2 - local.set $8 - local.get $6 - i32.ctz - local.set $4 - local.get $9 - local.get $8 - i32.const 4 - i32.shl - local.get $4 - i32.add - i32.const 2 - i32.shl - i32.add - i32.load offset=96 - local.set $7 - end - local.get $7 - ) - (func $~lib/rt/pure/markGray (; 11 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 268435456 - i32.ne - if - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 268435456 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 2 - call $~lib/rt/__visit_members - end - ) - (func $~lib/rt/tlsf/freeBlock (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - local.get $1 - i32.load - local.set $2 - local.get $2 - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $2 - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $1 - call $~lib/rt/tlsf/insertBlock - local.get $1 - call $~lib/rt/rtrace/onfree - ) - (func $~lib/rt/pure/scanBlack (; 13 ;) (type $FUNCSIG$vi) (param $0 i32) - local.get $0 - local.get $0 - i32.load offset=4 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 0 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 4 - call $~lib/rt/__visit_members - ) - (func $~lib/rt/pure/scan (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 268435456 - i32.eq - if - local.get $1 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - if - local.get $0 - call $~lib/rt/pure/scanBlack - else - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 536870912 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 3 - call $~lib/rt/__visit_members - end - end - ) - (func $~lib/rt/pure/collectWhite (; 15 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 1879048192 - i32.and - i32.const 536870912 - i32.eq - if (result i32) - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - else - i32.const 0 - end - if - local.get $0 - local.get $1 - i32.const 1879048192 - i32.const -1 - i32.xor - i32.and - i32.const 0 - i32.or - i32.store offset=4 - local.get $0 - i32.const 16 - i32.add - i32.const 5 - call $~lib/rt/__visit_members - global.get $~lib/rt/tlsf/ROOT - local.get $0 - call $~lib/rt/tlsf/freeBlock - end - ) - (func $~lib/rt/pure/__collect (; 16 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/rt/pure/ROOTS - local.set $0 - local.get $0 - local.set $1 - block $break|0 - local.get $1 - local.set $2 - global.get $~lib/rt/pure/CUR - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - i32.load - local.set $4 - local.get $4 - i32.load offset=4 - local.set $5 - local.get $5 - i32.const 1879048192 - i32.and - i32.const 805306368 - i32.eq - if (result i32) - local.get $5 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - else - i32.const 0 - end - if - local.get $4 - call $~lib/rt/pure/markGray - local.get $1 - local.get $4 - i32.store - local.get $1 - i32.const 4 - i32.add - local.set $1 - else - local.get $5 - i32.const 1879048192 - i32.and - i32.const 0 - i32.eq - if (result i32) - local.get $5 - i32.const 268435455 - i32.and - i32.eqz - else - i32.const 0 - end - if - global.get $~lib/rt/tlsf/ROOT - local.get $4 - call $~lib/rt/tlsf/freeBlock - else - local.get $4 - local.get $5 - i32.const -2147483648 - i32.const -1 - i32.xor - i32.and - i32.store offset=4 - end - end - local.get $2 - i32.const 4 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - local.get $1 - global.set $~lib/rt/pure/CUR - block $break|1 - local.get $0 - local.set $5 - loop $loop|1 - local.get $5 - local.get $1 - i32.lt_u - i32.eqz - br_if $break|1 - local.get $5 - i32.load - call $~lib/rt/pure/scan - local.get $5 - i32.const 4 - i32.add - local.set $5 - br $loop|1 - end - unreachable - end - block $break|2 - local.get $0 - local.set $5 - loop $loop|2 - local.get $5 - local.get $1 - i32.lt_u - i32.eqz - br_if $break|2 - local.get $5 - i32.load - local.set $4 - local.get $4 - local.get $4 - i32.load offset=4 - i32.const -2147483648 - i32.const -1 - i32.xor - i32.and - i32.store offset=4 - local.get $4 - call $~lib/rt/pure/collectWhite - local.get $5 - i32.const 4 - i32.add - local.set $5 - br $loop|2 - end - unreachable - end - local.get $0 - global.set $~lib/rt/pure/CUR - ) - (func $~lib/rt/tlsf/growMemory (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $1 - i32.const 536870904 - i32.lt_u - if - local.get $1 - i32.const 1 - i32.const 27 - local.get $1 - i32.clz - i32.sub - i32.shl - i32.const 1 - i32.sub - i32.add - local.set $1 - end - memory.size - local.set $2 - local.get $1 - i32.const 16 - local.get $2 - i32.const 16 - i32.shl - i32.const 16 - i32.sub - local.get $0 - local.set $3 - local.get $3 - i32.load offset=1568 - i32.ne - i32.shl - i32.add - local.set $1 - local.get $1 - i32.const 65535 - i32.add - i32.const 65535 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.shr_u - local.set $4 - local.get $2 - local.tee $3 - local.get $4 - local.tee $5 - local.get $3 - local.get $5 - i32.gt_s - select - local.set $6 - local.get $6 - memory.grow - i32.const 0 - i32.lt_s - if - local.get $4 - memory.grow - i32.const 0 - i32.lt_s - if - unreachable - end - end - memory.size - local.set $7 - local.get $0 - local.get $2 - i32.const 16 - i32.shl - local.get $7 - i32.const 16 - i32.shl - call $~lib/rt/tlsf/addMemory - drop - ) - (func $~lib/rt/tlsf/prepareBlock (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $1 - i32.load - local.set $3 - local.get $2 - i32.const 15 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 365 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const -1 - i32.xor - i32.and - local.get $2 - i32.sub - local.set $4 - local.get $4 - i32.const 32 - i32.ge_u - if - local.get $1 - local.get $2 - local.get $3 - i32.const 2 - i32.and - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.get $2 - i32.add - local.set $5 - local.get $5 - local.get $4 - i32.const 16 - i32.sub - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $5 - call $~lib/rt/tlsf/insertBlock - else - local.get $1 - local.get $3 - i32.const 1 - i32.const -1 - i32.xor - i32.and - i32.store - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - i32.load - i32.const 2 - i32.const -1 - i32.xor - i32.and - i32.store - end - ) - (func $~lib/rt/tlsf/allocateBlock (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/rt/tlsf/collectLock - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 486 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/rt/tlsf/prepareSize - local.set $2 - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - global.get $~lib/gc/gc.auto - if - i32.const 1 - global.set $~lib/rt/tlsf/collectLock - call $~lib/rt/pure/__collect - i32.const 0 - global.set $~lib/rt/tlsf/collectLock - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - local.get $0 - local.get $2 - call $~lib/rt/tlsf/growMemory - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 498 - i32.const 19 - call $~lib/builtins/abort - unreachable - end - end - else - local.get $0 - local.get $2 - call $~lib/rt/tlsf/growMemory - local.get $0 - local.get $2 - call $~lib/rt/tlsf/searchBlock - local.set $3 - local.get $3 - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 503 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - end - end - local.get $3 - i32.load - i32.const -4 - i32.and - local.get $2 - i32.ge_u - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 506 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.store offset=4 - local.get $3 - local.get $1 - i32.store offset=12 - local.get $0 - local.get $3 - call $~lib/rt/tlsf/removeBlock - local.get $0 - local.get $3 - local.get $2 - call $~lib/rt/tlsf/prepareBlock - local.get $3 - call $~lib/rt/rtrace/onalloc - local.get $3 - ) - (func $~lib/rt/tlsf/__alloc (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - global.get $~lib/rt/tlsf/ROOT - local.set $2 - local.get $2 - i32.eqz - if - call $~lib/rt/tlsf/initializeRoot - global.get $~lib/rt/tlsf/ROOT - local.set $2 - end - local.get $2 - local.get $0 - call $~lib/rt/tlsf/allocateBlock - local.set $3 - local.get $3 - local.get $1 - i32.store offset=8 - local.get $3 - i32.const 16 - i32.add - ) - (func $~lib/memory/memory.fill (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - block $~lib/util/memory/memset|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 1 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 2 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.get $4 - i32.store8 - local.get $5 - i32.const 2 - i32.add - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 2 - i32.sub - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 3 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 6 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 3 - i32.add - local.get $4 - i32.store8 - local.get $5 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.get $4 - i32.store8 - local.get $3 - i32.const 8 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - i32.const 0 - local.get $5 - i32.sub - i32.const 3 - i32.and - local.set $6 - local.get $5 - local.get $6 - i32.add - local.set $5 - local.get $3 - local.get $6 - i32.sub - local.set $3 - local.get $3 - i32.const -4 - i32.and - local.set $3 - i32.const -1 - i32.const 255 - i32.div_u - local.get $4 - i32.const 255 - i32.and - i32.mul - local.set $7 - local.get $5 - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 4 - i32.sub - local.get $7 - i32.store - local.get $3 - i32.const 8 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 4 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 8 - i32.add - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 12 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 8 - i32.sub - local.get $7 - i32.store - local.get $3 - i32.const 24 - i32.le_u - if - br $~lib/util/memory/memset|inlined.0 - end - local.get $5 - i32.const 12 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 16 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 20 - i32.add - local.get $7 - i32.store - local.get $5 - i32.const 24 - i32.add - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 28 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 24 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 20 - i32.sub - local.get $7 - i32.store - local.get $5 - local.get $3 - i32.add - i32.const 16 - i32.sub - local.get $7 - i32.store - i32.const 24 - local.get $5 - i32.const 4 - i32.and - i32.add - local.set $6 - local.get $5 - local.get $6 - i32.add - local.set $5 - local.get $3 - local.get $6 - i32.sub - local.set $3 - local.get $7 - i64.extend_i32_u - local.get $7 - i64.extend_i32_u - i64.const 32 - i64.shl - i64.or - local.set $8 - block $break|0 - loop $continue|0 - local.get $3 - i32.const 32 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $5 - local.get $8 - i64.store - local.get $5 - i32.const 8 - i32.add - local.get $8 - i64.store - local.get $5 - i32.const 16 - i32.add - local.get $8 - i64.store - local.get $5 - i32.const 24 - i32.add - local.get $8 - i64.store - local.get $3 - i32.const 32 - i32.sub - local.set $3 - local.get $5 - i32.const 32 - i32.add - local.set $5 - br $continue|0 - end - unreachable - end - end - ) - (func $~lib/rt/pure/increment (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const -268435456 - i32.and - local.get $1 - i32.const 1 - i32.add - i32.const -268435456 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 104 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - i32.const 1 - i32.add - i32.store offset=4 - local.get $0 - call $~lib/rt/rtrace/onincrement - local.get $0 - i32.load - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 107 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - ) - (func $~lib/rt/pure/__retain (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.gt_u - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/pure/increment - end - local.get $0 - ) - (func $~lib/rt/__typeinfo (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - global.get $~lib/rt/__rtti_base - local.set $1 - local.get $0 - local.get $1 - i32.load - i32.gt_u - if - i32.const 280 - i32.const 336 - i32.const 22 - i32.const 27 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 4 - i32.add - local.get $0 - i32.const 8 - i32.mul - i32.add - i32.load - ) - (func $~lib/util/memory/memcpy (; 25 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - block $break|0 - loop $continue|0 - local.get $2 - if (result i32) - local.get $1 - i32.const 3 - i32.and - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - br $continue|0 - end - unreachable - end - local.get $0 - i32.const 3 - i32.and - i32.const 0 - i32.eq - if - block $break|1 - loop $continue|1 - local.get $2 - i32.const 16 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.get $1 - i32.const 8 - i32.add - i32.load - i32.store - local.get $0 - i32.const 12 - i32.add - local.get $1 - i32.const 12 - i32.add - i32.load - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|1 - end - unreachable - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.get $1 - i32.const 4 - i32.add - i32.load - i32.store - local.get $0 - i32.const 8 - i32.add - local.set $0 - local.get $1 - i32.const 8 - i32.add - local.set $1 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.get $1 - i32.load - i32.store - local.get $0 - i32.const 4 - i32.add - local.set $0 - local.get $1 - i32.const 4 - i32.add - local.set $1 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.get $1 - i32.load16_u - i32.store16 - local.get $0 - i32.const 2 - i32.add - local.set $0 - local.get $1 - i32.const 2 - i32.add - local.set $1 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - return - end - local.get $2 - i32.const 32 - i32.ge_u - if - block $break|2 - block $case2|2 - block $case1|2 - block $case0|2 - local.get $0 - i32.const 3 - i32.and - local.set $5 - local.get $5 - i32.const 1 - i32.eq - br_if $case0|2 - local.get $5 - i32.const 2 - i32.eq - br_if $case1|2 - local.get $5 - i32.const 3 - i32.eq - br_if $case2|2 - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 3 - i32.sub - local.set $2 - block $break|3 - loop $continue|3 - local.get $2 - i32.const 17 - i32.ge_u - i32.eqz - br_if $break|3 - local.get $1 - i32.const 1 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 5 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 9 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 24 - i32.shr_u - local.get $4 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 13 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 24 - i32.shr_u - local.get $3 - i32.const 8 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|3 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - block $break|4 - loop $continue|4 - local.get $2 - i32.const 18 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $1 - i32.const 2 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 6 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 10 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 16 - i32.shr_u - local.get $4 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 14 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 16 - i32.shr_u - local.get $3 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|4 - end - unreachable - end - br $break|2 - end - local.get $1 - i32.load - local.set $3 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $2 - i32.const 1 - i32.sub - local.set $2 - block $break|5 - loop $continue|5 - local.get $2 - i32.const 19 - i32.ge_u - i32.eqz - br_if $break|5 - local.get $1 - i32.const 3 - i32.add - i32.load - local.set $4 - local.get $0 - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 7 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 4 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 11 - i32.add - i32.load - local.set $4 - local.get $0 - i32.const 8 - i32.add - local.get $3 - i32.const 8 - i32.shr_u - local.get $4 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 15 - i32.add - i32.load - local.set $3 - local.get $0 - i32.const 12 - i32.add - local.get $4 - i32.const 8 - i32.shr_u - local.get $3 - i32.const 24 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 16 - i32.add - local.set $1 - local.get $0 - i32.const 16 - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.sub - local.set $2 - br $continue|5 - end - unreachable - end - br $break|2 - end - end - local.get $2 - i32.const 16 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 8 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 4 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 2 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - local.get $2 - i32.const 1 - i32.and - if - local.get $0 - local.tee $5 - i32.const 1 - i32.add - local.set $0 - local.get $5 - local.get $1 - local.tee $5 - i32.const 1 - i32.add - local.set $1 - local.get $5 - i32.load8_u - i32.store8 - end - ) - (func $~lib/memory/memory.copy (; 26 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - block $~lib/util/memory/memmove|inlined.0 - local.get $0 - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - local.get $4 - i32.eq - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $4 - local.get $3 - i32.add - local.get $5 - i32.le_u - if (result i32) - i32.const 1 - else - local.get $5 - local.get $3 - i32.add - local.get $4 - i32.le_u - end - if - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/memory/memcpy - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $4 - i32.lt_u - if - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|0 - loop $continue|0 - local.get $5 - i32.const 7 - i32.and - i32.eqz - br_if $break|0 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $3 - i32.const 1 - i32.sub - local.set $3 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - br $continue|0 - end - unreachable - end - block $break|1 - loop $continue|1 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|1 - local.get $5 - local.get $4 - i64.load - i64.store - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - i32.const 8 - i32.add - local.set $5 - local.get $4 - i32.const 8 - i32.add - local.set $4 - br $continue|1 - end - unreachable - end - end - block $break|2 - loop $continue|2 - local.get $3 - i32.eqz - br_if $break|2 - local.get $5 - local.tee $6 - i32.const 1 - i32.add - local.set $5 - local.get $6 - local.get $4 - local.tee $6 - i32.const 1 - i32.add - local.set $4 - local.get $6 - i32.load8_u - i32.store8 - local.get $3 - i32.const 1 - i32.sub - local.set $3 - br $continue|2 - end - unreachable - end - else - local.get $4 - i32.const 7 - i32.and - local.get $5 - i32.const 7 - i32.and - i32.eq - if - block $break|3 - loop $continue|3 - local.get $5 - local.get $3 - i32.add - i32.const 7 - i32.and - i32.eqz - br_if $break|3 - local.get $3 - i32.eqz - if - br $~lib/util/memory/memmove|inlined.0 - end - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $3 - i32.const 8 - i32.ge_u - i32.eqz - br_if $break|4 - local.get $3 - i32.const 8 - i32.sub - local.set $3 - local.get $5 - local.get $3 - i32.add - local.get $4 - local.get $3 - i32.add - i64.load - i64.store - br $continue|4 - end - unreachable - end - end - block $break|5 - loop $continue|5 - local.get $3 - i32.eqz - br_if $break|5 - local.get $5 - local.get $3 - i32.const 1 - i32.sub - local.tee $3 - i32.add - local.get $4 - local.get $3 - i32.add - i32.load8_u - i32.store8 - br $continue|5 - end - unreachable - end - end - end - ) - (func $~lib/rt/tlsf/__free (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 593 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 594 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/tlsf/ROOT - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/tlsf/freeBlock - ) - (func $~lib/rt/pure/growRoots (; 28 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $~lib/rt/pure/ROOTS - local.set $0 - global.get $~lib/rt/pure/CUR - local.get $0 - i32.sub - local.set $1 - local.get $1 - i32.const 2 - i32.mul - local.tee $2 - i32.const 64 - i32.const 2 - i32.shl - local.tee $3 - local.get $2 - local.get $3 - i32.gt_u - select - local.set $4 - local.get $4 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $5 - local.get $5 - i32.const 16 - i32.sub - call $~lib/rt/rtrace/onfree - local.get $5 - local.get $0 - local.get $1 - call $~lib/memory/memory.copy - local.get $0 - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/rtrace/onalloc - local.get $0 - call $~lib/rt/tlsf/__free - end - local.get $5 - global.set $~lib/rt/pure/ROOTS - local.get $5 - local.get $1 - i32.add - global.set $~lib/rt/pure/CUR - local.get $5 - local.get $4 - i32.add - global.set $~lib/rt/pure/END - ) - (func $~lib/rt/pure/appendRoot (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - global.get $~lib/rt/pure/CUR - local.set $1 - local.get $1 - global.get $~lib/rt/pure/END - i32.ge_u - if - call $~lib/rt/pure/growRoots - global.get $~lib/rt/pure/CUR - local.set $1 - end - local.get $1 - local.get $0 - i32.store - local.get $1 - i32.const 4 - i32.add - global.set $~lib/rt/pure/CUR - ) - (func $~lib/rt/pure/decrement (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - (local $2 i32) - local.get $0 - i32.load offset=4 - local.set $1 - local.get $1 - i32.const 268435455 - i32.and - local.set $2 - local.get $0 - call $~lib/rt/rtrace/ondecrement - local.get $0 - i32.load - i32.const 1 - i32.and - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 115 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - i32.eq - if - local.get $0 - i32.const 16 - i32.add - i32.const 1 - call $~lib/rt/__visit_members - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - if - global.get $~lib/rt/tlsf/ROOT - local.get $0 - call $~lib/rt/tlsf/freeBlock - else - local.get $0 - i32.const -2147483648 - i32.const 0 - i32.or - i32.const 0 - i32.or - i32.store offset=4 - end - else - local.get $2 - i32.const 0 - i32.gt_u - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 124 - i32.const 15 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=8 - call $~lib/rt/__typeinfo - i32.const 16 - i32.and - i32.eqz - if - local.get $0 - i32.const -2147483648 - i32.const 805306368 - i32.or - local.get $2 - i32.const 1 - i32.sub - i32.or - i32.store offset=4 - local.get $1 - i32.const -2147483648 - i32.and - i32.eqz - if - local.get $0 - call $~lib/rt/pure/appendRoot - end - else - local.get $0 - local.get $1 - i32.const 268435455 - i32.const -1 - i32.xor - i32.and - local.get $2 - i32.const 1 - i32.sub - i32.or - i32.store offset=4 - end - end - ) - (func $~lib/rt/pure/__release (; 31 ;) (type $FUNCSIG$vi) (param $0 i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.gt_u - if - local.get $0 - i32.const 16 - i32.sub - call $~lib/rt/pure/decrement - end - ) - (func $~lib/arraybuffer/ArrayBufferView#constructor (; 32 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $1 - i32.const 1073741808 - local.get $2 - i32.shr_u - i32.gt_u - if - i32.const 24 - i32.const 72 - i32.const 14 - i32.const 56 - call $~lib/builtins/abort - unreachable - end - local.get $1 - local.get $2 - i32.shl - local.tee $1 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $3 - local.get $3 - i32.const 0 - local.get $1 - call $~lib/memory/memory.fill - local.get $0 - i32.eqz - if - i32.const 12 - i32.const 2 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $0 - end - local.get $0 - i32.const 0 - i32.store - local.get $0 - i32.const 0 - i32.store offset=4 - local.get $0 - i32.const 0 - i32.store offset=8 - local.get $0 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - i32.load - local.tee $4 - i32.ne - if - local.get $5 - call $~lib/rt/pure/__retain - drop - local.get $4 - call $~lib/rt/pure/__release - end - local.get $5 - i32.store - local.get $0 - local.get $3 - i32.store offset=4 - local.get $0 - local.get $1 - i32.store offset=8 - local.get $0 - ) - (func $~lib/typedarray/Int8Array#constructor (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 3 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $0 - i32.load - i32.sub - ) - (func $~lib/arraybuffer/ArrayBufferView#get:byteLength (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=8 - ) - (func $~lib/typedarray/Int8Array#get:length (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - ) - (func $~lib/typedarray/Uint8Array#constructor (; 37 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 4 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/typedarray/Uint8Array#get:length (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - ) - (func $~lib/typedarray/Uint8ClampedArray#constructor (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 5 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 0 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/typedarray/Uint8ClampedArray#get:length (; 40 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - ) - (func $~lib/typedarray/Int16Array#constructor (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 6 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 1 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/typedarray/Int16Array#get:length (; 42 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 1 - i32.shr_u - ) - (func $~lib/typedarray/Uint16Array#constructor (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 7 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 1 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/typedarray/Uint16Array#get:length (; 44 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 1 - i32.shr_u - ) - (func $~lib/typedarray/Int32Array#constructor (; 45 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 8 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 2 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/typedarray/Int32Array#get:length (; 46 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 2 - i32.shr_u - ) - (func $~lib/typedarray/Uint32Array#constructor (; 47 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 9 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 2 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/typedarray/Uint32Array#get:length (; 48 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 2 - i32.shr_u - ) - (func $~lib/typedarray/Int64Array#constructor (; 49 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 10 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 3 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/typedarray/Int64Array#get:length (; 50 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 3 - i32.shr_u - ) - (func $~lib/typedarray/Uint64Array#constructor (; 51 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 11 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 3 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/typedarray/Uint64Array#get:length (; 52 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 3 - i32.shr_u - ) - (func $~lib/typedarray/Float32Array#constructor (; 53 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 12 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 2 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/typedarray/Float32Array#get:length (; 54 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 2 - i32.shr_u - ) - (func $~lib/typedarray/Float64Array#constructor (; 55 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - if (result i32) - local.get $0 - else - i32.const 12 - i32.const 13 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - end - local.get $1 - i32.const 3 - call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $0 - local.get $0 - ) - (func $~lib/typedarray/Float64Array#get:length (; 56 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 3 - i32.shr_u - ) - (func $std/typedarray/testInstantiate (; 57 ;) (type $FUNCSIG$vi) (param $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - i32.const 0 - local.get $0 - call $~lib/typedarray/Int8Array#constructor - local.set $1 - local.get $1 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 32 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - local.get $0 - i32.const 1 - i32.mul - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 33 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/typedarray/Int8Array#get:length - local.get $0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 34 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.get $0 - call $~lib/typedarray/Uint8Array#constructor - local.set $2 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 37 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - local.get $0 - i32.const 1 - i32.mul - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 38 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/typedarray/Uint8Array#get:length - local.get $0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 39 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.get $0 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.set $3 - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 42 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - local.get $0 - i32.const 1 - i32.mul - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 43 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.get $0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 44 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.get $0 - call $~lib/typedarray/Int16Array#constructor - local.set $4 - local.get $4 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 47 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $4 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - local.get $0 - i32.const 2 - i32.mul - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 48 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $4 - call $~lib/typedarray/Int16Array#get:length - local.get $0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 49 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.get $0 - call $~lib/typedarray/Uint16Array#constructor - local.set $5 - local.get $5 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 52 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - local.get $0 - i32.const 2 - i32.mul - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 53 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - local.get $0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 54 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.get $0 - call $~lib/typedarray/Int32Array#constructor - local.set $6 - local.get $6 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 57 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $6 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - local.get $0 - i32.const 4 - i32.mul - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 58 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $6 - call $~lib/typedarray/Int32Array#get:length - local.get $0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 59 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.get $0 - call $~lib/typedarray/Uint32Array#constructor - local.set $7 - local.get $7 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 62 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - local.get $0 - i32.const 4 - i32.mul - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 63 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - call $~lib/typedarray/Uint32Array#get:length - local.get $0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 64 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.get $0 - call $~lib/typedarray/Int64Array#constructor - local.set $8 - local.get $8 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 67 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - local.get $0 - i32.const 8 - i32.mul - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 68 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - call $~lib/typedarray/Int64Array#get:length - local.get $0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 69 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.get $0 - call $~lib/typedarray/Uint64Array#constructor - local.set $9 - local.get $9 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 72 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $9 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - local.get $0 - i32.const 8 - i32.mul - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 73 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $9 - call $~lib/typedarray/Uint64Array#get:length - local.get $0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 74 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.get $0 - call $~lib/typedarray/Float32Array#constructor - local.set $10 - local.get $10 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 77 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $10 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - local.get $0 - i32.const 4 - i32.mul - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 78 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $10 - call $~lib/typedarray/Float32Array#get:length - local.get $0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 79 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - local.get $0 - call $~lib/typedarray/Float64Array#constructor - local.set $11 - local.get $11 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 82 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $11 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - local.get $0 - i32.const 8 - i32.mul - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 83 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $11 - call $~lib/typedarray/Float64Array#get:length - local.get $0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 84 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - local.get $10 - call $~lib/rt/pure/__release - local.get $11 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int32Array#__set (; 58 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 679 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.get $2 - i32.store - ) - (func $~lib/typedarray/Int32Array#__get (; 59 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 668 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - ) - (func $~lib/typedarray/Int32Array#subarray (; 60 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/typedarray/Int32Array#get:length - local.set $6 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $4 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $4 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $4 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $3 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $3 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $3 - local.get $3 - local.tee $7 - local.get $4 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - local.set $3 - i32.const 12 - i32.const 8 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.tee $8 - local.get $5 - i32.load - local.tee $9 - local.get $8 - i32.load - local.tee $8 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $9 - i32.store - local.get $7 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.store offset=4 - local.get $7 - local.get $3 - local.get $4 - i32.sub - i32.const 2 - i32.shl - i32.store offset=8 - local.get $7 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $~lib/typedarray/Float64Array#__set (; 61 ;) (type $FUNCSIG$viid) (param $0 i32) (param $1 i32) (param $2 f64) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 3 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 1319 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - local.get $2 - f64.store - ) - (func $~lib/typedarray/Float64Array#subarray (; 62 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/typedarray/Float64Array#get:length - local.set $6 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $4 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $4 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $4 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $3 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $3 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $3 - local.get $3 - local.tee $7 - local.get $4 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - local.set $3 - i32.const 12 - i32.const 13 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.tee $8 - local.get $5 - i32.load - local.tee $9 - local.get $8 - i32.load - local.tee $8 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $9 - i32.store - local.get $7 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 3 - i32.shl - i32.add - i32.store offset=4 - local.get $7 - local.get $3 - local.get $4 - i32.sub - i32.const 3 - i32.shl - i32.store offset=8 - local.get $7 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $~lib/util/sort/insertionSort (; 63 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 f64) - (local $5 i32) - (local $6 f64) - (local $7 i32) - block $break|0 - i32.const 0 - local.set $3 - loop $loop|0 - local.get $3 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $3 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - block $break|1 - loop $continue|1 - local.get $5 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $6 - i32.const 2 - global.set $~lib/argc - local.get $4 - local.get $6 - local.get $2 - call_indirect (type $FUNCSIG$idd) - i32.const 0 - i32.lt_s - if - local.get $0 - local.get $5 - local.tee $7 - i32.const 1 - i32.sub - local.set $5 - local.get $7 - i32.const 1 - i32.add - i32.const 3 - i32.shl - i32.add - local.get $6 - f64.store - else - br $break|1 - end - br $continue|1 - end - unreachable - end - local.get $0 - local.get $5 - i32.const 1 - i32.add - i32.const 3 - i32.shl - i32.add - local.get $4 - f64.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - br $loop|0 - end - unreachable - end - ) - (func $~lib/util/sort/weakHeapSort (; 64 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 f64) - (local $9 f64) - (local $10 f64) - local.get $1 - i32.const 31 - i32.add - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - local.set $3 - local.get $3 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $4 - local.get $4 - i32.const 0 - local.get $3 - call $~lib/memory/memory.fill - block $break|0 - local.get $1 - i32.const 1 - i32.sub - local.set $5 - loop $loop|0 - local.get $5 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|0 - local.get $5 - local.set $6 - block $break|1 - loop $continue|1 - local.get $6 - i32.const 1 - i32.and - local.get $4 - local.get $6 - i32.const 6 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - local.get $6 - i32.const 1 - i32.shr_s - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.eq - i32.eqz - br_if $break|1 - local.get $6 - i32.const 1 - i32.shr_s - local.set $6 - br $continue|1 - end - unreachable - end - local.get $6 - i32.const 1 - i32.shr_s - local.set $7 - local.get $0 - local.get $7 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $8 - local.get $0 - local.get $5 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $9 - i32.const 2 - global.set $~lib/argc - local.get $8 - local.get $9 - local.get $2 - call_indirect (type $FUNCSIG$idd) - i32.const 0 - i32.lt_s - if - local.get $4 - local.get $5 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - local.get $4 - local.get $5 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - i32.const 1 - local.get $5 - i32.const 31 - i32.and - i32.shl - i32.xor - i32.store - local.get $0 - local.get $5 - i32.const 3 - i32.shl - i32.add - local.get $8 - f64.store - local.get $0 - local.get $7 - i32.const 3 - i32.shl - i32.add - local.get $9 - f64.store - end - local.get $5 - i32.const 1 - i32.sub - local.set $5 - br $loop|0 - end - unreachable - end - block $break|2 - local.get $1 - i32.const 1 - i32.sub - local.set $7 - loop $loop|2 - local.get $7 - i32.const 2 - i32.ge_s - i32.eqz - br_if $break|2 - local.get $0 - f64.load - local.set $9 - local.get $0 - local.get $0 - local.get $7 - i32.const 3 - i32.shl - i32.add - f64.load - f64.store - local.get $0 - local.get $7 - i32.const 3 - i32.shl - i32.add - local.get $9 - f64.store - i32.const 1 - local.set $6 - block $break|3 - loop $continue|3 - local.get $6 - i32.const 1 - i32.shl - local.get $4 - local.get $6 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - local.get $6 - i32.const 31 - i32.and - i32.shr_u - i32.const 1 - i32.and - i32.add - local.tee $5 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|3 - local.get $5 - local.set $6 - br $continue|3 - end - unreachable - end - block $break|4 - loop $continue|4 - local.get $6 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|4 - local.get $0 - f64.load - local.set $9 - local.get $0 - local.get $6 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $8 - i32.const 2 - global.set $~lib/argc - local.get $9 - local.get $8 - local.get $2 - call_indirect (type $FUNCSIG$idd) - i32.const 0 - i32.lt_s - if - local.get $4 - local.get $6 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - local.get $4 - local.get $6 - i32.const 5 - i32.shr_s - i32.const 2 - i32.shl - i32.add - i32.load - i32.const 1 - local.get $6 - i32.const 31 - i32.and - i32.shl - i32.xor - i32.store - local.get $0 - local.get $6 - i32.const 3 - i32.shl - i32.add - local.get $9 - f64.store - local.get $0 - local.get $8 - f64.store - end - local.get $6 - i32.const 1 - i32.shr_s - local.set $6 - br $continue|4 - end - unreachable - end - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|2 - end - unreachable - end - local.get $4 - call $~lib/rt/tlsf/__free - local.get $0 - f64.load offset=8 - local.set $10 - local.get $0 - local.get $0 - f64.load - f64.store offset=8 - local.get $0 - local.get $10 - f64.store - ) - (func $~lib/typedarray/Float64Array#sort (; 65 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 f64) - (local $7 f64) - (local $8 i32) - (local $9 i32) - (local $10 i32) - block $~lib/typedarray/SORT<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Float64Array#get:length - local.set $4 - local.get $4 - i32.const 1 - i32.le_s - if - local.get $3 - local.set $5 - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - br $~lib/typedarray/SORT<~lib/typedarray/Float64Array,f64>|inlined.0 - end - local.get $3 - i32.load offset=4 - local.set $5 - local.get $4 - i32.const 2 - i32.eq - if - local.get $5 - f64.load offset=8 - local.set $6 - local.get $5 - f64.load - local.set $7 - i32.const 2 - global.set $~lib/argc - local.get $6 - local.get $7 - local.get $2 - call_indirect (type $FUNCSIG$idd) - i32.const 0 - i32.lt_s - if - local.get $5 - local.get $7 - f64.store offset=8 - local.get $5 - local.get $6 - f64.store - end - local.get $3 - local.set $8 - local.get $3 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/SORT<~lib/typedarray/Float64Array,f64>|inlined.0 - end - local.get $5 - local.set $10 - local.get $4 - local.set $9 - local.get $2 - local.set $8 - local.get $9 - i32.const 256 - i32.lt_s - if - local.get $10 - local.get $9 - local.get $8 - call $~lib/util/sort/insertionSort - else - local.get $10 - local.get $9 - local.get $8 - call $~lib/util/sort/weakHeapSort - end - local.get $3 - end - ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 66 ;) (type $FUNCSIG$idd) (param $0 f64) (param $1 f64) (result i32) - (local $2 i64) - (local $3 i64) - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $1 - i64.reinterpret_f64 - local.set $3 - local.get $2 - local.get $2 - i64.const 63 - i64.shr_s - i64.const 1 - i64.shr_u - i64.xor - local.set $2 - local.get $3 - local.get $3 - i64.const 63 - i64.shr_s - i64.const 1 - i64.shr_u - i64.xor - local.set $3 - local.get $2 - local.get $3 - i64.gt_s - local.get $2 - local.get $3 - i64.lt_s - i32.sub - ) - (func $~lib/typedarray/Float64Array#sort|trampoline (; 67 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - block $~lib/util/sort/COMPARATOR|inlined.0 (result i32) - i32.const 1 - br $~lib/util/sort/COMPARATOR|inlined.0 - end - local.set $1 - end - local.get $0 - local.get $1 - call $~lib/typedarray/Float64Array#sort - ) - (func $~lib/typedarray/Float64Array#__get (; 68 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 3 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 1308 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - f64.load - ) - (func $~lib/typedarray/Uint8ClampedArray#__set (; 69 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 295 - i32.const 44 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.add - local.get $2 - i32.const 31 - i32.shr_s - i32.const -1 - i32.xor - i32.const 255 - local.get $2 - i32.sub - i32.const 31 - i32.shr_s - local.get $2 - i32.or - i32.and - i32.store8 - ) - (func $~lib/typedarray/Uint8ClampedArray#__get (; 70 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 284 - i32.const 44 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.add - i32.load8_u - ) - (func $~lib/typedarray/Int8Array#__set (; 71 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 39 - i32.const 44 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.add - local.get $2 - i32.store8 - ) - (func $~lib/typedarray/Int8Array#fill (; 72 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $7 - local.get $1 - local.set $6 - local.get $2 - local.set $5 - local.get $3 - local.set $4 - local.get $7 - i32.load offset=4 - local.set $8 - local.get $7 - call $~lib/typedarray/Int8Array#get:length - local.set $9 - local.get $5 - i32.const 0 - i32.lt_s - if (result i32) - local.get $9 - local.get $5 - i32.add - local.tee $10 - i32.const 0 - local.tee $11 - local.get $10 - local.get $11 - i32.gt_s - select - else - local.get $5 - local.tee $10 - local.get $9 - local.tee $11 - local.get $10 - local.get $11 - i32.lt_s - select - end - local.set $5 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $9 - local.get $4 - i32.add - local.tee $10 - i32.const 0 - local.tee $11 - local.get $10 - local.get $11 - i32.gt_s - select - else - local.get $4 - local.tee $10 - local.get $9 - local.tee $11 - local.get $10 - local.get $11 - i32.lt_s - select - end - local.set $4 - local.get $5 - local.get $4 - i32.lt_s - if - local.get $8 - local.get $5 - i32.add - local.get $6 - local.get $4 - local.get $5 - i32.sub - call $~lib/memory/memory.fill - end - local.get $7 - ) - (func $~lib/rt/__allocArray (; 73 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - i32.const 16 - local.get $2 - call $~lib/rt/tlsf/__alloc - local.set $4 - local.get $0 - local.get $1 - i32.shl - local.set $5 - local.get $5 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $4 - local.get $6 - call $~lib/rt/pure/__retain - i32.store - local.get $4 - local.get $6 - i32.store offset=4 - local.get $4 - local.get $5 - i32.store offset=8 - local.get $4 - local.get $0 - i32.store offset=12 - local.get $3 - if - local.get $6 - local.get $3 - local.get $5 - call $~lib/memory/memory.copy - end - local.get $4 - ) - (func $~lib/array/Array#get:length (; 74 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/typedarray/Int8Array#__get (; 75 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 28 - i32.const 44 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.add - i32.load8_s - ) - (func $~lib/array/Array#__unchecked_get (; 76 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 0 - i32.shl - i32.add - i32.load8_s - ) - (func $~lib/array/Array#__get (; 77 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 280 - i32.const 512 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $std/typedarray/isInt8ArrayEqual (; 78 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/typedarray/Int8Array#get:length - local.get $1 - call $~lib/array/Array#get:length - i32.ne - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - block $break|0 - i32.const 0 - local.set $2 - local.get $0 - call $~lib/typedarray/Int8Array#get:length - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $2 - call $~lib/typedarray/Int8Array#__get - local.get $1 - local.get $2 - call $~lib/array/Array#__get - i32.ne - if - i32.const 0 - local.set $4 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int8Array#subarray (; 79 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/typedarray/Int8Array#get:length - local.set $6 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $4 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $4 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $4 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $3 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $3 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $3 - local.get $3 - local.tee $7 - local.get $4 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - local.set $3 - i32.const 12 - i32.const 3 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.tee $8 - local.get $5 - i32.load - local.tee $9 - local.get $8 - i32.load - local.tee $8 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $9 - i32.store - local.get $7 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 0 - i32.shl - i32.add - i32.store offset=4 - local.get $7 - local.get $3 - local.get $4 - i32.sub - i32.const 0 - i32.shl - i32.store offset=8 - local.get $7 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $~lib/typedarray/Int32Array#fill (; 80 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $7 - local.get $1 - local.set $6 - local.get $2 - local.set $5 - local.get $3 - local.set $4 - local.get $7 - i32.load offset=4 - local.set $8 - local.get $7 - call $~lib/typedarray/Int32Array#get:length - local.set $9 - local.get $5 - i32.const 0 - i32.lt_s - if (result i32) - local.get $9 - local.get $5 - i32.add - local.tee $10 - i32.const 0 - local.tee $11 - local.get $10 - local.get $11 - i32.gt_s - select - else - local.get $5 - local.tee $10 - local.get $9 - local.tee $11 - local.get $10 - local.get $11 - i32.lt_s - select - end - local.set $5 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $9 - local.get $4 - i32.add - local.tee $10 - i32.const 0 - local.tee $11 - local.get $10 - local.get $11 - i32.gt_s - select - else - local.get $4 - local.tee $10 - local.get $9 - local.tee $11 - local.get $10 - local.get $11 - i32.lt_s - select - end - local.set $4 - block $break|0 - loop $loop|0 - local.get $5 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $5 - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.store - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $7 - ) - (func $~lib/array/Array#get:length (; 81 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=12 - ) - (func $~lib/array/Array#__unchecked_get (; 82 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - ) - (func $~lib/array/Array#__get (; 83 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - local.get $0 - i32.load offset=12 - i32.ge_u - if - i32.const 280 - i32.const 512 - i32.const 96 - i32.const 41 - call $~lib/builtins/abort - unreachable - end - local.get $0 - local.get $1 - call $~lib/array/Array#__unchecked_get - local.set $2 - local.get $2 - ) - (func $std/typedarray/isInt32ArrayEqual (; 84 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/typedarray/Int32Array#get:length - local.get $1 - call $~lib/array/Array#get:length - i32.ne - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - block $break|0 - i32.const 0 - local.set $2 - local.get $0 - call $~lib/typedarray/Int32Array#get:length - local.set $3 - loop $loop|0 - local.get $2 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $2 - call $~lib/typedarray/Int32Array#__get - local.get $1 - local.get $2 - call $~lib/array/Array#__get - i32.ne - if - i32.const 0 - local.set $4 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $2 - i32.const 1 - i32.add - local.set $2 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $3 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int32Array#slice (; 85 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/typedarray/Int32Array#get:length - local.set $6 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $4 - local.get $6 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $4 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $4 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $3 - local.get $6 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $3 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $3 - local.get $3 - local.get $4 - i32.sub - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - local.set $6 - i32.const 0 - local.get $6 - call $~lib/typedarray/Int32Array#constructor - local.tee $7 - call $~lib/rt/pure/__retain - local.set $8 - local.get $8 - i32.load offset=4 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 2 - i32.shl - i32.add - local.get $6 - i32.const 2 - i32.shl - call $~lib/memory/memory.copy - local.get $8 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $~lib/typedarray/Int32Array#copyWithin (; 86 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $7 - local.get $1 - local.set $6 - local.get $2 - local.set $5 - local.get $3 - local.set $4 - local.get $7 - call $~lib/typedarray/Int32Array#get:length - local.set $8 - local.get $7 - i32.load offset=4 - local.set $9 - local.get $4 - local.tee $10 - local.get $8 - local.tee $11 - local.get $10 - local.get $11 - i32.lt_s - select - local.set $4 - local.get $6 - i32.const 0 - i32.lt_s - if (result i32) - local.get $8 - local.get $6 - i32.add - local.tee $10 - i32.const 0 - local.tee $11 - local.get $10 - local.get $11 - i32.gt_s - select - else - local.get $6 - local.tee $10 - local.get $8 - local.tee $11 - local.get $10 - local.get $11 - i32.lt_s - select - end - local.set $10 - local.get $5 - i32.const 0 - i32.lt_s - if (result i32) - local.get $8 - local.get $5 - i32.add - local.tee $11 - i32.const 0 - local.tee $12 - local.get $11 - local.get $12 - i32.gt_s - select - else - local.get $5 - local.tee $11 - local.get $8 - local.tee $12 - local.get $11 - local.get $12 - i32.lt_s - select - end - local.set $11 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $8 - local.get $4 - i32.add - local.tee $12 - i32.const 0 - local.tee $13 - local.get $12 - local.get $13 - i32.gt_s - select - else - local.get $4 - local.tee $12 - local.get $8 - local.tee $13 - local.get $12 - local.get $13 - i32.lt_s - select - end - local.set $12 - local.get $12 - local.get $11 - i32.sub - local.tee $13 - local.get $8 - local.get $10 - i32.sub - local.tee $14 - local.get $13 - local.get $14 - i32.lt_s - select - local.set $13 - local.get $9 - local.get $10 - i32.const 2 - i32.shl - i32.add - local.get $9 - local.get $11 - i32.const 2 - i32.shl - i32.add - local.get $13 - i32.const 2 - i32.shl - call $~lib/memory/memory.copy - local.get $7 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 87 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Int8Array#reduce (; 88 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - i32.const 0 - local.set $7 - local.get $5 - call $~lib/typedarray/Int8Array#get:length - local.set $8 - loop $loop|0 - local.get $7 - local.get $8 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Int8Array,i8> (; 89 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 2 - i32.const 0 - call $~lib/typedarray/Int8Array#reduce - local.set $2 - local.get $2 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 323 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint8Array#__set (; 90 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 167 - i32.const 44 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.add - local.get $2 - i32.store8 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 91 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint8Array#reduce (; 92 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - i32.const 0 - local.set $7 - local.get $5 - call $~lib/typedarray/Uint8Array#get:length - local.set $8 - loop $loop|0 - local.get $7 - local.get $8 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Uint8Array,u8> (; 93 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint8Array#reduce - local.set $2 - local.get $2 - i32.const 255 - i32.and - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 323 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduce<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 94 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint8ClampedArray#reduce (; 95 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - i32.const 0 - local.set $7 - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.set $8 - loop $loop|0 - local.get $7 - local.get $8 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Uint8ClampedArray,u8> (; 96 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 4 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#reduce - local.set $2 - local.get $2 - i32.const 255 - i32.and - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 323 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int16Array#__set (; 97 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 1 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 423 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.get $2 - i32.store16 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 98 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Int16Array#reduce (; 99 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - i32.const 0 - local.set $7 - local.get $5 - call $~lib/typedarray/Int16Array#get:length - local.set $8 - loop $loop|0 - local.get $7 - local.get $8 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 1 - i32.shl - i32.add - i32.load16_s - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Int16Array,i16> (; 100 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 5 - i32.const 0 - call $~lib/typedarray/Int16Array#reduce - local.set $2 - local.get $2 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 323 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint16Array#__set (; 101 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 1 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 551 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.get $2 - i32.store16 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 102 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint16Array#reduce (; 103 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - i32.const 0 - local.set $7 - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - local.set $8 - loop $loop|0 - local.get $7 - local.get $8 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Uint16Array,u16> (; 104 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 6 - i32.const 0 - call $~lib/typedarray/Uint16Array#reduce - local.set $2 - local.get $2 - i32.const 65535 - i32.and - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 323 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduce<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 105 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Int32Array#reduce (; 106 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - i32.const 0 - local.set $7 - local.get $5 - call $~lib/typedarray/Int32Array#get:length - local.set $8 - loop $loop|0 - local.get $7 - local.get $8 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Int32Array,i32> (; 107 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 7 - i32.const 0 - call $~lib/typedarray/Int32Array#reduce - local.set $2 - local.get $2 - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 323 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint32Array#__set (; 108 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 807 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.get $2 - i32.store - ) - (func $std/typedarray/testReduce<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 109 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint32Array#reduce (; 110 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - i32.const 0 - local.set $7 - local.get $5 - call $~lib/typedarray/Uint32Array#get:length - local.set $8 - loop $loop|0 - local.get $7 - local.get $8 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Uint32Array,u32> (; 111 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 8 - i32.const 0 - call $~lib/typedarray/Uint32Array#reduce - local.set $2 - local.get $2 - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 323 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int64Array#__set (; 112 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 3 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 935 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - local.get $2 - i64.store - ) - (func $std/typedarray/testReduce<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 113 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) - (local $4 i64) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i64.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Int64Array#reduce (; 114 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) - (local $3 i64) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i64) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - i32.const 0 - local.set $7 - local.get $5 - call $~lib/typedarray/Int64Array#get:length - local.set $8 - loop $loop|0 - local.get $7 - local.get $8 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$jjjii) - local.set $3 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Int64Array,i64> (; 115 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i64) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 1 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 1 - i64.const 2 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 2 - i64.const 3 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 9 - i64.const 0 - call $~lib/typedarray/Int64Array#reduce - local.set $2 - local.get $2 - i64.const 6 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 323 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint64Array#__set (; 116 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 3 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 1063 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - local.get $2 - i64.store - ) - (func $std/typedarray/testReduce<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 117 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) - (local $4 i64) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i64.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint64Array#reduce (; 118 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) - (local $3 i64) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i64) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - i32.const 0 - local.set $7 - local.get $5 - call $~lib/typedarray/Uint64Array#get:length - local.set $8 - loop $loop|0 - local.get $7 - local.get $8 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$jjjii) - local.set $3 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Uint64Array,u64> (; 119 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i64) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 1 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 1 - i64.const 2 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 2 - i64.const 3 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 10 - i64.const 0 - call $~lib/typedarray/Uint64Array#reduce - local.set $2 - local.get $2 - i64.const 6 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 323 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Float32Array#__set (; 120 ;) (type $FUNCSIG$viif) (param $0 i32) (param $1 i32) (param $2 f32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 1191 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - local.get $2 - f32.store - ) - (func $std/typedarray/testReduce<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 121 ;) (type $FUNCSIG$fffii) (param $0 f32) (param $1 f32) (param $2 i32) (param $3 i32) (result f32) - (local $4 f32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - f32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Float32Array#reduce (; 122 ;) (type $FUNCSIG$fiif) (param $0 i32) (param $1 i32) (param $2 f32) (result f32) - (local $3 f32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 f32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - i32.const 0 - local.set $7 - local.get $5 - call $~lib/typedarray/Float32Array#get:length - local.set $8 - loop $loop|0 - local.get $7 - local.get $8 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 2 - i32.shl - i32.add - f32.load - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$fffii) - local.set $3 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Float32Array,f32> (; 123 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 f32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f32.const 1 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 1 - f32.const 2 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 2 - f32.const 3 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 11 - f32.const 0 - call $~lib/typedarray/Float32Array#reduce - local.set $2 - local.get $2 - f32.const 6 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 323 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduce<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 124 ;) (type $FUNCSIG$dddii) (param $0 f64) (param $1 f64) (param $2 i32) (param $3 i32) (result f64) - (local $4 f64) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - f64.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Float64Array#reduce (; 125 ;) (type $FUNCSIG$diid) (param $0 i32) (param $1 i32) (param $2 f64) (result f64) - (local $3 f64) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 f64) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - i32.const 0 - local.set $7 - local.get $5 - call $~lib/typedarray/Float64Array#get:length - local.set $8 - loop $loop|0 - local.get $7 - local.get $8 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 3 - i32.shl - i32.add - f64.load - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$dddii) - local.set $3 - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $std/typedarray/testReduce<~lib/typedarray/Float64Array,f64> (; 126 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 f64) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f64.const 1 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 1 - f64.const 2 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 2 - f64.const 3 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 12 - f64.const 0 - call $~lib/typedarray/Float64Array#reduce - local.set $2 - local.get $2 - f64.const 6 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 323 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 127 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Int8Array#reduceRight (; 128 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - local.get $5 - call $~lib/typedarray/Int8Array#get:length - i32.const 1 - i32.sub - local.set $7 - loop $loop|0 - local.get $7 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $7 - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Int8Array,i8> (; 129 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 13 - i32.const 0 - call $~lib/typedarray/Int8Array#reduceRight - local.set $2 - local.get $2 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 344 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 130 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint8Array#reduceRight (; 131 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - local.get $5 - call $~lib/typedarray/Uint8Array#get:length - i32.const 1 - i32.sub - local.set $7 - loop $loop|0 - local.get $7 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $7 - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Uint8Array,u8> (; 132 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 14 - i32.const 0 - call $~lib/typedarray/Uint8Array#reduceRight - local.set $2 - local.get $2 - i32.const 255 - i32.and - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 344 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 133 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint8ClampedArray#reduceRight (; 134 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.const 1 - i32.sub - local.set $7 - loop $loop|0 - local.get $7 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $7 - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Uint8ClampedArray,u8> (; 135 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 15 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#reduceRight - local.set $2 - local.get $2 - i32.const 255 - i32.and - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 344 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 136 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Int16Array#reduceRight (; 137 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - local.get $5 - call $~lib/typedarray/Int16Array#get:length - i32.const 1 - i32.sub - local.set $7 - loop $loop|0 - local.get $7 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 1 - i32.shl - i32.add - i32.load16_s - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $7 - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Int16Array,i16> (; 138 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 16 - i32.const 0 - call $~lib/typedarray/Int16Array#reduceRight - local.set $2 - local.get $2 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 344 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 139 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint16Array#reduceRight (; 140 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - i32.const 1 - i32.sub - local.set $7 - loop $loop|0 - local.get $7 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $7 - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Uint16Array,u16> (; 141 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 17 - i32.const 0 - call $~lib/typedarray/Uint16Array#reduceRight - local.set $2 - local.get $2 - i32.const 65535 - i32.and - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 344 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 142 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Int32Array#reduceRight (; 143 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - local.get $5 - call $~lib/typedarray/Int32Array#get:length - i32.const 1 - i32.sub - local.set $7 - loop $loop|0 - local.get $7 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $7 - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Int32Array,i32> (; 144 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 18 - i32.const 0 - call $~lib/typedarray/Int32Array#reduceRight - local.set $2 - local.get $2 - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 344 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 145 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (local $4 i32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint32Array#reduceRight (; 146 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - local.get $5 - call $~lib/typedarray/Uint32Array#get:length - i32.const 1 - i32.sub - local.set $7 - loop $loop|0 - local.get $7 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$iiiii) - local.set $3 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $7 - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Uint32Array,u32> (; 147 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 19 - i32.const 0 - call $~lib/typedarray/Uint32Array#reduceRight - local.set $2 - local.get $2 - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 344 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 148 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) - (local $4 i64) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i64.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Int64Array#reduceRight (; 149 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) - (local $3 i64) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - local.get $5 - call $~lib/typedarray/Int64Array#get:length - i32.const 1 - i32.sub - local.set $7 - loop $loop|0 - local.get $7 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$jjjii) - local.set $3 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Int64Array,i64> (; 150 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i64) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 1 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 1 - i64.const 2 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 2 - i64.const 3 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 20 - i64.const 0 - call $~lib/typedarray/Int64Array#reduceRight - local.set $2 - local.get $2 - i64.const 6 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 344 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 151 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) - (local $4 i64) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i64.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint64Array#reduceRight (; 152 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) - (local $3 i64) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - local.get $5 - call $~lib/typedarray/Uint64Array#get:length - i32.const 1 - i32.sub - local.set $7 - loop $loop|0 - local.get $7 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$jjjii) - local.set $3 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Uint64Array,u64> (; 153 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i64) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 1 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 1 - i64.const 2 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 2 - i64.const 3 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 21 - i64.const 0 - call $~lib/typedarray/Uint64Array#reduceRight - local.set $2 - local.get $2 - i64.const 6 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 344 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 154 ;) (type $FUNCSIG$fffii) (param $0 f32) (param $1 f32) (param $2 i32) (param $3 i32) (result f32) - (local $4 f32) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - f32.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Float32Array#reduceRight (; 155 ;) (type $FUNCSIG$fiif) (param $0 i32) (param $1 i32) (param $2 f32) (result f32) - (local $3 f32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 f32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - local.get $5 - call $~lib/typedarray/Float32Array#get:length - i32.const 1 - i32.sub - local.set $7 - loop $loop|0 - local.get $7 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 2 - i32.shl - i32.add - f32.load - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$fffii) - local.set $3 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Float32Array,f32> (; 156 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 f32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f32.const 1 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 1 - f32.const 2 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 2 - f32.const 3 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 22 - f32.const 0 - call $~lib/typedarray/Float32Array#reduceRight - local.set $2 - local.get $2 - f32.const 6 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 344 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 157 ;) (type $FUNCSIG$dddii) (param $0 f64) (param $1 f64) (param $2 i32) (param $3 i32) (result f64) - (local $4 f64) - local.get $3 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - f64.add - local.set $4 - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Float64Array#reduceRight (; 158 ;) (type $FUNCSIG$diid) (param $0 i32) (param $1 i32) (param $2 f64) (result f64) - (local $3 f64) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 f64) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i32.load offset=4 - local.set $6 - block $break|0 - local.get $5 - call $~lib/typedarray/Float64Array#get:length - i32.const 1 - i32.sub - local.set $7 - loop $loop|0 - local.get $7 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - i32.const 4 - global.set $~lib/argc - local.get $3 - local.get $6 - local.get $7 - i32.const 3 - i32.shl - i32.add - f64.load - local.get $7 - local.get $5 - local.get $4 - call_indirect (type $FUNCSIG$dddii) - local.set $3 - local.get $7 - i32.const 1 - i32.sub - local.set $7 - br $loop|0 - end - unreachable - end - local.get $3 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $std/typedarray/testReduceRight<~lib/typedarray/Float64Array,f64> (; 159 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 f64) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f64.const 1 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 1 - f64.const 2 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 2 - f64.const 3 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 23 - f64.const 0 - call $~lib/typedarray/Float64Array#reduceRight - local.set $2 - local.get $2 - f64.const 6 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 344 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 160 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $0 - i32.mul - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int8Array#map (; 161 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Int8Array#get:length - local.set $4 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $4 - i32.const 0 - i32.shl - local.set $6 - i32.const 12 - i32.const 3 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $8 - local.get $7 - local.tee $9 - local.get $8 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $7 - local.get $8 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=8 - block $break|0 - i32.const 0 - local.set $10 - loop $loop|0 - local.get $10 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $10 - i32.const 0 - i32.shl - i32.add - i32.const 3 - global.set $~lib/argc - local.get $5 - local.get $10 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.get $10 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - i32.store8 - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $loop|0 - end - unreachable - end - local.get $7 - local.set $10 - local.get $3 - call $~lib/rt/pure/__release - local.get $10 - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8> (; 162 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 24 - call $~lib/typedarray/Int8Array#map - local.set $2 - local.get $2 - i32.const 0 - call $~lib/typedarray/Int8Array#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 365 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Int8Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 366 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Int8Array#__get - i32.const 9 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 367 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 163 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $0 - i32.mul - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint8Array#map (; 164 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Uint8Array#get:length - local.set $4 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $4 - i32.const 0 - i32.shl - local.set $6 - i32.const 12 - i32.const 4 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $8 - local.get $7 - local.tee $9 - local.get $8 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $7 - local.get $8 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=8 - block $break|0 - i32.const 0 - local.set $10 - loop $loop|0 - local.get $10 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $10 - i32.const 0 - i32.shl - i32.add - i32.const 3 - global.set $~lib/argc - local.get $5 - local.get $10 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $10 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - i32.store8 - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $loop|0 - end - unreachable - end - local.get $7 - local.set $10 - local.get $3 - call $~lib/rt/pure/__release - local.get $10 - ) - (func $~lib/typedarray/Uint8Array#__get (; 165 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 156 - i32.const 44 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.add - i32.load8_u - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Uint8Array,u8> (; 166 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 25 - call $~lib/typedarray/Uint8Array#map - local.set $2 - local.get $2 - i32.const 0 - call $~lib/typedarray/Uint8Array#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 365 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Uint8Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 366 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Uint8Array#__get - i32.const 9 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 367 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 167 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $0 - i32.mul - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint8ClampedArray#map (; 168 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.set $4 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $4 - i32.const 0 - i32.shl - local.set $6 - i32.const 12 - i32.const 5 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $8 - local.get $7 - local.tee $9 - local.get $8 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $7 - local.get $8 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=8 - block $break|0 - i32.const 0 - local.set $10 - loop $loop|0 - local.get $10 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $10 - i32.const 0 - i32.shl - i32.add - i32.const 3 - global.set $~lib/argc - local.get $5 - local.get $10 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $10 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - i32.store8 - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $loop|0 - end - unreachable - end - local.get $7 - local.set $10 - local.get $3 - call $~lib/rt/pure/__release - local.get $10 - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Uint8ClampedArray,u8> (; 169 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 26 - call $~lib/typedarray/Uint8ClampedArray#map - local.set $2 - local.get $2 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 365 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 366 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 9 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 367 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 170 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $0 - i32.mul - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int16Array#map (; 171 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Int16Array#get:length - local.set $4 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $4 - i32.const 1 - i32.shl - local.set $6 - i32.const 12 - i32.const 6 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $8 - local.get $7 - local.tee $9 - local.get $8 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $7 - local.get $8 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=8 - block $break|0 - i32.const 0 - local.set $10 - loop $loop|0 - local.get $10 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $10 - i32.const 1 - i32.shl - i32.add - i32.const 3 - global.set $~lib/argc - local.get $5 - local.get $10 - i32.const 1 - i32.shl - i32.add - i32.load16_s - local.get $10 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - i32.store16 - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $loop|0 - end - unreachable - end - local.get $7 - local.set $10 - local.get $3 - call $~lib/rt/pure/__release - local.get $10 - ) - (func $~lib/typedarray/Int16Array#__get (; 172 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 1 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 412 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.load16_s - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Int16Array,i16> (; 173 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 27 - call $~lib/typedarray/Int16Array#map - local.set $2 - local.get $2 - i32.const 0 - call $~lib/typedarray/Int16Array#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 365 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Int16Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 366 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Int16Array#__get - i32.const 9 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 367 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 174 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $0 - i32.mul - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint16Array#map (; 175 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Uint16Array#get:length - local.set $4 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $4 - i32.const 1 - i32.shl - local.set $6 - i32.const 12 - i32.const 7 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $8 - local.get $7 - local.tee $9 - local.get $8 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $7 - local.get $8 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=8 - block $break|0 - i32.const 0 - local.set $10 - loop $loop|0 - local.get $10 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $10 - i32.const 1 - i32.shl - i32.add - i32.const 3 - global.set $~lib/argc - local.get $5 - local.get $10 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.get $10 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - i32.store16 - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $loop|0 - end - unreachable - end - local.get $7 - local.set $10 - local.get $3 - call $~lib/rt/pure/__release - local.get $10 - ) - (func $~lib/typedarray/Uint16Array#__get (; 176 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 1 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 540 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.load16_u - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Uint16Array,u16> (; 177 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 28 - call $~lib/typedarray/Uint16Array#map - local.set $2 - local.get $2 - i32.const 0 - call $~lib/typedarray/Uint16Array#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 365 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Uint16Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 366 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Uint16Array#__get - i32.const 9 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 367 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 178 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $0 - i32.mul - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int32Array#map (; 179 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Int32Array#get:length - local.set $4 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $4 - i32.const 2 - i32.shl - local.set $6 - i32.const 12 - i32.const 8 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $8 - local.get $7 - local.tee $9 - local.get $8 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $7 - local.get $8 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=8 - block $break|0 - i32.const 0 - local.set $10 - loop $loop|0 - local.get $10 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $10 - i32.const 2 - i32.shl - i32.add - i32.const 3 - global.set $~lib/argc - local.get $5 - local.get $10 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $10 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - i32.store - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $loop|0 - end - unreachable - end - local.get $7 - local.set $10 - local.get $3 - call $~lib/rt/pure/__release - local.get $10 - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Int32Array,i32> (; 180 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 29 - call $~lib/typedarray/Int32Array#map - local.set $2 - local.get $2 - i32.const 0 - call $~lib/typedarray/Int32Array#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 365 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Int32Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 366 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Int32Array#__get - i32.const 9 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 367 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 181 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $0 - i32.mul - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint32Array#map (; 182 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Uint32Array#get:length - local.set $4 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $4 - i32.const 2 - i32.shl - local.set $6 - i32.const 12 - i32.const 9 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $8 - local.get $7 - local.tee $9 - local.get $8 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $7 - local.get $8 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=8 - block $break|0 - i32.const 0 - local.set $10 - loop $loop|0 - local.get $10 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $10 - i32.const 2 - i32.shl - i32.add - i32.const 3 - global.set $~lib/argc - local.get $5 - local.get $10 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $10 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - i32.store - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $loop|0 - end - unreachable - end - local.get $7 - local.set $10 - local.get $3 - call $~lib/rt/pure/__release - local.get $10 - ) - (func $~lib/typedarray/Uint32Array#__get (; 183 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 796 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Uint32Array,u32> (; 184 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 30 - call $~lib/typedarray/Uint32Array#map - local.set $2 - local.get $2 - i32.const 0 - call $~lib/typedarray/Uint32Array#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 365 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Uint32Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 366 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Uint32Array#__get - i32.const 9 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 367 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 185 ;) (type $FUNCSIG$jjii) (param $0 i64) (param $1 i32) (param $2 i32) (result i64) - (local $3 i64) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $0 - i64.mul - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int64Array#map (; 186 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Int64Array#get:length - local.set $4 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $4 - i32.const 3 - i32.shl - local.set $6 - i32.const 12 - i32.const 10 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $8 - local.get $7 - local.tee $9 - local.get $8 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $7 - local.get $8 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=8 - block $break|0 - i32.const 0 - local.set $10 - loop $loop|0 - local.get $10 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $10 - i32.const 3 - i32.shl - i32.add - i32.const 3 - global.set $~lib/argc - local.get $5 - local.get $10 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $10 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$jjii) - i64.store - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $loop|0 - end - unreachable - end - local.get $7 - local.set $10 - local.get $3 - call $~lib/rt/pure/__release - local.get $10 - ) - (func $~lib/typedarray/Int64Array#__get (; 187 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 3 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 924 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - i64.load - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Int64Array,i64> (; 188 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 1 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 1 - i64.const 2 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 2 - i64.const 3 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 31 - call $~lib/typedarray/Int64Array#map - local.set $2 - local.get $2 - i32.const 0 - call $~lib/typedarray/Int64Array#__get - i64.const 1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 365 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Int64Array#__get - i64.const 4 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 366 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Int64Array#__get - i64.const 9 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 367 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 189 ;) (type $FUNCSIG$jjii) (param $0 i64) (param $1 i32) (param $2 i32) (result i64) - (local $3 i64) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $0 - i64.mul - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint64Array#map (; 190 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Uint64Array#get:length - local.set $4 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $4 - i32.const 3 - i32.shl - local.set $6 - i32.const 12 - i32.const 11 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $8 - local.get $7 - local.tee $9 - local.get $8 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $7 - local.get $8 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=8 - block $break|0 - i32.const 0 - local.set $10 - loop $loop|0 - local.get $10 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $10 - i32.const 3 - i32.shl - i32.add - i32.const 3 - global.set $~lib/argc - local.get $5 - local.get $10 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $10 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$jjii) - i64.store - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $loop|0 - end - unreachable - end - local.get $7 - local.set $10 - local.get $3 - call $~lib/rt/pure/__release - local.get $10 - ) - (func $~lib/typedarray/Uint64Array#__get (; 191 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 3 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 1052 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - i64.load - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Uint64Array,u64> (; 192 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 1 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 1 - i64.const 2 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 2 - i64.const 3 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 32 - call $~lib/typedarray/Uint64Array#map - local.set $2 - local.get $2 - i32.const 0 - call $~lib/typedarray/Uint64Array#__get - i64.const 1 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 365 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Uint64Array#__get - i64.const 4 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 366 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Uint64Array#__get - i64.const 9 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 367 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 193 ;) (type $FUNCSIG$ffii) (param $0 f32) (param $1 i32) (param $2 i32) (result f32) - (local $3 f32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $0 - f32.mul - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Float32Array#map (; 194 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Float32Array#get:length - local.set $4 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $4 - i32.const 2 - i32.shl - local.set $6 - i32.const 12 - i32.const 12 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $8 - local.get $7 - local.tee $9 - local.get $8 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $7 - local.get $8 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=8 - block $break|0 - i32.const 0 - local.set $10 - loop $loop|0 - local.get $10 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $10 - i32.const 2 - i32.shl - i32.add - i32.const 3 - global.set $~lib/argc - local.get $5 - local.get $10 - i32.const 2 - i32.shl - i32.add - f32.load - local.get $10 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ffii) - f32.store - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $loop|0 - end - unreachable - end - local.get $7 - local.set $10 - local.get $3 - call $~lib/rt/pure/__release - local.get $10 - ) - (func $~lib/typedarray/Float32Array#__get (; 195 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) - local.get $1 - local.get $0 - i32.load offset=8 - i32.const 2 - i32.shr_u - i32.ge_u - if - i32.const 280 - i32.const 432 - i32.const 1180 - i32.const 63 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 2 - i32.shl - i32.add - f32.load - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Float32Array,f32> (; 196 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f32.const 1 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 1 - f32.const 2 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 2 - f32.const 3 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 33 - call $~lib/typedarray/Float32Array#map - local.set $2 - local.get $2 - i32.const 0 - call $~lib/typedarray/Float32Array#__get - f32.const 1 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 365 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Float32Array#__get - f32.const 4 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 366 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Float32Array#__get - f32.const 9 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 367 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 197 ;) (type $FUNCSIG$ddii) (param $0 f64) (param $1 i32) (param $2 i32) (result f64) - (local $3 f64) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $0 - f64.mul - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Float64Array#map (; 198 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Float64Array#get:length - local.set $4 - local.get $3 - i32.load offset=4 - local.set $5 - local.get $4 - i32.const 3 - i32.shl - local.set $6 - i32.const 12 - i32.const 13 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $8 - local.get $7 - local.tee $9 - local.get $8 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $7 - local.get $8 - i32.store offset=4 - local.get $7 - local.get $6 - i32.store offset=8 - block $break|0 - i32.const 0 - local.set $10 - loop $loop|0 - local.get $10 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $10 - i32.const 3 - i32.shl - i32.add - i32.const 3 - global.set $~lib/argc - local.get $5 - local.get $10 - i32.const 3 - i32.shl - i32.add - f64.load - local.get $10 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ddii) - f64.store - local.get $10 - i32.const 1 - i32.add - local.set $10 - br $loop|0 - end - unreachable - end - local.get $7 - local.set $10 - local.get $3 - call $~lib/rt/pure/__release - local.get $10 - ) - (func $std/typedarray/testArrayMap<~lib/typedarray/Float64Array,f64> (; 199 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f64.const 1 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 1 - f64.const 2 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 2 - f64.const 3 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 34 - call $~lib/typedarray/Float64Array#map - local.set $2 - local.get $2 - i32.const 0 - call $~lib/typedarray/Float64Array#__get - f64.const 1 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 365 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Float64Array#__get - f64.const 4 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 366 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Float64Array#__get - f64.const 9 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 367 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 200 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 2 - i32.gt_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/rt/tlsf/reallocateBlock (; 201 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $2 - call $~lib/rt/tlsf/prepareSize - local.set $3 - local.get $1 - i32.load - local.set $4 - local.get $4 - i32.const 1 - i32.and - i32.eqz - if (result i32) - local.get $1 - i32.load offset=4 - i32.const -268435456 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 521 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - local.get $4 - i32.const -4 - i32.and - i32.le_u - if - local.get $0 - local.get $1 - local.get $3 - call $~lib/rt/tlsf/prepareBlock - local.get $1 - local.get $2 - i32.store offset=12 - local.get $1 - return - end - local.get $1 - local.set $5 - local.get $5 - i32.const 16 - i32.add - local.get $5 - i32.load - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $6 - local.get $6 - i32.load - local.set $7 - local.get $7 - i32.const 1 - i32.and - if - local.get $4 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.const 16 - i32.add - local.get $7 - i32.const 3 - i32.const -1 - i32.xor - i32.and - i32.add - local.set $5 - local.get $5 - local.get $3 - i32.ge_u - if - local.get $0 - local.get $6 - call $~lib/rt/tlsf/removeBlock - local.get $1 - local.get $4 - i32.const 3 - i32.and - local.get $5 - i32.or - i32.store - local.get $1 - local.get $2 - i32.store offset=12 - local.get $0 - local.get $1 - local.get $3 - call $~lib/rt/tlsf/prepareBlock - local.get $1 - return - end - end - local.get $0 - local.get $2 - call $~lib/rt/tlsf/allocateBlock - local.set $8 - local.get $8 - local.get $1 - i32.load offset=8 - i32.store offset=8 - local.get $8 - i32.const 16 - i32.add - local.get $1 - i32.const 16 - i32.add - local.get $2 - call $~lib/memory/memory.copy - local.get $1 - local.get $4 - i32.const 1 - i32.or - i32.store - local.get $0 - local.get $1 - call $~lib/rt/tlsf/insertBlock - local.get $1 - call $~lib/rt/rtrace/onfree - local.get $8 - ) - (func $~lib/rt/tlsf/__realloc (; 202 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - global.get $~lib/rt/tlsf/ROOT - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 585 - i32.const 13 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.ne - if (result i32) - local.get $0 - i32.const 15 - i32.and - i32.eqz - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 128 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - global.get $~lib/rt/tlsf/ROOT - local.get $0 - i32.const 16 - i32.sub - local.get $1 - call $~lib/rt/tlsf/reallocateBlock - i32.const 16 - i32.add - ) - (func $~lib/typedarray/Int8Array#filter (; 203 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Int8Array#get:length - local.set $4 - i32.const 12 - i32.const 3 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - i32.const 0 - i32.shl - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $3 - i32.load offset=4 - local.set $7 - i32.const 0 - local.set $8 - block $break|0 - i32.const 0 - local.set $9 - loop $loop|0 - local.get $9 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $7 - local.get $9 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.set $10 - i32.const 3 - global.set $~lib/argc - local.get $10 - local.get $9 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $6 - local.get $8 - local.tee $11 - i32.const 1 - i32.add - local.set $8 - local.get $11 - i32.const 0 - i32.shl - i32.add - local.get $10 - i32.store8 - end - local.get $9 - i32.const 1 - i32.add - local.set $9 - br $loop|0 - end - unreachable - end - local.get $8 - i32.const 0 - i32.shl - local.set $10 - local.get $6 - local.get $10 - call $~lib/rt/tlsf/__realloc - local.set $9 - local.get $5 - local.tee $11 - local.get $9 - local.tee $12 - local.get $11 - i32.load - local.tee $11 - i32.ne - if - local.get $12 - call $~lib/rt/pure/__retain - drop - local.get $11 - call $~lib/rt/pure/__release - end - local.get $12 - i32.store - local.get $5 - local.get $9 - i32.store offset=4 - local.get $5 - local.get $10 - i32.store offset=8 - local.get $5 - local.set $12 - local.get $3 - call $~lib/rt/pure/__release - local.get $12 - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Int8Array,i8> (; 204 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 6 - call $~lib/typedarray/Int8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 5 - i32.const 5 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 35 - call $~lib/typedarray/Int8Array#filter - local.set $2 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 390 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/typedarray/Int8Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 391 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 0 - call $~lib/typedarray/Int8Array#__get - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 392 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Int8Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 393 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Int8Array#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 394 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 205 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 2 - i32.gt_u - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint8Array#filter (; 206 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Uint8Array#get:length - local.set $4 - i32.const 12 - i32.const 4 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - i32.const 0 - i32.shl - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $3 - i32.load offset=4 - local.set $7 - i32.const 0 - local.set $8 - block $break|0 - i32.const 0 - local.set $9 - loop $loop|0 - local.get $9 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $7 - local.get $9 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.set $10 - i32.const 3 - global.set $~lib/argc - local.get $10 - local.get $9 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $6 - local.get $8 - local.tee $11 - i32.const 1 - i32.add - local.set $8 - local.get $11 - i32.const 0 - i32.shl - i32.add - local.get $10 - i32.store8 - end - local.get $9 - i32.const 1 - i32.add - local.set $9 - br $loop|0 - end - unreachable - end - local.get $8 - i32.const 0 - i32.shl - local.set $10 - local.get $6 - local.get $10 - call $~lib/rt/tlsf/__realloc - local.set $9 - local.get $5 - local.tee $11 - local.get $9 - local.tee $12 - local.get $11 - i32.load - local.tee $11 - i32.ne - if - local.get $12 - call $~lib/rt/pure/__retain - drop - local.get $11 - call $~lib/rt/pure/__release - end - local.get $12 - i32.store - local.get $5 - local.get $9 - i32.store offset=4 - local.get $5 - local.get $10 - i32.store offset=8 - local.get $5 - local.set $12 - local.get $3 - call $~lib/rt/pure/__release - local.get $12 - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8> (; 207 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 6 - call $~lib/typedarray/Uint8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 5 - i32.const 5 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 36 - call $~lib/typedarray/Uint8Array#filter - local.set $2 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 390 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/typedarray/Uint8Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 391 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 0 - call $~lib/typedarray/Uint8Array#__get - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 392 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Uint8Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 393 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Uint8Array#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 394 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 208 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 2 - i32.gt_u - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint8ClampedArray#filter (; 209 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.set $4 - i32.const 12 - i32.const 5 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - i32.const 0 - i32.shl - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $3 - i32.load offset=4 - local.set $7 - i32.const 0 - local.set $8 - block $break|0 - i32.const 0 - local.set $9 - loop $loop|0 - local.get $9 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $7 - local.get $9 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.set $10 - i32.const 3 - global.set $~lib/argc - local.get $10 - local.get $9 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $6 - local.get $8 - local.tee $11 - i32.const 1 - i32.add - local.set $8 - local.get $11 - i32.const 0 - i32.shl - i32.add - local.get $10 - i32.store8 - end - local.get $9 - i32.const 1 - i32.add - local.set $9 - br $loop|0 - end - unreachable - end - local.get $8 - i32.const 0 - i32.shl - local.set $10 - local.get $6 - local.get $10 - call $~lib/rt/tlsf/__realloc - local.set $9 - local.get $5 - local.tee $11 - local.get $9 - local.tee $12 - local.get $11 - i32.load - local.tee $11 - i32.ne - if - local.get $12 - call $~lib/rt/pure/__retain - drop - local.get $11 - call $~lib/rt/pure/__release - end - local.get $12 - i32.store - local.get $5 - local.get $9 - i32.store offset=4 - local.get $5 - local.get $10 - i32.store offset=8 - local.get $5 - local.set $12 - local.get $3 - call $~lib/rt/pure/__release - local.get $12 - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8ClampedArray,u8> (; 210 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 6 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 5 - i32.const 5 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 37 - call $~lib/typedarray/Uint8ClampedArray#filter - local.set $2 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 390 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 391 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 392 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 393 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 394 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 211 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.const 2 - i32.gt_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int16Array#filter (; 212 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Int16Array#get:length - local.set $4 - i32.const 12 - i32.const 6 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - i32.const 1 - i32.shl - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $3 - i32.load offset=4 - local.set $7 - i32.const 0 - local.set $8 - block $break|0 - i32.const 0 - local.set $9 - loop $loop|0 - local.get $9 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $7 - local.get $9 - i32.const 1 - i32.shl - i32.add - i32.load16_s - local.set $10 - i32.const 3 - global.set $~lib/argc - local.get $10 - local.get $9 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $6 - local.get $8 - local.tee $11 - i32.const 1 - i32.add - local.set $8 - local.get $11 - i32.const 1 - i32.shl - i32.add - local.get $10 - i32.store16 - end - local.get $9 - i32.const 1 - i32.add - local.set $9 - br $loop|0 - end - unreachable - end - local.get $8 - i32.const 1 - i32.shl - local.set $10 - local.get $6 - local.get $10 - call $~lib/rt/tlsf/__realloc - local.set $9 - local.get $5 - local.tee $11 - local.get $9 - local.tee $12 - local.get $11 - i32.load - local.tee $11 - i32.ne - if - local.get $12 - call $~lib/rt/pure/__retain - drop - local.get $11 - call $~lib/rt/pure/__release - end - local.get $12 - i32.store - local.get $5 - local.get $9 - i32.store offset=4 - local.get $5 - local.get $10 - i32.store offset=8 - local.get $5 - local.set $12 - local.get $3 - call $~lib/rt/pure/__release - local.get $12 - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Int16Array,i16> (; 213 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 6 - call $~lib/typedarray/Int16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 5 - i32.const 5 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 38 - call $~lib/typedarray/Int16Array#filter - local.set $2 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 390 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/typedarray/Int16Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 391 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 0 - call $~lib/typedarray/Int16Array#__get - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 392 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Int16Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 393 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Int16Array#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 394 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 214 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 65535 - i32.and - i32.const 2 - i32.gt_u - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint16Array#filter (; 215 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Uint16Array#get:length - local.set $4 - i32.const 12 - i32.const 7 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - i32.const 1 - i32.shl - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $3 - i32.load offset=4 - local.set $7 - i32.const 0 - local.set $8 - block $break|0 - i32.const 0 - local.set $9 - loop $loop|0 - local.get $9 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $7 - local.get $9 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.set $10 - i32.const 3 - global.set $~lib/argc - local.get $10 - local.get $9 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $6 - local.get $8 - local.tee $11 - i32.const 1 - i32.add - local.set $8 - local.get $11 - i32.const 1 - i32.shl - i32.add - local.get $10 - i32.store16 - end - local.get $9 - i32.const 1 - i32.add - local.set $9 - br $loop|0 - end - unreachable - end - local.get $8 - i32.const 1 - i32.shl - local.set $10 - local.get $6 - local.get $10 - call $~lib/rt/tlsf/__realloc - local.set $9 - local.get $5 - local.tee $11 - local.get $9 - local.tee $12 - local.get $11 - i32.load - local.tee $11 - i32.ne - if - local.get $12 - call $~lib/rt/pure/__retain - drop - local.get $11 - call $~lib/rt/pure/__release - end - local.get $12 - i32.store - local.get $5 - local.get $9 - i32.store offset=4 - local.get $5 - local.get $10 - i32.store offset=8 - local.get $5 - local.set $12 - local.get $3 - call $~lib/rt/pure/__release - local.get $12 - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint16Array,u16> (; 216 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 6 - call $~lib/typedarray/Uint16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 5 - i32.const 5 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 39 - call $~lib/typedarray/Uint16Array#filter - local.set $2 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 390 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/typedarray/Uint16Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 391 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 0 - call $~lib/typedarray/Uint16Array#__get - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 392 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Uint16Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 393 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Uint16Array#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 394 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 217 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 2 - i32.gt_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int32Array#filter (; 218 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Int32Array#get:length - local.set $4 - i32.const 12 - i32.const 8 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - i32.const 2 - i32.shl - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $3 - i32.load offset=4 - local.set $7 - i32.const 0 - local.set $8 - block $break|0 - i32.const 0 - local.set $9 - loop $loop|0 - local.get $9 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $7 - local.get $9 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $10 - i32.const 3 - global.set $~lib/argc - local.get $10 - local.get $9 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $6 - local.get $8 - local.tee $11 - i32.const 1 - i32.add - local.set $8 - local.get $11 - i32.const 2 - i32.shl - i32.add - local.get $10 - i32.store - end - local.get $9 - i32.const 1 - i32.add - local.set $9 - br $loop|0 - end - unreachable - end - local.get $8 - i32.const 2 - i32.shl - local.set $10 - local.get $6 - local.get $10 - call $~lib/rt/tlsf/__realloc - local.set $9 - local.get $5 - local.tee $11 - local.get $9 - local.tee $12 - local.get $11 - i32.load - local.tee $11 - i32.ne - if - local.get $12 - call $~lib/rt/pure/__retain - drop - local.get $11 - call $~lib/rt/pure/__release - end - local.get $12 - i32.store - local.get $5 - local.get $9 - i32.store offset=4 - local.get $5 - local.get $10 - i32.store offset=8 - local.get $5 - local.set $12 - local.get $3 - call $~lib/rt/pure/__release - local.get $12 - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Int32Array,i32> (; 219 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 6 - call $~lib/typedarray/Int32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 5 - i32.const 5 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 40 - call $~lib/typedarray/Int32Array#filter - local.set $2 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 390 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/typedarray/Int32Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 391 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 0 - call $~lib/typedarray/Int32Array#__get - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 392 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Int32Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 393 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Int32Array#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 394 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 220 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 2 - i32.gt_u - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint32Array#filter (; 221 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Uint32Array#get:length - local.set $4 - i32.const 12 - i32.const 9 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - i32.const 2 - i32.shl - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $3 - i32.load offset=4 - local.set $7 - i32.const 0 - local.set $8 - block $break|0 - i32.const 0 - local.set $9 - loop $loop|0 - local.get $9 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $7 - local.get $9 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $10 - i32.const 3 - global.set $~lib/argc - local.get $10 - local.get $9 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $6 - local.get $8 - local.tee $11 - i32.const 1 - i32.add - local.set $8 - local.get $11 - i32.const 2 - i32.shl - i32.add - local.get $10 - i32.store - end - local.get $9 - i32.const 1 - i32.add - local.set $9 - br $loop|0 - end - unreachable - end - local.get $8 - i32.const 2 - i32.shl - local.set $10 - local.get $6 - local.get $10 - call $~lib/rt/tlsf/__realloc - local.set $9 - local.get $5 - local.tee $11 - local.get $9 - local.tee $12 - local.get $11 - i32.load - local.tee $11 - i32.ne - if - local.get $12 - call $~lib/rt/pure/__retain - drop - local.get $11 - call $~lib/rt/pure/__release - end - local.get $12 - i32.store - local.get $5 - local.get $9 - i32.store offset=4 - local.get $5 - local.get $10 - i32.store offset=8 - local.get $5 - local.set $12 - local.get $3 - call $~lib/rt/pure/__release - local.get $12 - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint32Array,u32> (; 222 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 6 - call $~lib/typedarray/Uint32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 5 - i32.const 5 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 41 - call $~lib/typedarray/Uint32Array#filter - local.set $2 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 390 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/typedarray/Uint32Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 391 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 0 - call $~lib/typedarray/Uint32Array#__get - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 392 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Uint32Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 393 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Uint32Array#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 394 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 223 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 2 - i64.gt_s - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int64Array#filter (; 224 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Int64Array#get:length - local.set $4 - i32.const 12 - i32.const 10 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - i32.const 3 - i32.shl - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $3 - i32.load offset=4 - local.set $7 - i32.const 0 - local.set $8 - block $break|0 - i32.const 0 - local.set $9 - loop $loop|0 - local.get $9 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $7 - local.get $9 - i32.const 3 - i32.shl - i32.add - i64.load - local.set $10 - i32.const 3 - global.set $~lib/argc - local.get $10 - local.get $9 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ijii) - if - local.get $6 - local.get $8 - local.tee $11 - i32.const 1 - i32.add - local.set $8 - local.get $11 - i32.const 3 - i32.shl - i32.add - local.get $10 - i64.store - end - local.get $9 - i32.const 1 - i32.add - local.set $9 - br $loop|0 - end - unreachable - end - local.get $8 - i32.const 3 - i32.shl - local.set $9 - local.get $6 - local.get $9 - call $~lib/rt/tlsf/__realloc - local.set $11 - local.get $5 - local.tee $12 - local.get $11 - local.tee $13 - local.get $12 - i32.load - local.tee $12 - i32.ne - if - local.get $13 - call $~lib/rt/pure/__retain - drop - local.get $12 - call $~lib/rt/pure/__release - end - local.get $13 - i32.store - local.get $5 - local.get $11 - i32.store offset=4 - local.get $5 - local.get $9 - i32.store offset=8 - local.get $5 - local.set $13 - local.get $3 - call $~lib/rt/pure/__release - local.get $13 - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Int64Array,i64> (; 225 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 6 - call $~lib/typedarray/Int64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 1 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 1 - i64.const 2 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 2 - i64.const 3 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 3 - i64.const 4 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 5 - i64.const 5 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 42 - call $~lib/typedarray/Int64Array#filter - local.set $2 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 390 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/typedarray/Int64Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 391 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 0 - call $~lib/typedarray/Int64Array#__get - i64.const 3 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 392 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Int64Array#__get - i64.const 4 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 393 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Int64Array#__get - i64.const 5 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 394 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 226 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 2 - i64.gt_u - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint64Array#filter (; 227 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Uint64Array#get:length - local.set $4 - i32.const 12 - i32.const 11 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - i32.const 3 - i32.shl - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $3 - i32.load offset=4 - local.set $7 - i32.const 0 - local.set $8 - block $break|0 - i32.const 0 - local.set $9 - loop $loop|0 - local.get $9 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $7 - local.get $9 - i32.const 3 - i32.shl - i32.add - i64.load - local.set $10 - i32.const 3 - global.set $~lib/argc - local.get $10 - local.get $9 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ijii) - if - local.get $6 - local.get $8 - local.tee $11 - i32.const 1 - i32.add - local.set $8 - local.get $11 - i32.const 3 - i32.shl - i32.add - local.get $10 - i64.store - end - local.get $9 - i32.const 1 - i32.add - local.set $9 - br $loop|0 - end - unreachable - end - local.get $8 - i32.const 3 - i32.shl - local.set $9 - local.get $6 - local.get $9 - call $~lib/rt/tlsf/__realloc - local.set $11 - local.get $5 - local.tee $12 - local.get $11 - local.tee $13 - local.get $12 - i32.load - local.tee $12 - i32.ne - if - local.get $13 - call $~lib/rt/pure/__retain - drop - local.get $12 - call $~lib/rt/pure/__release - end - local.get $13 - i32.store - local.get $5 - local.get $11 - i32.store offset=4 - local.get $5 - local.get $9 - i32.store offset=8 - local.get $5 - local.set $13 - local.get $3 - call $~lib/rt/pure/__release - local.get $13 - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint64Array,u64> (; 228 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 6 - call $~lib/typedarray/Uint64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 1 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 1 - i64.const 2 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 2 - i64.const 3 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 3 - i64.const 4 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 5 - i64.const 5 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 43 - call $~lib/typedarray/Uint64Array#filter - local.set $2 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 390 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/typedarray/Uint64Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 391 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 0 - call $~lib/typedarray/Uint64Array#__get - i64.const 3 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 392 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Uint64Array#__get - i64.const 4 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 393 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Uint64Array#__get - i64.const 5 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 394 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 229 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f32.const 2 - f32.gt - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Float32Array#filter (; 230 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 f32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Float32Array#get:length - local.set $4 - i32.const 12 - i32.const 12 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - i32.const 2 - i32.shl - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $3 - i32.load offset=4 - local.set $7 - i32.const 0 - local.set $8 - block $break|0 - i32.const 0 - local.set $9 - loop $loop|0 - local.get $9 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $7 - local.get $9 - i32.const 2 - i32.shl - i32.add - f32.load - local.set $10 - i32.const 3 - global.set $~lib/argc - local.get $10 - local.get $9 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ifii) - if - local.get $6 - local.get $8 - local.tee $11 - i32.const 1 - i32.add - local.set $8 - local.get $11 - i32.const 2 - i32.shl - i32.add - local.get $10 - f32.store - end - local.get $9 - i32.const 1 - i32.add - local.set $9 - br $loop|0 - end - unreachable - end - local.get $8 - i32.const 2 - i32.shl - local.set $9 - local.get $6 - local.get $9 - call $~lib/rt/tlsf/__realloc - local.set $11 - local.get $5 - local.tee $12 - local.get $11 - local.tee $13 - local.get $12 - i32.load - local.tee $12 - i32.ne - if - local.get $13 - call $~lib/rt/pure/__retain - drop - local.get $12 - call $~lib/rt/pure/__release - end - local.get $13 - i32.store - local.get $5 - local.get $11 - i32.store offset=4 - local.get $5 - local.get $9 - i32.store offset=8 - local.get $5 - local.set $13 - local.get $3 - call $~lib/rt/pure/__release - local.get $13 - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Float32Array,f32> (; 231 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 6 - call $~lib/typedarray/Float32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f32.const 1 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 1 - f32.const 2 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 2 - f32.const 3 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 3 - f32.const 4 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 5 - f32.const 5 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 44 - call $~lib/typedarray/Float32Array#filter - local.set $2 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 390 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/typedarray/Float32Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 391 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 0 - call $~lib/typedarray/Float32Array#__get - f32.const 3 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 392 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Float32Array#__get - f32.const 4 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 393 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Float32Array#__get - f32.const 5 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 394 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 232 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f64.const 2 - f64.gt - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Float64Array#filter (; 233 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 f64) - (local $11 i32) - (local $12 i32) - (local $13 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - call $~lib/typedarray/Float64Array#get:length - local.set $4 - i32.const 12 - i32.const 13 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - i32.const 3 - i32.shl - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $6 - local.get $3 - i32.load offset=4 - local.set $7 - i32.const 0 - local.set $8 - block $break|0 - i32.const 0 - local.set $9 - loop $loop|0 - local.get $9 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $7 - local.get $9 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $10 - i32.const 3 - global.set $~lib/argc - local.get $10 - local.get $9 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$idii) - if - local.get $6 - local.get $8 - local.tee $11 - i32.const 1 - i32.add - local.set $8 - local.get $11 - i32.const 3 - i32.shl - i32.add - local.get $10 - f64.store - end - local.get $9 - i32.const 1 - i32.add - local.set $9 - br $loop|0 - end - unreachable - end - local.get $8 - i32.const 3 - i32.shl - local.set $9 - local.get $6 - local.get $9 - call $~lib/rt/tlsf/__realloc - local.set $11 - local.get $5 - local.tee $12 - local.get $11 - local.tee $13 - local.get $12 - i32.load - local.tee $12 - i32.ne - if - local.get $13 - call $~lib/rt/pure/__retain - drop - local.get $12 - call $~lib/rt/pure/__release - end - local.get $13 - i32.store - local.get $5 - local.get $11 - i32.store offset=4 - local.get $5 - local.get $9 - i32.store offset=8 - local.get $5 - local.set $13 - local.get $3 - call $~lib/rt/pure/__release - local.get $13 - ) - (func $std/typedarray/testArrayFilter<~lib/typedarray/Float64Array,f64> (; 234 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - i32.const 0 - i32.const 6 - call $~lib/typedarray/Float64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f64.const 1 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 1 - f64.const 2 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 2 - f64.const 3 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 3 - f64.const 4 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 5 - f64.const 5 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 45 - call $~lib/typedarray/Float64Array#filter - local.set $2 - local.get $2 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 390 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/typedarray/Float64Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 391 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 0 - call $~lib/typedarray/Float64Array#__get - f64.const 3 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 392 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 1 - call $~lib/typedarray/Float64Array#__get - f64.const 4 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 393 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - i32.const 2 - call $~lib/typedarray/Float64Array#__get - f64.const 5 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 394 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 235 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int8Array#some (; 236 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int8Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - i32.const 1 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 0 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Int8Array,i8>~anonymous|1 (; 237 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Int8Array,i8> (; 238 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 46 - call $~lib/typedarray/Int8Array#some - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 47 - call $~lib/typedarray/Int8Array#some - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 417 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 239 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint8Array#some (; 240 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint8Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - i32.const 1 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 0 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint8Array,u8>~anonymous|1 (; 241 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint8Array,u8> (; 242 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 48 - call $~lib/typedarray/Uint8Array#some - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 49 - call $~lib/typedarray/Uint8Array#some - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 417 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 243 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint8ClampedArray#some (; 244 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/SOME<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - i32.const 1 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/SOME<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 0 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|1 (; 245 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint8ClampedArray,u8> (; 246 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 50 - call $~lib/typedarray/Uint8ClampedArray#some - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 51 - call $~lib/typedarray/Uint8ClampedArray#some - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 417 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 247 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int16Array#some (; 248 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int16Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.load16_s - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - i32.const 1 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 0 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Int16Array,i16>~anonymous|1 (; 249 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Int16Array,i16> (; 250 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 52 - call $~lib/typedarray/Int16Array#some - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 53 - call $~lib/typedarray/Int16Array#some - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 417 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 251 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 65535 - i32.and - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint16Array#some (; 252 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint16Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - i32.const 1 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 0 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint16Array,u16>~anonymous|1 (; 253 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 65535 - i32.and - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint16Array,u16> (; 254 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 54 - call $~lib/typedarray/Uint16Array#some - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 55 - call $~lib/typedarray/Uint16Array#some - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 417 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 255 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int32Array#some (; 256 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int32Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - i32.const 1 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 0 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Int32Array,i32>~anonymous|1 (; 257 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Int32Array,i32> (; 258 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 56 - call $~lib/typedarray/Int32Array#some - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 57 - call $~lib/typedarray/Int32Array#some - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 417 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 259 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint32Array#some (; 260 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint32Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - i32.const 1 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 0 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint32Array,u32>~anonymous|1 (; 261 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint32Array,u32> (; 262 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 58 - call $~lib/typedarray/Uint32Array#some - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 59 - call $~lib/typedarray/Uint32Array#some - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 417 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 263 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 2 - i64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int64Array#some (; 264 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int64Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ijii) - if - i32.const 1 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 0 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Int64Array,i64>~anonymous|1 (; 265 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 0 - i64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Int64Array,i64> (; 266 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 2 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 1 - i64.const 4 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 2 - i64.const 6 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 60 - call $~lib/typedarray/Int64Array#some - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 61 - call $~lib/typedarray/Int64Array#some - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 417 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 267 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 2 - i64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint64Array#some (; 268 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint64Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ijii) - if - i32.const 1 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 0 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint64Array,u64>~anonymous|1 (; 269 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 0 - i64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Uint64Array,u64> (; 270 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 2 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 1 - i64.const 4 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 2 - i64.const 6 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 62 - call $~lib/typedarray/Uint64Array#some - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 63 - call $~lib/typedarray/Uint64Array#some - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 417 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 271 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f32.const 2 - f32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Float32Array#some (; 272 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Float32Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - f32.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ifii) - if - i32.const 1 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 0 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Float32Array,f32>~anonymous|1 (; 273 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f32.const 0 - f32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Float32Array,f32> (; 274 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f32.const 2 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 1 - f32.const 4 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 2 - f32.const 6 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 64 - call $~lib/typedarray/Float32Array#some - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 65 - call $~lib/typedarray/Float32Array#some - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 417 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 275 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f64.const 2 - f64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Float64Array#some (; 276 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Float64Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 3 - i32.shl - i32.add - f64.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$idii) - if - i32.const 1 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 0 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Float64Array,f64>~anonymous|1 (; 277 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f64.const 0 - f64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArraySome<~lib/typedarray/Float64Array,f64> (; 278 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f64.const 2 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 1 - f64.const 4 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 2 - f64.const 6 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 66 - call $~lib/typedarray/Float64Array#some - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 415 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 67 - call $~lib/typedarray/Float64Array#some - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 417 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 279 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int8Array#findIndex (; 280 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int8Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $5 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const -1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int8Array,i8>~anonymous|1 (; 281 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 4 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int8Array,i8> (; 282 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 68 - call $~lib/typedarray/Int8Array#findIndex - local.set $2 - local.get $2 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 438 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 69 - call $~lib/typedarray/Int8Array#findIndex - local.set $3 - local.get $3 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 440 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 283 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint8Array#findIndex (; 284 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint8Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $5 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const -1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8Array,u8>~anonymous|1 (; 285 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 4 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8Array,u8> (; 286 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 70 - call $~lib/typedarray/Uint8Array#findIndex - local.set $2 - local.get $2 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 438 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 71 - call $~lib/typedarray/Uint8Array#findIndex - local.set $3 - local.get $3 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 440 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 287 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint8ClampedArray#findIndex (; 288 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $5 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const -1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|1 (; 289 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 4 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8ClampedArray,u8> (; 290 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 72 - call $~lib/typedarray/Uint8ClampedArray#findIndex - local.set $2 - local.get $2 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 438 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 73 - call $~lib/typedarray/Uint8ClampedArray#findIndex - local.set $3 - local.get $3 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 440 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 291 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int16Array#findIndex (; 292 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int16Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.load16_s - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $5 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const -1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int16Array,i16>~anonymous|1 (; 293 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.const 4 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int16Array,i16> (; 294 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 74 - call $~lib/typedarray/Int16Array#findIndex - local.set $2 - local.get $2 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 438 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 75 - call $~lib/typedarray/Int16Array#findIndex - local.set $3 - local.get $3 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 440 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 295 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 65535 - i32.and - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint16Array#findIndex (; 296 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint16Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $5 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const -1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint16Array,u16>~anonymous|1 (; 297 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 65535 - i32.and - i32.const 4 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint16Array,u16> (; 298 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 76 - call $~lib/typedarray/Uint16Array#findIndex - local.set $2 - local.get $2 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 438 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 77 - call $~lib/typedarray/Uint16Array#findIndex - local.set $3 - local.get $3 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 440 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 299 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int32Array#findIndex (; 300 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int32Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $5 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const -1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int32Array,i32>~anonymous|1 (; 301 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 4 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int32Array,i32> (; 302 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 78 - call $~lib/typedarray/Int32Array#findIndex - local.set $2 - local.get $2 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 438 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 79 - call $~lib/typedarray/Int32Array#findIndex - local.set $3 - local.get $3 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 440 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 303 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint32Array#findIndex (; 304 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint32Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - local.get $5 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const -1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint32Array,u32>~anonymous|1 (; 305 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 4 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint32Array,u32> (; 306 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 80 - call $~lib/typedarray/Uint32Array#findIndex - local.set $2 - local.get $2 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 438 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 81 - call $~lib/typedarray/Uint32Array#findIndex - local.set $3 - local.get $3 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 440 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 307 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 2 - i64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int64Array#findIndex (; 308 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int64Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ijii) - if - local.get $5 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const -1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int64Array,i64>~anonymous|1 (; 309 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 4 - i64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int64Array,i64> (; 310 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 1 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 1 - i64.const 2 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 2 - i64.const 3 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 82 - call $~lib/typedarray/Int64Array#findIndex - local.set $2 - local.get $2 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 438 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 83 - call $~lib/typedarray/Int64Array#findIndex - local.set $3 - local.get $3 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 440 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 311 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 2 - i64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint64Array#findIndex (; 312 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint64Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ijii) - if - local.get $5 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const -1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint64Array,u64>~anonymous|1 (; 313 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 4 - i64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint64Array,u64> (; 314 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 1 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 1 - i64.const 2 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 2 - i64.const 3 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 84 - call $~lib/typedarray/Uint64Array#findIndex - local.set $2 - local.get $2 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 438 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 85 - call $~lib/typedarray/Uint64Array#findIndex - local.set $3 - local.get $3 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 440 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 315 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f32.const 2 - f32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Float32Array#findIndex (; 316 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Float32Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - f32.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ifii) - if - local.get $5 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const -1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Float32Array,f32>~anonymous|1 (; 317 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f32.const 4 - f32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Float32Array,f32> (; 318 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f32.const 1 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 1 - f32.const 2 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 2 - f32.const 3 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 86 - call $~lib/typedarray/Float32Array#findIndex - local.set $2 - local.get $2 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 438 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 87 - call $~lib/typedarray/Float32Array#findIndex - local.set $3 - local.get $3 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 440 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 319 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f64.const 2 - f64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Float64Array#findIndex (; 320 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Float64Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 3 - i32.shl - i32.add - f64.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$idii) - if - local.get $5 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const -1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Float64Array,f64>~anonymous|1 (; 321 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f64.const 4 - f64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Float64Array,f64> (; 322 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f64.const 1 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 1 - f64.const 2 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 2 - f64.const 3 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 88 - call $~lib/typedarray/Float64Array#findIndex - local.set $2 - local.get $2 - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 438 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 89 - call $~lib/typedarray/Float64Array#findIndex - local.set $3 - local.get $3 - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 440 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 323 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 2 - i32.rem_s - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int8Array#every (; 324 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int8Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - br $continue|0 - end - i32.const 0 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Int8Array,i8>~anonymous|1 (; 325 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Int8Array,i8> (; 326 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 90 - call $~lib/typedarray/Int8Array#every - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 461 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 91 - call $~lib/typedarray/Int8Array#every - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 463 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 327 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 2 - i32.rem_u - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint8Array#every (; 328 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint8Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - br $continue|0 - end - i32.const 0 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint8Array,u8>~anonymous|1 (; 329 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint8Array,u8> (; 330 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 92 - call $~lib/typedarray/Uint8Array#every - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 461 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 93 - call $~lib/typedarray/Uint8Array#every - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 463 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 331 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 2 - i32.rem_u - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint8ClampedArray#every (; 332 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/EVERY<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - br $continue|0 - end - i32.const 0 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/EVERY<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|1 (; 333 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 255 - i32.and - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint8ClampedArray,u8> (; 334 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 94 - call $~lib/typedarray/Uint8ClampedArray#every - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 461 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 95 - call $~lib/typedarray/Uint8ClampedArray#every - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 463 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 335 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.const 2 - i32.rem_s - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int16Array#every (; 336 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int16Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.load16_s - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - br $continue|0 - end - i32.const 0 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Int16Array,i16>~anonymous|1 (; 337 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Int16Array,i16> (; 338 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 96 - call $~lib/typedarray/Int16Array#every - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 461 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 97 - call $~lib/typedarray/Int16Array#every - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 463 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 339 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 65535 - i32.and - i32.const 2 - i32.rem_u - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint16Array#every (; 340 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint16Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - br $continue|0 - end - i32.const 0 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint16Array,u16>~anonymous|1 (; 341 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 65535 - i32.and - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint16Array,u16> (; 342 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 98 - call $~lib/typedarray/Uint16Array#every - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 461 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 99 - call $~lib/typedarray/Uint16Array#every - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 463 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 343 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 2 - i32.rem_s - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int32Array#every (; 344 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int32Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - br $continue|0 - end - i32.const 0 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Int32Array,i32>~anonymous|1 (; 345 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Int32Array,i32> (; 346 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 100 - call $~lib/typedarray/Int32Array#every - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 461 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 101 - call $~lib/typedarray/Int32Array#every - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 463 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 347 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 2 - i32.rem_u - i32.const 0 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint32Array#every (; 348 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint32Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$iiii) - if - br $continue|0 - end - i32.const 0 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint32Array,u32>~anonymous|1 (; 349 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.const 2 - i32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint32Array,u32> (; 350 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 2 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 102 - call $~lib/typedarray/Uint32Array#every - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 461 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 103 - call $~lib/typedarray/Uint32Array#every - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 463 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 351 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 2 - i64.rem_s - i64.const 0 - i64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Int64Array#every (; 352 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int64Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ijii) - if - br $continue|0 - end - i32.const 0 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Int64Array,i64>~anonymous|1 (; 353 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 2 - i64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Int64Array,i64> (; 354 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 2 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 1 - i64.const 4 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 2 - i64.const 6 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 104 - call $~lib/typedarray/Int64Array#every - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 461 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 105 - call $~lib/typedarray/Int64Array#every - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 463 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 355 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 2 - i64.rem_u - i64.const 0 - i64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Uint64Array#every (; 356 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint64Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ijii) - if - br $continue|0 - end - i32.const 0 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint64Array,u64>~anonymous|1 (; 357 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - i64.const 2 - i64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint64Array,u64> (; 358 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 2 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 1 - i64.const 4 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 2 - i64.const 6 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 106 - call $~lib/typedarray/Uint64Array#every - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 461 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 107 - call $~lib/typedarray/Uint64Array#every - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 463 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/number/isNaN (; 359 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) - local.get $0 - local.get $0 - f32.ne - ) - (func $~lib/math/NativeMathf.mod (; 360 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 f32) - (local $9 i32) - (local $10 i32) - local.get $0 - i32.reinterpret_f32 - local.set $2 - local.get $1 - i32.reinterpret_f32 - local.set $3 - local.get $2 - i32.const 23 - i32.shr_u - i32.const 255 - i32.and - local.set $4 - local.get $3 - i32.const 23 - i32.shr_u - i32.const 255 - i32.and - local.set $5 - local.get $2 - i32.const -2147483648 - i32.and - local.set $6 - local.get $3 - i32.const 1 - i32.shl - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $4 - i32.const 255 - i32.eq - end - if (result i32) - i32.const 1 - else - local.get $1 - call $~lib/number/isNaN - end - if - local.get $0 - local.get $1 - f32.mul - local.set $8 - local.get $8 - local.get $8 - f32.div - return - end - local.get $2 - i32.const 1 - i32.shl - local.set $9 - local.get $9 - local.get $7 - i32.le_u - if - local.get $9 - local.get $7 - i32.eq - if - f32.const 0 - local.get $0 - f32.mul - return - end - local.get $0 - return - end - local.get $4 - i32.eqz - if - local.get $4 - local.get $2 - i32.const 9 - i32.shl - i32.clz - i32.sub - local.set $4 - local.get $2 - i32.const 0 - local.get $4 - i32.sub - i32.const 1 - i32.add - i32.shl - local.set $2 - else - local.get $2 - i32.const -1 - i32.const 9 - i32.shr_u - i32.and - local.set $2 - local.get $2 - i32.const 1 - i32.const 23 - i32.shl - i32.or - local.set $2 - end - local.get $5 - i32.eqz - if - local.get $5 - local.get $3 - i32.const 9 - i32.shl - i32.clz - i32.sub - local.set $5 - local.get $3 - i32.const 0 - local.get $5 - i32.sub - i32.const 1 - i32.add - i32.shl - local.set $3 - else - local.get $3 - i32.const -1 - i32.const 9 - i32.shr_u - i32.and - local.set $3 - local.get $3 - i32.const 1 - i32.const 23 - i32.shl - i32.or - local.set $3 - end - block $break|0 - loop $continue|0 - local.get $4 - local.get $5 - i32.gt_s - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.ge_u - if - local.get $2 - local.get $3 - i32.eq - if - f32.const 0 - local.get $0 - f32.mul - return - end - local.get $2 - local.get $3 - i32.sub - local.set $2 - end - local.get $2 - i32.const 1 - i32.shl - local.set $2 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $continue|0 - end - unreachable - end - local.get $2 - local.get $3 - i32.ge_u - if - local.get $2 - local.get $3 - i32.eq - if - f32.const 0 - local.get $0 - f32.mul - return - end - local.get $2 - local.get $3 - i32.sub - local.set $2 - end - local.get $2 - i32.const 8 - i32.shl - i32.clz - local.set $10 - local.get $4 - local.get $10 - i32.sub - local.set $4 - local.get $2 - local.get $10 - i32.shl - local.set $2 - local.get $4 - i32.const 0 - i32.gt_s - if - local.get $2 - i32.const 1 - i32.const 23 - i32.shl - i32.sub - local.set $2 - local.get $2 - local.get $4 - i32.const 23 - i32.shl - i32.or - local.set $2 - else - local.get $2 - i32.const 0 - local.get $4 - i32.sub - i32.const 1 - i32.add - i32.shr_u - local.set $2 - end - local.get $2 - local.get $6 - i32.or - local.set $2 - local.get $2 - f32.reinterpret_i32 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 361 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f32.const 2 - call $~lib/math/NativeMathf.mod - f32.const 0 - f32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Float32Array#every (; 362 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Float32Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - f32.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$ifii) - if - br $continue|0 - end - i32.const 0 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Float32Array,f32>~anonymous|1 (; 363 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f32.const 2 - f32.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Float32Array,f32> (; 364 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f32.const 2 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 1 - f32.const 4 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 2 - f32.const 6 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 108 - call $~lib/typedarray/Float32Array#every - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 461 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 109 - call $~lib/typedarray/Float32Array#every - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 463 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/number/isNaN (; 365 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.ne - ) - (func $~lib/math/NativeMath.mod (; 366 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) - (local $2 i64) - (local $3 i64) - (local $4 i64) - (local $5 i64) - (local $6 i64) - (local $7 i64) - (local $8 f64) - (local $9 i64) - (local $10 i64) - local.get $0 - i64.reinterpret_f64 - local.set $2 - local.get $1 - i64.reinterpret_f64 - local.set $3 - local.get $2 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $4 - local.get $3 - i64.const 52 - i64.shr_u - i64.const 2047 - i64.and - local.set $5 - local.get $2 - i64.const 63 - i64.shr_u - local.set $6 - local.get $3 - i64.const 1 - i64.shl - local.set $7 - local.get $7 - i64.const 0 - i64.eq - if (result i32) - i32.const 1 - else - local.get $4 - i64.const 2047 - i64.eq - end - if (result i32) - i32.const 1 - else - local.get $1 - call $~lib/number/isNaN - end - if - local.get $0 - local.get $1 - f64.mul - local.set $8 - local.get $8 - local.get $8 - f64.div - return - end - local.get $2 - i64.const 1 - i64.shl - local.set $9 - local.get $9 - local.get $7 - i64.le_u - if - local.get $9 - local.get $7 - i64.eq - if - f64.const 0 - local.get $0 - f64.mul - return - end - local.get $0 - return - end - local.get $4 - i64.eqz - if - local.get $4 - local.get $2 - i64.const 12 - i64.shl - i64.clz - i64.sub - local.set $4 - local.get $2 - i64.const 0 - local.get $4 - i64.sub - i64.const 1 - i64.add - i64.shl - local.set $2 - else - local.get $2 - i64.const -1 - i64.const 12 - i64.shr_u - i64.and - local.set $2 - local.get $2 - i64.const 1 - i64.const 52 - i64.shl - i64.or - local.set $2 - end - local.get $5 - i64.eqz - if - local.get $5 - local.get $3 - i64.const 12 - i64.shl - i64.clz - i64.sub - local.set $5 - local.get $3 - i64.const 0 - local.get $5 - i64.sub - i64.const 1 - i64.add - i64.shl - local.set $3 - else - local.get $3 - i64.const -1 - i64.const 12 - i64.shr_u - i64.and - local.set $3 - local.get $3 - i64.const 1 - i64.const 52 - i64.shl - i64.or - local.set $3 - end - block $break|0 - loop $continue|0 - local.get $4 - local.get $5 - i64.gt_s - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i64.ge_u - if - local.get $2 - local.get $3 - i64.eq - if - f64.const 0 - local.get $0 - f64.mul - return - end - local.get $2 - local.get $3 - i64.sub - local.set $2 - end - local.get $2 - i64.const 1 - i64.shl - local.set $2 - local.get $4 - i64.const 1 - i64.sub - local.set $4 - br $continue|0 - end - unreachable - end - local.get $2 - local.get $3 - i64.ge_u - if - local.get $2 - local.get $3 - i64.eq - if - f64.const 0 - local.get $0 - f64.mul - return - end - local.get $2 - local.get $3 - i64.sub - local.set $2 - end - local.get $2 - i64.const 11 - i64.shl - i64.clz - local.set $10 - local.get $4 - local.get $10 - i64.sub - local.set $4 - local.get $2 - local.get $10 - i64.shl - local.set $2 - local.get $4 - i64.const 0 - i64.gt_s - if - local.get $2 - i64.const 1 - i64.const 52 - i64.shl - i64.sub - local.set $2 - local.get $2 - local.get $4 - i64.const 52 - i64.shl - i64.or - local.set $2 - else - local.get $2 - i64.const 0 - local.get $4 - i64.sub - i64.const 1 - i64.add - i64.shr_u - local.set $2 - end - local.get $2 - local.get $6 - i64.const 63 - i64.shl - i64.or - local.set $2 - local.get $2 - f64.reinterpret_i64 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 367 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f64.const 2 - call $~lib/math/NativeMath.mod - f64.const 0 - f64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $~lib/typedarray/Float64Array#every (; 368 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Float64Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - block $continue|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 3 - i32.shl - i32.add - f64.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$idii) - if - br $continue|0 - end - i32.const 0 - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - br $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 - end - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - i32.const 1 - local.set $6 - local.get $3 - call $~lib/rt/pure/__release - local.get $6 - end - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Float64Array,f64>~anonymous|1 (; 369 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $0 - f64.const 2 - f64.eq - local.set $3 - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - ) - (func $std/typedarray/testArrayEvery<~lib/typedarray/Float64Array,f64> (; 370 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f64.const 2 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 1 - f64.const 4 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 2 - f64.const 6 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 110 - call $~lib/typedarray/Float64Array#every - local.set $2 - local.get $2 - i32.const 0 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 461 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 111 - call $~lib/typedarray/Float64Array#every - local.set $3 - local.get $3 - i32.const 0 - i32.ne - i32.eqz - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 463 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 371 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/typedarray/forEachValues - local.get $1 - call $~lib/array/Array#__get - local.set $3 - local.get $0 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - local.get $3 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 490 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.get $std/typedarray/forEachCallCount - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 491 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachSelf - local.get $2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 492 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachCallCount - i32.const 1 - i32.add - global.set $std/typedarray/forEachCallCount - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int8Array#forEach (; 372 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int8Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$viii) - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Int8Array,i8> (; 373 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - i32.const 0 - global.set $std/typedarray/forEachCallCount - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - global.set $std/typedarray/forEachSelf - local.get $1 - i32.const 0 - global.get $std/typedarray/forEachValues - i32.const 0 - call $~lib/array/Array#__get - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 1 - global.get $std/typedarray/forEachValues - i32.const 1 - call $~lib/array/Array#__get - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 2 - global.get $std/typedarray/forEachValues - i32.const 2 - call $~lib/array/Array#__get - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 112 - call $~lib/typedarray/Int8Array#forEach - global.get $std/typedarray/forEachCallCount - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 495 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 374 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/typedarray/forEachValues - local.get $1 - call $~lib/array/Array#__get - local.set $3 - local.get $0 - i32.const 255 - i32.and - local.get $3 - i32.const 255 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 490 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.get $std/typedarray/forEachCallCount - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 491 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachSelf - local.get $2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 492 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachCallCount - i32.const 1 - i32.add - global.set $std/typedarray/forEachCallCount - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint8Array#forEach (; 375 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint8Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$viii) - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint8Array,u8> (; 376 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - i32.const 0 - global.set $std/typedarray/forEachCallCount - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - global.set $std/typedarray/forEachSelf - local.get $1 - i32.const 0 - global.get $std/typedarray/forEachValues - i32.const 0 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 1 - global.get $std/typedarray/forEachValues - i32.const 1 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 2 - global.get $std/typedarray/forEachValues - i32.const 2 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 113 - call $~lib/typedarray/Uint8Array#forEach - global.get $std/typedarray/forEachCallCount - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 495 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 377 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/typedarray/forEachValues - local.get $1 - call $~lib/array/Array#__get - local.set $3 - local.get $0 - i32.const 255 - i32.and - local.get $3 - i32.const 255 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 490 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.get $std/typedarray/forEachCallCount - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 491 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachSelf - local.get $2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 492 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachCallCount - i32.const 1 - i32.add - global.set $std/typedarray/forEachCallCount - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint8ClampedArray#forEach (; 378 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$viii) - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint8ClampedArray,u8> (; 379 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - i32.const 0 - global.set $std/typedarray/forEachCallCount - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - global.set $std/typedarray/forEachSelf - local.get $1 - i32.const 0 - global.get $std/typedarray/forEachValues - i32.const 0 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 1 - global.get $std/typedarray/forEachValues - i32.const 1 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 2 - global.get $std/typedarray/forEachValues - i32.const 2 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 114 - call $~lib/typedarray/Uint8ClampedArray#forEach - global.get $std/typedarray/forEachCallCount - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 495 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 380 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/typedarray/forEachValues - local.get $1 - call $~lib/array/Array#__get - local.set $3 - local.get $0 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - local.get $3 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 490 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.get $std/typedarray/forEachCallCount - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 491 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachSelf - local.get $2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 492 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachCallCount - i32.const 1 - i32.add - global.set $std/typedarray/forEachCallCount - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int16Array#forEach (; 381 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int16Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.load16_s - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$viii) - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Int16Array,i16> (; 382 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - i32.const 0 - global.set $std/typedarray/forEachCallCount - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - global.set $std/typedarray/forEachSelf - local.get $1 - i32.const 0 - global.get $std/typedarray/forEachValues - i32.const 0 - call $~lib/array/Array#__get - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - global.get $std/typedarray/forEachValues - i32.const 1 - call $~lib/array/Array#__get - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - global.get $std/typedarray/forEachValues - i32.const 2 - call $~lib/array/Array#__get - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 115 - call $~lib/typedarray/Int16Array#forEach - global.get $std/typedarray/forEachCallCount - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 495 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 383 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/typedarray/forEachValues - local.get $1 - call $~lib/array/Array#__get - local.set $3 - local.get $0 - i32.const 65535 - i32.and - local.get $3 - i32.const 65535 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 490 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.get $std/typedarray/forEachCallCount - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 491 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachSelf - local.get $2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 492 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachCallCount - i32.const 1 - i32.add - global.set $std/typedarray/forEachCallCount - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint16Array#forEach (; 384 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint16Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$viii) - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint16Array,u16> (; 385 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - i32.const 0 - global.set $std/typedarray/forEachCallCount - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - global.set $std/typedarray/forEachSelf - local.get $1 - i32.const 0 - global.get $std/typedarray/forEachValues - i32.const 0 - call $~lib/array/Array#__get - i32.const 65535 - i32.and - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 1 - global.get $std/typedarray/forEachValues - i32.const 1 - call $~lib/array/Array#__get - i32.const 65535 - i32.and - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 2 - global.get $std/typedarray/forEachValues - i32.const 2 - call $~lib/array/Array#__get - i32.const 65535 - i32.and - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 116 - call $~lib/typedarray/Uint16Array#forEach - global.get $std/typedarray/forEachCallCount - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 495 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 386 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/typedarray/forEachValues - local.get $1 - call $~lib/array/Array#__get - local.set $3 - local.get $0 - local.get $3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 490 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.get $std/typedarray/forEachCallCount - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 491 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachSelf - local.get $2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 492 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachCallCount - i32.const 1 - i32.add - global.set $std/typedarray/forEachCallCount - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int32Array#forEach (; 387 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int32Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$viii) - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Int32Array,i32> (; 388 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - i32.const 0 - global.set $std/typedarray/forEachCallCount - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - global.set $std/typedarray/forEachSelf - local.get $1 - i32.const 0 - global.get $std/typedarray/forEachValues - i32.const 0 - call $~lib/array/Array#__get - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 1 - global.get $std/typedarray/forEachValues - i32.const 1 - call $~lib/array/Array#__get - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 2 - global.get $std/typedarray/forEachValues - i32.const 2 - call $~lib/array/Array#__get - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 117 - call $~lib/typedarray/Int32Array#forEach - global.get $std/typedarray/forEachCallCount - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 495 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 389 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/typedarray/forEachValues - local.get $1 - call $~lib/array/Array#__get - local.set $3 - local.get $0 - local.get $3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 490 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.get $std/typedarray/forEachCallCount - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 491 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachSelf - local.get $2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 492 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachCallCount - i32.const 1 - i32.add - global.set $std/typedarray/forEachCallCount - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint32Array#forEach (; 390 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint32Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$viii) - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint32Array,u32> (; 391 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - i32.const 0 - global.set $std/typedarray/forEachCallCount - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - global.set $std/typedarray/forEachSelf - local.get $1 - i32.const 0 - global.get $std/typedarray/forEachValues - i32.const 0 - call $~lib/array/Array#__get - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 1 - global.get $std/typedarray/forEachValues - i32.const 1 - call $~lib/array/Array#__get - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 2 - global.get $std/typedarray/forEachValues - i32.const 2 - call $~lib/array/Array#__get - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 118 - call $~lib/typedarray/Uint32Array#forEach - global.get $std/typedarray/forEachCallCount - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 495 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 392 ;) (type $FUNCSIG$vjii) (param $0 i64) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/typedarray/forEachValues - local.get $1 - call $~lib/array/Array#__get - local.set $3 - local.get $0 - local.get $3 - i64.extend_i32_s - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 490 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.get $std/typedarray/forEachCallCount - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 491 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachSelf - local.get $2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 492 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachCallCount - i32.const 1 - i32.add - global.set $std/typedarray/forEachCallCount - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int64Array#forEach (; 393 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Int64Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$vjii) - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Int64Array,i64> (; 394 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - i32.const 0 - global.set $std/typedarray/forEachCallCount - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - global.set $std/typedarray/forEachSelf - local.get $1 - i32.const 0 - global.get $std/typedarray/forEachValues - i32.const 0 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 1 - global.get $std/typedarray/forEachValues - i32.const 1 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 2 - global.get $std/typedarray/forEachValues - i32.const 2 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 119 - call $~lib/typedarray/Int64Array#forEach - global.get $std/typedarray/forEachCallCount - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 495 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 395 ;) (type $FUNCSIG$vjii) (param $0 i64) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/typedarray/forEachValues - local.get $1 - call $~lib/array/Array#__get - local.set $3 - local.get $0 - local.get $3 - i64.extend_i32_s - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 490 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.get $std/typedarray/forEachCallCount - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 491 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachSelf - local.get $2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 492 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachCallCount - i32.const 1 - i32.add - global.set $std/typedarray/forEachCallCount - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint64Array#forEach (; 396 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Uint64Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$vjii) - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint64Array,u64> (; 397 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - i32.const 0 - global.set $std/typedarray/forEachCallCount - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - global.set $std/typedarray/forEachSelf - local.get $1 - i32.const 0 - global.get $std/typedarray/forEachValues - i32.const 0 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 1 - global.get $std/typedarray/forEachValues - i32.const 1 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 2 - global.get $std/typedarray/forEachValues - i32.const 2 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 120 - call $~lib/typedarray/Uint64Array#forEach - global.get $std/typedarray/forEachCallCount - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 495 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 398 ;) (type $FUNCSIG$vfii) (param $0 f32) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/typedarray/forEachValues - local.get $1 - call $~lib/array/Array#__get - local.set $3 - local.get $0 - local.get $3 - f32.convert_i32_s - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 490 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.get $std/typedarray/forEachCallCount - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 491 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachSelf - local.get $2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 492 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachCallCount - i32.const 1 - i32.add - global.set $std/typedarray/forEachCallCount - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Float32Array#forEach (; 399 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Float32Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 2 - i32.shl - i32.add - f32.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$vfii) - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Float32Array,f32> (; 400 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - i32.const 0 - global.set $std/typedarray/forEachCallCount - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - global.set $std/typedarray/forEachSelf - local.get $1 - i32.const 0 - global.get $std/typedarray/forEachValues - i32.const 0 - call $~lib/array/Array#__get - f32.convert_i32_s - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 1 - global.get $std/typedarray/forEachValues - i32.const 1 - call $~lib/array/Array#__get - f32.convert_i32_s - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 2 - global.get $std/typedarray/forEachValues - i32.const 2 - call $~lib/array/Array#__get - f32.convert_i32_s - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 121 - call $~lib/typedarray/Float32Array#forEach - global.get $std/typedarray/forEachCallCount - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 495 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 401 ;) (type $FUNCSIG$vdii) (param $0 f64) (param $1 i32) (param $2 i32) - (local $3 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - global.get $std/typedarray/forEachValues - local.get $1 - call $~lib/array/Array#__get - local.set $3 - local.get $0 - local.get $3 - f64.convert_i32_s - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 490 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - global.get $std/typedarray/forEachCallCount - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 491 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachSelf - local.get $2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 492 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - global.get $std/typedarray/forEachCallCount - i32.const 1 - i32.add - global.set $std/typedarray/forEachCallCount - local.get $2 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Float64Array#forEach (; 402 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $3 - local.get $1 - local.set $2 - local.get $3 - i32.load offset=4 - local.set $4 - block $break|0 - i32.const 0 - local.set $5 - local.get $3 - call $~lib/typedarray/Float64Array#get:length - local.set $6 - loop $loop|0 - local.get $5 - local.get $6 - i32.lt_s - i32.eqz - br_if $break|0 - i32.const 3 - global.set $~lib/argc - local.get $4 - local.get $5 - i32.const 3 - i32.shl - i32.add - f64.load - local.get $5 - local.get $3 - local.get $2 - call_indirect (type $FUNCSIG$vdii) - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/rt/pure/__release - ) - (func $std/typedarray/testArrayForEach<~lib/typedarray/Float64Array,f64> (; 403 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - i32.const 0 - global.set $std/typedarray/forEachCallCount - i32.const 0 - i32.const 3 - call $~lib/typedarray/Float64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - global.set $std/typedarray/forEachSelf - local.get $1 - i32.const 0 - global.get $std/typedarray/forEachValues - i32.const 0 - call $~lib/array/Array#__get - f64.convert_i32_s - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 1 - global.get $std/typedarray/forEachValues - i32.const 1 - call $~lib/array/Array#__get - f64.convert_i32_s - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 2 - global.get $std/typedarray/forEachValues - i32.const 2 - call $~lib/array/Array#__get - f64.convert_i32_s - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 122 - call $~lib/typedarray/Float64Array#forEach - global.get $std/typedarray/forEachCallCount - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 495 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int8Array#reverse (; 404 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.load offset=4 - local.set $2 - block $break|0 - i32.const 0 - local.set $3 - local.get $1 - call $~lib/typedarray/Int8Array#get:length - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $3 - local.get $4 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.const 0 - i32.shl - i32.add - local.set $5 - local.get $2 - local.get $4 - i32.const 0 - i32.shl - i32.add - local.set $6 - local.get $5 - i32.load8_s - local.set $7 - local.get $5 - local.get $6 - i32.load8_s - i32.store8 - local.get $6 - local.get $7 - i32.store8 - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Int8Array,i8> (; 405 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayReverseValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int8Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int8Array#constructor - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - block $break|0 - i32.const 0 - local.set $6 - loop $loop|0 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - call $~lib/typedarray/Int8Array#__set - local.get $5 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - call $~lib/typedarray/Int8Array#__set - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Int8Array#reverse - call $~lib/rt/pure/__release - block $break|1 - i32.const 0 - local.set $6 - loop $loop|1 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $6 - call $~lib/typedarray/Int8Array#__get - local.get $0 - local.get $1 - i32.const 1 - i32.sub - local.get $6 - i32.sub - call $~lib/array/Array#__get - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 524 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 4 - i32.const 8 - call $~lib/typedarray/Int8Array#subarray - local.tee $6 - call $~lib/typedarray/Int8Array#reverse - local.set $7 - local.get $7 - i32.const 0 - call $~lib/typedarray/Int8Array#__get - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 529 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Int8Array#__get - i32.const 7 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 530 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Int8Array#__get - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 531 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 3 - call $~lib/typedarray/Int8Array#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 532 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint8Array#reverse (; 406 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.load offset=4 - local.set $2 - block $break|0 - i32.const 0 - local.set $3 - local.get $1 - call $~lib/typedarray/Uint8Array#get:length - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $3 - local.get $4 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.const 0 - i32.shl - i32.add - local.set $5 - local.get $2 - local.get $4 - i32.const 0 - i32.shl - i32.add - local.set $6 - local.get $5 - i32.load8_u - local.set $7 - local.get $5 - local.get $6 - i32.load8_u - i32.store8 - local.get $6 - local.get $7 - i32.store8 - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $~lib/typedarray/Uint8Array#subarray (; 407 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/typedarray/Uint8Array#get:length - local.set $6 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $4 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $4 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $4 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $3 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $3 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $3 - local.get $3 - local.tee $7 - local.get $4 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - local.set $3 - i32.const 12 - i32.const 4 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.tee $8 - local.get $5 - i32.load - local.tee $9 - local.get $8 - i32.load - local.tee $8 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $9 - i32.store - local.get $7 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 0 - i32.shl - i32.add - i32.store offset=4 - local.get $7 - local.get $3 - local.get $4 - i32.sub - i32.const 0 - i32.shl - i32.store offset=8 - local.get $7 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint8Array,u8> (; 408 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayReverseValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint8Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint8Array#constructor - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - block $break|0 - i32.const 0 - local.set $6 - loop $loop|0 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8Array#__set - local.get $5 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8Array#__set - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Uint8Array#reverse - call $~lib/rt/pure/__release - block $break|1 - i32.const 0 - local.set $6 - loop $loop|1 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $6 - call $~lib/typedarray/Uint8Array#__get - local.get $0 - local.get $1 - i32.const 1 - i32.sub - local.get $6 - i32.sub - call $~lib/array/Array#__get - i32.const 255 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 524 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 4 - i32.const 8 - call $~lib/typedarray/Uint8Array#subarray - local.tee $6 - call $~lib/typedarray/Uint8Array#reverse - local.set $7 - local.get $7 - i32.const 0 - call $~lib/typedarray/Uint8Array#__get - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 529 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Uint8Array#__get - i32.const 7 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 530 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Uint8Array#__get - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 531 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 3 - call $~lib/typedarray/Uint8Array#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 532 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint8ClampedArray#reverse (; 409 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.load offset=4 - local.set $2 - block $break|0 - i32.const 0 - local.set $3 - local.get $1 - call $~lib/typedarray/Uint8ClampedArray#get:length - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $3 - local.get $4 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.const 0 - i32.shl - i32.add - local.set $5 - local.get $2 - local.get $4 - i32.const 0 - i32.shl - i32.add - local.set $6 - local.get $5 - i32.load8_u - local.set $7 - local.get $5 - local.get $6 - i32.load8_u - i32.store8 - local.get $6 - local.get $7 - i32.store8 - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $~lib/typedarray/Uint8ClampedArray#subarray (; 410 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.set $6 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $4 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $4 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $4 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $3 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $3 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $3 - local.get $3 - local.tee $7 - local.get $4 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - local.set $3 - i32.const 12 - i32.const 5 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.tee $8 - local.get $5 - i32.load - local.tee $9 - local.get $8 - i32.load - local.tee $8 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $9 - i32.store - local.get $7 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 0 - i32.shl - i32.add - i32.store offset=4 - local.get $7 - local.get $3 - local.get $4 - i32.sub - i32.const 0 - i32.shl - i32.store offset=8 - local.get $7 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint8ClampedArray,u8> (; 411 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayReverseValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - block $break|0 - i32.const 0 - local.set $6 - loop $loop|0 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $5 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Uint8ClampedArray#reverse - call $~lib/rt/pure/__release - block $break|1 - i32.const 0 - local.set $6 - loop $loop|1 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $6 - call $~lib/typedarray/Uint8ClampedArray#__get - local.get $0 - local.get $1 - i32.const 1 - i32.sub - local.get $6 - i32.sub - call $~lib/array/Array#__get - i32.const 255 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 524 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 4 - i32.const 8 - call $~lib/typedarray/Uint8ClampedArray#subarray - local.tee $6 - call $~lib/typedarray/Uint8ClampedArray#reverse - local.set $7 - local.get $7 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 529 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 7 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 530 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 531 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 532 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int16Array#reverse (; 412 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.load offset=4 - local.set $2 - block $break|0 - i32.const 0 - local.set $3 - local.get $1 - call $~lib/typedarray/Int16Array#get:length - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $3 - local.get $4 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $5 - local.get $2 - local.get $4 - i32.const 1 - i32.shl - i32.add - local.set $6 - local.get $5 - i32.load16_s - local.set $7 - local.get $5 - local.get $6 - i32.load16_s - i32.store16 - local.get $6 - local.get $7 - i32.store16 - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $~lib/typedarray/Int16Array#subarray (; 413 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/typedarray/Int16Array#get:length - local.set $6 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $4 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $4 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $4 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $3 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $3 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $3 - local.get $3 - local.tee $7 - local.get $4 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - local.set $3 - i32.const 12 - i32.const 6 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.tee $8 - local.get $5 - i32.load - local.tee $9 - local.get $8 - i32.load - local.tee $8 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $9 - i32.store - local.get $7 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 1 - i32.shl - i32.add - i32.store offset=4 - local.get $7 - local.get $3 - local.get $4 - i32.sub - i32.const 1 - i32.shl - i32.store offset=8 - local.get $7 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Int16Array,i16> (; 414 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayReverseValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int16Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int16Array#constructor - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - block $break|0 - i32.const 0 - local.set $6 - loop $loop|0 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - call $~lib/typedarray/Int16Array#__set - local.get $5 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - call $~lib/typedarray/Int16Array#__set - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Int16Array#reverse - call $~lib/rt/pure/__release - block $break|1 - i32.const 0 - local.set $6 - loop $loop|1 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $6 - call $~lib/typedarray/Int16Array#__get - local.get $0 - local.get $1 - i32.const 1 - i32.sub - local.get $6 - i32.sub - call $~lib/array/Array#__get - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 524 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 4 - i32.const 8 - call $~lib/typedarray/Int16Array#subarray - local.tee $6 - call $~lib/typedarray/Int16Array#reverse - local.set $7 - local.get $7 - i32.const 0 - call $~lib/typedarray/Int16Array#__get - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 529 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Int16Array#__get - i32.const 7 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 530 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Int16Array#__get - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 531 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 3 - call $~lib/typedarray/Int16Array#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 532 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint16Array#reverse (; 415 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.load offset=4 - local.set $2 - block $break|0 - i32.const 0 - local.set $3 - local.get $1 - call $~lib/typedarray/Uint16Array#get:length - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $3 - local.get $4 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $5 - local.get $2 - local.get $4 - i32.const 1 - i32.shl - i32.add - local.set $6 - local.get $5 - i32.load16_u - local.set $7 - local.get $5 - local.get $6 - i32.load16_u - i32.store16 - local.get $6 - local.get $7 - i32.store16 - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $~lib/typedarray/Uint16Array#subarray (; 416 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - local.set $6 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $4 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $4 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $4 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $3 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $3 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $3 - local.get $3 - local.tee $7 - local.get $4 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - local.set $3 - i32.const 12 - i32.const 7 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.tee $8 - local.get $5 - i32.load - local.tee $9 - local.get $8 - i32.load - local.tee $8 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $9 - i32.store - local.get $7 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 1 - i32.shl - i32.add - i32.store offset=4 - local.get $7 - local.get $3 - local.get $4 - i32.sub - i32.const 1 - i32.shl - i32.store offset=8 - local.get $7 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint16Array,u16> (; 417 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayReverseValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint16Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint16Array#constructor - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - block $break|0 - i32.const 0 - local.set $6 - loop $loop|0 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i32.const 65535 - i32.and - call $~lib/typedarray/Uint16Array#__set - local.get $5 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i32.const 65535 - i32.and - call $~lib/typedarray/Uint16Array#__set - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Uint16Array#reverse - call $~lib/rt/pure/__release - block $break|1 - i32.const 0 - local.set $6 - loop $loop|1 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $6 - call $~lib/typedarray/Uint16Array#__get - local.get $0 - local.get $1 - i32.const 1 - i32.sub - local.get $6 - i32.sub - call $~lib/array/Array#__get - i32.const 65535 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 524 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 4 - i32.const 8 - call $~lib/typedarray/Uint16Array#subarray - local.tee $6 - call $~lib/typedarray/Uint16Array#reverse - local.set $7 - local.get $7 - i32.const 0 - call $~lib/typedarray/Uint16Array#__get - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 529 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Uint16Array#__get - i32.const 7 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 530 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Uint16Array#__get - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 531 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 3 - call $~lib/typedarray/Uint16Array#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 532 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int32Array#reverse (; 418 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.load offset=4 - local.set $2 - block $break|0 - i32.const 0 - local.set $3 - local.get $1 - call $~lib/typedarray/Int32Array#get:length - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $3 - local.get $4 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.const 2 - i32.shl - i32.add - local.set $5 - local.get $2 - local.get $4 - i32.const 2 - i32.shl - i32.add - local.set $6 - local.get $5 - i32.load - local.set $7 - local.get $5 - local.get $6 - i32.load - i32.store - local.get $6 - local.get $7 - i32.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Int32Array,i32> (; 419 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayReverseValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int32Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int32Array#constructor - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - block $break|0 - i32.const 0 - local.set $6 - loop $loop|0 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - call $~lib/typedarray/Int32Array#__set - local.get $5 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - call $~lib/typedarray/Int32Array#__set - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Int32Array#reverse - call $~lib/rt/pure/__release - block $break|1 - i32.const 0 - local.set $6 - loop $loop|1 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $6 - call $~lib/typedarray/Int32Array#__get - local.get $0 - local.get $1 - i32.const 1 - i32.sub - local.get $6 - i32.sub - call $~lib/array/Array#__get - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 524 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 4 - i32.const 8 - call $~lib/typedarray/Int32Array#subarray - local.tee $6 - call $~lib/typedarray/Int32Array#reverse - local.set $7 - local.get $7 - i32.const 0 - call $~lib/typedarray/Int32Array#__get - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 529 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Int32Array#__get - i32.const 7 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 530 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Int32Array#__get - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 531 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 3 - call $~lib/typedarray/Int32Array#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 532 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint32Array#reverse (; 420 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.load offset=4 - local.set $2 - block $break|0 - i32.const 0 - local.set $3 - local.get $1 - call $~lib/typedarray/Uint32Array#get:length - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $3 - local.get $4 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.const 2 - i32.shl - i32.add - local.set $5 - local.get $2 - local.get $4 - i32.const 2 - i32.shl - i32.add - local.set $6 - local.get $5 - i32.load - local.set $7 - local.get $5 - local.get $6 - i32.load - i32.store - local.get $6 - local.get $7 - i32.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $~lib/typedarray/Uint32Array#subarray (; 421 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/typedarray/Uint32Array#get:length - local.set $6 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $4 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $4 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $4 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $3 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $3 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $3 - local.get $3 - local.tee $7 - local.get $4 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - local.set $3 - i32.const 12 - i32.const 9 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.tee $8 - local.get $5 - i32.load - local.tee $9 - local.get $8 - i32.load - local.tee $8 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $9 - i32.store - local.get $7 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.store offset=4 - local.get $7 - local.get $3 - local.get $4 - i32.sub - i32.const 2 - i32.shl - i32.store offset=8 - local.get $7 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint32Array,u32> (; 422 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayReverseValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint32Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint32Array#constructor - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - block $break|0 - i32.const 0 - local.set $6 - loop $loop|0 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - call $~lib/typedarray/Uint32Array#__set - local.get $5 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - call $~lib/typedarray/Uint32Array#__set - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Uint32Array#reverse - call $~lib/rt/pure/__release - block $break|1 - i32.const 0 - local.set $6 - loop $loop|1 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $6 - call $~lib/typedarray/Uint32Array#__get - local.get $0 - local.get $1 - i32.const 1 - i32.sub - local.get $6 - i32.sub - call $~lib/array/Array#__get - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 524 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 4 - i32.const 8 - call $~lib/typedarray/Uint32Array#subarray - local.tee $6 - call $~lib/typedarray/Uint32Array#reverse - local.set $7 - local.get $7 - i32.const 0 - call $~lib/typedarray/Uint32Array#__get - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 529 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Uint32Array#__get - i32.const 7 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 530 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Uint32Array#__get - i32.const 6 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 531 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 3 - call $~lib/typedarray/Uint32Array#__get - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 532 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int64Array#reverse (; 423 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i64) - local.get $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.load offset=4 - local.set $2 - block $break|0 - i32.const 0 - local.set $3 - local.get $1 - call $~lib/typedarray/Int64Array#get:length - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $3 - local.get $4 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.const 3 - i32.shl - i32.add - local.set $5 - local.get $2 - local.get $4 - i32.const 3 - i32.shl - i32.add - local.set $6 - local.get $5 - i64.load - local.set $7 - local.get $5 - local.get $6 - i64.load - i64.store - local.get $6 - local.get $7 - i64.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $~lib/typedarray/Int64Array#subarray (; 424 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/typedarray/Int64Array#get:length - local.set $6 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $4 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $4 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $4 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $3 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $3 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $3 - local.get $3 - local.tee $7 - local.get $4 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - local.set $3 - i32.const 12 - i32.const 10 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.tee $8 - local.get $5 - i32.load - local.tee $9 - local.get $8 - i32.load - local.tee $8 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $9 - i32.store - local.get $7 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 3 - i32.shl - i32.add - i32.store offset=4 - local.get $7 - local.get $3 - local.get $4 - i32.sub - i32.const 3 - i32.shl - i32.store offset=8 - local.get $7 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Int64Array,i64> (; 425 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayReverseValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int64Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int64Array#constructor - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - block $break|0 - i32.const 0 - local.set $6 - loop $loop|0 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Int64Array#__set - local.get $5 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Int64Array#__set - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Int64Array#reverse - call $~lib/rt/pure/__release - block $break|1 - i32.const 0 - local.set $6 - loop $loop|1 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $6 - call $~lib/typedarray/Int64Array#__get - local.get $0 - local.get $1 - i32.const 1 - i32.sub - local.get $6 - i32.sub - call $~lib/array/Array#__get - i64.extend_i32_s - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 524 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 4 - i32.const 8 - call $~lib/typedarray/Int64Array#subarray - local.tee $6 - call $~lib/typedarray/Int64Array#reverse - local.set $7 - local.get $7 - i32.const 0 - call $~lib/typedarray/Int64Array#__get - i64.const 8 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 529 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Int64Array#__get - i64.const 7 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 530 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Int64Array#__get - i64.const 6 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 531 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 3 - call $~lib/typedarray/Int64Array#__get - i64.const 5 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 532 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint64Array#reverse (; 426 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i64) - local.get $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.load offset=4 - local.set $2 - block $break|0 - i32.const 0 - local.set $3 - local.get $1 - call $~lib/typedarray/Uint64Array#get:length - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $3 - local.get $4 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.const 3 - i32.shl - i32.add - local.set $5 - local.get $2 - local.get $4 - i32.const 3 - i32.shl - i32.add - local.set $6 - local.get $5 - i64.load - local.set $7 - local.get $5 - local.get $6 - i64.load - i64.store - local.get $6 - local.get $7 - i64.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $~lib/typedarray/Uint64Array#subarray (; 427 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/typedarray/Uint64Array#get:length - local.set $6 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $4 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $4 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $4 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $3 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $3 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $3 - local.get $3 - local.tee $7 - local.get $4 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - local.set $3 - i32.const 12 - i32.const 11 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.tee $8 - local.get $5 - i32.load - local.tee $9 - local.get $8 - i32.load - local.tee $8 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $9 - i32.store - local.get $7 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 3 - i32.shl - i32.add - i32.store offset=4 - local.get $7 - local.get $3 - local.get $4 - i32.sub - i32.const 3 - i32.shl - i32.store offset=8 - local.get $7 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint64Array,u64> (; 428 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayReverseValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint64Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint64Array#constructor - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - block $break|0 - i32.const 0 - local.set $6 - loop $loop|0 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Uint64Array#__set - local.get $5 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Uint64Array#__set - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Uint64Array#reverse - call $~lib/rt/pure/__release - block $break|1 - i32.const 0 - local.set $6 - loop $loop|1 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $6 - call $~lib/typedarray/Uint64Array#__get - local.get $0 - local.get $1 - i32.const 1 - i32.sub - local.get $6 - i32.sub - call $~lib/array/Array#__get - i64.extend_i32_s - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 524 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 4 - i32.const 8 - call $~lib/typedarray/Uint64Array#subarray - local.tee $6 - call $~lib/typedarray/Uint64Array#reverse - local.set $7 - local.get $7 - i32.const 0 - call $~lib/typedarray/Uint64Array#__get - i64.const 8 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 529 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Uint64Array#__get - i64.const 7 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 530 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Uint64Array#__get - i64.const 6 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 531 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 3 - call $~lib/typedarray/Uint64Array#__get - i64.const 5 - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 532 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Float32Array#reverse (; 429 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 f32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.load offset=4 - local.set $2 - block $break|0 - i32.const 0 - local.set $3 - local.get $1 - call $~lib/typedarray/Float32Array#get:length - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $3 - local.get $4 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.const 2 - i32.shl - i32.add - local.set $5 - local.get $2 - local.get $4 - i32.const 2 - i32.shl - i32.add - local.set $6 - local.get $5 - f32.load - local.set $7 - local.get $5 - local.get $6 - f32.load - f32.store - local.get $6 - local.get $7 - f32.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $~lib/typedarray/Float32Array#subarray (; 430 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/typedarray/Float32Array#get:length - local.set $6 - local.get $4 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $4 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $4 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $4 - local.get $3 - i32.const 0 - i32.lt_s - if (result i32) - local.get $6 - local.get $3 - i32.add - local.tee $7 - i32.const 0 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - else - local.get $3 - local.tee $7 - local.get $6 - local.tee $8 - local.get $7 - local.get $8 - i32.lt_s - select - end - local.set $3 - local.get $3 - local.tee $7 - local.get $4 - local.tee $8 - local.get $7 - local.get $8 - i32.gt_s - select - local.set $3 - i32.const 12 - i32.const 12 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $7 - local.get $7 - local.tee $8 - local.get $5 - i32.load - local.tee $9 - local.get $8 - i32.load - local.tee $8 - i32.ne - if - local.get $9 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $9 - i32.store - local.get $7 - local.get $5 - i32.load offset=4 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.store offset=4 - local.get $7 - local.get $3 - local.get $4 - i32.sub - i32.const 2 - i32.shl - i32.store offset=8 - local.get $7 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Float32Array,f32> (; 431 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayReverseValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Float32Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - i32.const 0 - local.get $1 - call $~lib/typedarray/Float32Array#constructor - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - block $break|0 - i32.const 0 - local.set $6 - loop $loop|0 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - f32.convert_i32_s - call $~lib/typedarray/Float32Array#__set - local.get $5 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - f32.convert_i32_s - call $~lib/typedarray/Float32Array#__set - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Float32Array#reverse - call $~lib/rt/pure/__release - block $break|1 - i32.const 0 - local.set $6 - loop $loop|1 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $6 - call $~lib/typedarray/Float32Array#__get - local.get $0 - local.get $1 - i32.const 1 - i32.sub - local.get $6 - i32.sub - call $~lib/array/Array#__get - f32.convert_i32_s - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 524 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 4 - i32.const 8 - call $~lib/typedarray/Float32Array#subarray - local.tee $6 - call $~lib/typedarray/Float32Array#reverse - local.set $7 - local.get $7 - i32.const 0 - call $~lib/typedarray/Float32Array#__get - f32.const 8 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 529 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Float32Array#__get - f32.const 7 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 530 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Float32Array#__get - f32.const 6 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 531 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 3 - call $~lib/typedarray/Float32Array#__get - f32.const 5 - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 532 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Float64Array#reverse (; 432 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 f64) - local.get $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.load offset=4 - local.set $2 - block $break|0 - i32.const 0 - local.set $3 - local.get $1 - call $~lib/typedarray/Float64Array#get:length - i32.const 1 - i32.sub - local.set $4 - loop $loop|0 - local.get $3 - local.get $4 - i32.lt_u - i32.eqz - br_if $break|0 - local.get $2 - local.get $3 - i32.const 3 - i32.shl - i32.add - local.set $5 - local.get $2 - local.get $4 - i32.const 3 - i32.shl - i32.add - local.set $6 - local.get $5 - f64.load - local.set $7 - local.get $5 - local.get $6 - f64.load - f64.store - local.get $6 - local.get $7 - f64.store - local.get $3 - i32.const 1 - i32.add - local.set $3 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - br $loop|0 - end - unreachable - end - local.get $1 - ) - (func $std/typedarray/testArrayReverse<~lib/typedarray/Float64Array,f64> (; 433 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayReverseValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Float64Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - i32.const 0 - local.get $1 - call $~lib/typedarray/Float64Array#constructor - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - block $break|0 - i32.const 0 - local.set $6 - loop $loop|0 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - f64.convert_i32_s - call $~lib/typedarray/Float64Array#__set - local.get $5 - local.get $6 - local.get $0 - local.get $6 - call $~lib/array/Array#__get - f64.convert_i32_s - call $~lib/typedarray/Float64Array#__set - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Float64Array#reverse - call $~lib/rt/pure/__release - block $break|1 - i32.const 0 - local.set $6 - loop $loop|1 - local.get $6 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $6 - call $~lib/typedarray/Float64Array#__get - local.get $0 - local.get $1 - i32.const 1 - i32.sub - local.get $6 - i32.sub - call $~lib/array/Array#__get - f64.convert_i32_s - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 524 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $loop|1 - end - unreachable - end - local.get $5 - i32.const 4 - i32.const 8 - call $~lib/typedarray/Float64Array#subarray - local.tee $6 - call $~lib/typedarray/Float64Array#reverse - local.set $7 - local.get $7 - i32.const 0 - call $~lib/typedarray/Float64Array#__get - f64.const 8 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 529 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - call $~lib/typedarray/Float64Array#__get - f64.const 7 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 530 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 2 - call $~lib/typedarray/Float64Array#__get - f64.const 6 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 531 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 3 - call $~lib/typedarray/Float64Array#__get - f64.const 5 - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 532 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int8Array#indexOf (; 434 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Int8Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $6 - local.get $7 - i32.ge_s - end - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.tee $8 - i32.const 0 - local.tee $9 - local.get $8 - local.get $9 - i32.gt_s - select - local.set $6 - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.get $4 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Int8Array#lastIndexOf (; 435 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Int8Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.set $6 - else - local.get $6 - local.get $7 - i32.ge_s - if - local.get $7 - i32.const 1 - i32.sub - local.set $6 - end - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.get $4 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 - end - local.get $6 - i32.const 1 - i32.sub - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Int8Array#lastIndexOf|trampoline (; 436 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - call $~lib/typedarray/Int8Array#get:length - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Int8Array#lastIndexOf - ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int8Array,i8> (; 437 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int8Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - call $~lib/typedarray/Int8Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Int8Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 557 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Int8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 558 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Int8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 559 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Int8Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 560 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Int8Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 561 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Int8Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 562 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 10 - call $~lib/typedarray/Int8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 564 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -100 - call $~lib/typedarray/Int8Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 565 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Int8Array#lastIndexOf|trampoline - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 567 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Int8Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 568 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Int8Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 569 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Int8Array#lastIndexOf|trampoline - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 570 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int8Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 571 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Int8Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 572 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Int8Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 573 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 100 - call $~lib/typedarray/Int8Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 574 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -10 - call $~lib/typedarray/Int8Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 575 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -11 - call $~lib/typedarray/Int8Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 576 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 4 - i32.const 9 - call $~lib/typedarray/Int8Array#subarray - local.set $5 - local.get $5 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Int8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 580 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 4 - i32.const 0 - call $~lib/typedarray/Int8Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 581 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 0 - call $~lib/typedarray/Int8Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 582 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 9 - i32.const 0 - call $~lib/typedarray/Int8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 583 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 10 - i32.const 0 - call $~lib/typedarray/Int8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 584 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Int8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 585 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 1 - call $~lib/typedarray/Int8Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 2 - call $~lib/typedarray/Int8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 587 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint8Array#indexOf (; 438 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Uint8Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $6 - local.get $7 - i32.ge_s - end - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.tee $8 - i32.const 0 - local.tee $9 - local.get $8 - local.get $9 - i32.gt_s - select - local.set $6 - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $4 - i32.const 255 - i32.and - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Uint8Array#lastIndexOf (; 439 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Uint8Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.set $6 - else - local.get $6 - local.get $7 - i32.ge_s - if - local.get $7 - i32.const 1 - i32.sub - local.set $6 - end - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $4 - i32.const 255 - i32.and - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 - end - local.get $6 - i32.const 1 - i32.sub - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Uint8Array#lastIndexOf|trampoline (; 440 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - call $~lib/typedarray/Uint8Array#get:length - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Uint8Array#lastIndexOf - ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint8Array,u8> (; 441 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint8Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint8Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 557 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Uint8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 558 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Uint8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 559 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint8Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 560 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Uint8Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 561 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Uint8Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 562 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 10 - call $~lib/typedarray/Uint8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 564 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -100 - call $~lib/typedarray/Uint8Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 565 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint8Array#lastIndexOf|trampoline - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 567 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Uint8Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 568 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Uint8Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 569 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint8Array#lastIndexOf|trampoline - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 570 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint8Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 571 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Uint8Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 572 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Uint8Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 573 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 100 - call $~lib/typedarray/Uint8Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 574 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -10 - call $~lib/typedarray/Uint8Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 575 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -11 - call $~lib/typedarray/Uint8Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 576 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 4 - i32.const 9 - call $~lib/typedarray/Uint8Array#subarray - local.set $5 - local.get $5 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 580 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 4 - i32.const 0 - call $~lib/typedarray/Uint8Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 581 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 0 - call $~lib/typedarray/Uint8Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 582 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 9 - i32.const 0 - call $~lib/typedarray/Uint8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 583 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 10 - i32.const 0 - call $~lib/typedarray/Uint8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 584 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Uint8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 585 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 1 - call $~lib/typedarray/Uint8Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 2 - call $~lib/typedarray/Uint8Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 587 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint8ClampedArray#indexOf (; 442 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $6 - local.get $7 - i32.ge_s - end - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.tee $8 - i32.const 0 - local.tee $9 - local.get $8 - local.get $9 - i32.gt_s - select - local.set $6 - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $4 - i32.const 255 - i32.and - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Uint8ClampedArray#lastIndexOf (; 443 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.set $6 - else - local.get $6 - local.get $7 - i32.ge_s - if - local.get $7 - i32.const 1 - i32.sub - local.set $6 - end - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.get $4 - i32.const 255 - i32.and - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 - end - local.get $6 - i32.const 1 - i32.sub - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Uint8ClampedArray#lastIndexOf|trampoline (; 444 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Uint8ClampedArray#lastIndexOf - ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint8ClampedArray,u8> (; 445 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 557 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 558 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 559 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 560 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 561 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 562 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 10 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 564 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -100 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 565 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#lastIndexOf|trampoline - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 567 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 568 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 569 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#lastIndexOf|trampoline - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 570 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint8ClampedArray#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 571 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 572 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 573 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 100 - call $~lib/typedarray/Uint8ClampedArray#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 574 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -10 - call $~lib/typedarray/Uint8ClampedArray#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 575 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -11 - call $~lib/typedarray/Uint8ClampedArray#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 576 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 4 - i32.const 9 - call $~lib/typedarray/Uint8ClampedArray#subarray - local.set $5 - local.get $5 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 580 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 4 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 581 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 582 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 9 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 583 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 10 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 584 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 585 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 587 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int16Array#indexOf (; 446 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Int16Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $6 - local.get $7 - i32.ge_s - end - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.tee $8 - i32.const 0 - local.tee $9 - local.get $8 - local.get $9 - i32.gt_s - select - local.set $6 - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 1 - i32.shl - i32.add - i32.load16_s - local.get $4 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Int16Array#lastIndexOf (; 447 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Int16Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.set $6 - else - local.get $6 - local.get $7 - i32.ge_s - if - local.get $7 - i32.const 1 - i32.sub - local.set $6 - end - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 1 - i32.shl - i32.add - i32.load16_s - local.get $4 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 - end - local.get $6 - i32.const 1 - i32.sub - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Int16Array#lastIndexOf|trampoline (; 448 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - call $~lib/typedarray/Int16Array#get:length - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Int16Array#lastIndexOf - ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int16Array,i16> (; 449 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int16Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - call $~lib/typedarray/Int16Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Int16Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 557 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Int16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 558 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Int16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 559 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Int16Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 560 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Int16Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 561 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Int16Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 562 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 10 - call $~lib/typedarray/Int16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 564 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -100 - call $~lib/typedarray/Int16Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 565 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Int16Array#lastIndexOf|trampoline - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 567 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Int16Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 568 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Int16Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 569 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Int16Array#lastIndexOf|trampoline - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 570 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int16Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 571 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Int16Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 572 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Int16Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 573 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 100 - call $~lib/typedarray/Int16Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 574 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -10 - call $~lib/typedarray/Int16Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 575 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -11 - call $~lib/typedarray/Int16Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 576 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 4 - i32.const 9 - call $~lib/typedarray/Int16Array#subarray - local.set $5 - local.get $5 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Int16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 580 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 4 - i32.const 0 - call $~lib/typedarray/Int16Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 581 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 0 - call $~lib/typedarray/Int16Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 582 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 9 - i32.const 0 - call $~lib/typedarray/Int16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 583 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 10 - i32.const 0 - call $~lib/typedarray/Int16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 584 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Int16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 585 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 1 - call $~lib/typedarray/Int16Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 2 - call $~lib/typedarray/Int16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 587 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint16Array#indexOf (; 450 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $6 - local.get $7 - i32.ge_s - end - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.tee $8 - i32.const 0 - local.tee $9 - local.get $8 - local.get $9 - i32.gt_s - select - local.set $6 - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.get $4 - i32.const 65535 - i32.and - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Uint16Array#lastIndexOf (; 451 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Uint16Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.set $6 - else - local.get $6 - local.get $7 - i32.ge_s - if - local.get $7 - i32.const 1 - i32.sub - local.set $6 - end - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.get $4 - i32.const 65535 - i32.and - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 - end - local.get $6 - i32.const 1 - i32.sub - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Uint16Array#lastIndexOf|trampoline (; 452 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - call $~lib/typedarray/Uint16Array#get:length - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Uint16Array#lastIndexOf - ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint16Array,u16> (; 453 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint16Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i32.const 65535 - i32.and - call $~lib/typedarray/Uint16Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint16Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 557 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Uint16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 558 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Uint16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 559 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint16Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 560 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Uint16Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 561 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Uint16Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 562 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 10 - call $~lib/typedarray/Uint16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 564 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -100 - call $~lib/typedarray/Uint16Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 565 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint16Array#lastIndexOf|trampoline - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 567 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Uint16Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 568 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Uint16Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 569 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint16Array#lastIndexOf|trampoline - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 570 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint16Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 571 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Uint16Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 572 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Uint16Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 573 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 100 - call $~lib/typedarray/Uint16Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 574 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -10 - call $~lib/typedarray/Uint16Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 575 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -11 - call $~lib/typedarray/Uint16Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 576 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 4 - i32.const 9 - call $~lib/typedarray/Uint16Array#subarray - local.set $5 - local.get $5 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 580 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 4 - i32.const 0 - call $~lib/typedarray/Uint16Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 581 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 0 - call $~lib/typedarray/Uint16Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 582 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 9 - i32.const 0 - call $~lib/typedarray/Uint16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 583 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 10 - i32.const 0 - call $~lib/typedarray/Uint16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 584 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Uint16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 585 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 1 - call $~lib/typedarray/Uint16Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 2 - call $~lib/typedarray/Uint16Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 587 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int32Array#indexOf (; 454 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Int32Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $6 - local.get $7 - i32.ge_s - end - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.tee $8 - i32.const 0 - local.tee $9 - local.get $8 - local.get $9 - i32.gt_s - select - local.set $6 - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $4 - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Int32Array#lastIndexOf (; 455 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Int32Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.set $6 - else - local.get $6 - local.get $7 - i32.ge_s - if - local.get $7 - i32.const 1 - i32.sub - local.set $6 - end - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $4 - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 - end - local.get $6 - i32.const 1 - i32.sub - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Int32Array#lastIndexOf|trampoline (; 456 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - call $~lib/typedarray/Int32Array#get:length - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Int32Array#lastIndexOf - ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int32Array,i32> (; 457 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int32Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - call $~lib/typedarray/Int32Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Int32Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 557 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Int32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 558 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Int32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 559 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Int32Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 560 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Int32Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 561 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Int32Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 562 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 10 - call $~lib/typedarray/Int32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 564 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -100 - call $~lib/typedarray/Int32Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 565 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Int32Array#lastIndexOf|trampoline - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 567 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Int32Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 568 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Int32Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 569 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Int32Array#lastIndexOf|trampoline - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 570 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 571 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Int32Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 572 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Int32Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 573 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 100 - call $~lib/typedarray/Int32Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 574 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -10 - call $~lib/typedarray/Int32Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 575 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -11 - call $~lib/typedarray/Int32Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 576 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 4 - i32.const 9 - call $~lib/typedarray/Int32Array#subarray - local.set $5 - local.get $5 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Int32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 580 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 4 - i32.const 0 - call $~lib/typedarray/Int32Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 581 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 0 - call $~lib/typedarray/Int32Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 582 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 9 - i32.const 0 - call $~lib/typedarray/Int32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 583 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 10 - i32.const 0 - call $~lib/typedarray/Int32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 584 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Int32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 585 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 1 - call $~lib/typedarray/Int32Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 2 - call $~lib/typedarray/Int32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 587 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint32Array#indexOf (; 458 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Uint32Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $6 - local.get $7 - i32.ge_s - end - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.tee $8 - i32.const 0 - local.tee $9 - local.get $8 - local.get $9 - i32.gt_s - select - local.set $6 - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $4 - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Uint32Array#lastIndexOf (; 459 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Uint32Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.set $6 - else - local.get $6 - local.get $7 - i32.ge_s - if - local.get $7 - i32.const 1 - i32.sub - local.set $6 - end - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.get $4 - i32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 - end - local.get $6 - i32.const 1 - i32.sub - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Uint32Array#lastIndexOf|trampoline (; 460 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - call $~lib/typedarray/Uint32Array#get:length - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Uint32Array#lastIndexOf - ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint32Array,u32> (; 461 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint32Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - call $~lib/typedarray/Uint32Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint32Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 557 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Uint32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 558 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Uint32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 559 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint32Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 560 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Uint32Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 561 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Uint32Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 562 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 10 - call $~lib/typedarray/Uint32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 564 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -100 - call $~lib/typedarray/Uint32Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 565 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint32Array#lastIndexOf|trampoline - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 567 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Uint32Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 568 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const -1 - i32.const 0 - call $~lib/typedarray/Uint32Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 569 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint32Array#lastIndexOf|trampoline - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 570 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint32Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 571 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 3 - call $~lib/typedarray/Uint32Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 572 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 3 - i32.const 2 - call $~lib/typedarray/Uint32Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 573 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const 100 - call $~lib/typedarray/Uint32Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 574 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -10 - call $~lib/typedarray/Uint32Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 575 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 1 - i32.const -11 - call $~lib/typedarray/Uint32Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 576 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 4 - i32.const 9 - call $~lib/typedarray/Uint32Array#subarray - local.set $5 - local.get $5 - i32.const 3 - i32.const 0 - call $~lib/typedarray/Uint32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 580 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 4 - i32.const 0 - call $~lib/typedarray/Uint32Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 581 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 0 - call $~lib/typedarray/Uint32Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 582 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 9 - i32.const 0 - call $~lib/typedarray/Uint32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 583 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 10 - i32.const 0 - call $~lib/typedarray/Uint32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 584 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 11 - i32.const 0 - call $~lib/typedarray/Uint32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 585 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 1 - call $~lib/typedarray/Uint32Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i32.const 5 - i32.const 2 - call $~lib/typedarray/Uint32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 587 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int64Array#indexOf (; 462 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i64) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Int64Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $6 - local.get $7 - i32.ge_s - end - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.tee $8 - i32.const 0 - local.tee $9 - local.get $8 - local.get $9 - i32.gt_s - select - local.set $6 - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $4 - i64.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Int64Array#lastIndexOf (; 463 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i64) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Int64Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.set $6 - else - local.get $6 - local.get $7 - i32.ge_s - if - local.get $7 - i32.const 1 - i32.sub - local.set $6 - end - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $4 - i64.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 - end - local.get $6 - i32.const 1 - i32.sub - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Int64Array#lastIndexOf|trampoline (; 464 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - call $~lib/typedarray/Int64Array#get:length - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Int64Array#lastIndexOf - ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int64Array,i64> (; 465 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int64Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - i64.const 0 - i32.const 0 - call $~lib/typedarray/Int64Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 557 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 11 - i32.const 0 - call $~lib/typedarray/Int64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 558 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const -1 - i32.const 0 - call $~lib/typedarray/Int64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 559 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 0 - call $~lib/typedarray/Int64Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 560 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 2 - call $~lib/typedarray/Int64Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 561 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 3 - call $~lib/typedarray/Int64Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 562 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 4 - call $~lib/typedarray/Int64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 1 - i32.const 10 - call $~lib/typedarray/Int64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 564 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 1 - i32.const -100 - call $~lib/typedarray/Int64Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 565 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i64.const 0 - i32.const 0 - call $~lib/typedarray/Int64Array#lastIndexOf|trampoline - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 567 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i64.const 11 - i32.const 0 - call $~lib/typedarray/Int64Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 568 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i64.const -1 - i32.const 0 - call $~lib/typedarray/Int64Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 569 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i64.const 3 - i32.const 0 - call $~lib/typedarray/Int64Array#lastIndexOf|trampoline - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 570 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 4 - call $~lib/typedarray/Int64Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 571 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 3 - call $~lib/typedarray/Int64Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 572 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 2 - call $~lib/typedarray/Int64Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 573 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 1 - i32.const 100 - call $~lib/typedarray/Int64Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 574 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 1 - i32.const -10 - call $~lib/typedarray/Int64Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 575 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 1 - i32.const -11 - call $~lib/typedarray/Int64Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 576 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 4 - i32.const 9 - call $~lib/typedarray/Int64Array#subarray - local.set $5 - local.get $5 - i64.const 3 - i32.const 0 - call $~lib/typedarray/Int64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 580 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 4 - i32.const 0 - call $~lib/typedarray/Int64Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 581 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 5 - i32.const 0 - call $~lib/typedarray/Int64Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 582 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 9 - i32.const 0 - call $~lib/typedarray/Int64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 583 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 10 - i32.const 0 - call $~lib/typedarray/Int64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 584 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 11 - i32.const 0 - call $~lib/typedarray/Int64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 585 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 5 - i32.const 1 - call $~lib/typedarray/Int64Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 5 - i32.const 2 - call $~lib/typedarray/Int64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 587 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint64Array#indexOf (; 466 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i64) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Uint64Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $6 - local.get $7 - i32.ge_s - end - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.tee $8 - i32.const 0 - local.tee $9 - local.get $8 - local.get $9 - i32.gt_s - select - local.set $6 - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $4 - i64.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Uint64Array#lastIndexOf (; 467 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i64) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Uint64Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.set $6 - else - local.get $6 - local.get $7 - i32.ge_s - if - local.get $7 - i32.const 1 - i32.sub - local.set $6 - end - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 3 - i32.shl - i32.add - i64.load - local.get $4 - i64.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 - end - local.get $6 - i32.const 1 - i32.sub - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Uint64Array#lastIndexOf|trampoline (; 468 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - call $~lib/typedarray/Uint64Array#get:length - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Uint64Array#lastIndexOf - ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint64Array,u64> (; 469 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint64Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Uint64Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - i64.const 0 - i32.const 0 - call $~lib/typedarray/Uint64Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 557 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 11 - i32.const 0 - call $~lib/typedarray/Uint64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 558 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const -1 - i32.const 0 - call $~lib/typedarray/Uint64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 559 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 0 - call $~lib/typedarray/Uint64Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 560 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 2 - call $~lib/typedarray/Uint64Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 561 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 3 - call $~lib/typedarray/Uint64Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 562 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 4 - call $~lib/typedarray/Uint64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 1 - i32.const 10 - call $~lib/typedarray/Uint64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 564 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 1 - i32.const -100 - call $~lib/typedarray/Uint64Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 565 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i64.const 0 - i32.const 0 - call $~lib/typedarray/Uint64Array#lastIndexOf|trampoline - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 567 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i64.const 11 - i32.const 0 - call $~lib/typedarray/Uint64Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 568 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i64.const -1 - i32.const 0 - call $~lib/typedarray/Uint64Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 569 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - i64.const 3 - i32.const 0 - call $~lib/typedarray/Uint64Array#lastIndexOf|trampoline - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 570 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 4 - call $~lib/typedarray/Uint64Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 571 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 3 - call $~lib/typedarray/Uint64Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 572 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 3 - i32.const 2 - call $~lib/typedarray/Uint64Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 573 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 1 - i32.const 100 - call $~lib/typedarray/Uint64Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 574 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 1 - i32.const -10 - call $~lib/typedarray/Uint64Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 575 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i64.const 1 - i32.const -11 - call $~lib/typedarray/Uint64Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 576 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 4 - i32.const 9 - call $~lib/typedarray/Uint64Array#subarray - local.set $5 - local.get $5 - i64.const 3 - i32.const 0 - call $~lib/typedarray/Uint64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 580 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 4 - i32.const 0 - call $~lib/typedarray/Uint64Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 581 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 5 - i32.const 0 - call $~lib/typedarray/Uint64Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 582 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 9 - i32.const 0 - call $~lib/typedarray/Uint64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 583 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 10 - i32.const 0 - call $~lib/typedarray/Uint64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 584 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 11 - i32.const 0 - call $~lib/typedarray/Uint64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 585 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 5 - i32.const 1 - call $~lib/typedarray/Uint64Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - i64.const 5 - i32.const 2 - call $~lib/typedarray/Uint64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 587 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Float32Array#indexOf (; 470 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 f32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Float32Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $6 - local.get $7 - i32.ge_s - end - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.tee $8 - i32.const 0 - local.tee $9 - local.get $8 - local.get $9 - i32.gt_s - select - local.set $6 - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 2 - i32.shl - i32.add - f32.load - local.get $4 - f32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Float32Array#lastIndexOf (; 471 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 f32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Float32Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.set $6 - else - local.get $6 - local.get $7 - i32.ge_s - if - local.get $7 - i32.const 1 - i32.sub - local.set $6 - end - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 2 - i32.shl - i32.add - f32.load - local.get $4 - f32.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 - end - local.get $6 - i32.const 1 - i32.sub - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Float32Array#lastIndexOf|trampoline (; 472 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - call $~lib/typedarray/Float32Array#get:length - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Float32Array#lastIndexOf - ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Float32Array,f32> (; 473 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Float32Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - f32.convert_i32_s - call $~lib/typedarray/Float32Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - f32.const 0 - i32.const 0 - call $~lib/typedarray/Float32Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 557 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 11 - i32.const 0 - call $~lib/typedarray/Float32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 558 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const -1 - i32.const 0 - call $~lib/typedarray/Float32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 559 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 3 - i32.const 0 - call $~lib/typedarray/Float32Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 560 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 3 - i32.const 2 - call $~lib/typedarray/Float32Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 561 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 3 - i32.const 3 - call $~lib/typedarray/Float32Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 562 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 3 - i32.const 4 - call $~lib/typedarray/Float32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 1 - i32.const 10 - call $~lib/typedarray/Float32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 564 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 1 - i32.const -100 - call $~lib/typedarray/Float32Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 565 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - f32.const 0 - i32.const 0 - call $~lib/typedarray/Float32Array#lastIndexOf|trampoline - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 567 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - f32.const 11 - i32.const 0 - call $~lib/typedarray/Float32Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 568 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - f32.const -1 - i32.const 0 - call $~lib/typedarray/Float32Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 569 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - f32.const 3 - i32.const 0 - call $~lib/typedarray/Float32Array#lastIndexOf|trampoline - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 570 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 3 - i32.const 4 - call $~lib/typedarray/Float32Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 571 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 3 - i32.const 3 - call $~lib/typedarray/Float32Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 572 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 3 - i32.const 2 - call $~lib/typedarray/Float32Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 573 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 1 - i32.const 100 - call $~lib/typedarray/Float32Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 574 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 1 - i32.const -10 - call $~lib/typedarray/Float32Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 575 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f32.const 1 - i32.const -11 - call $~lib/typedarray/Float32Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 576 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 4 - i32.const 9 - call $~lib/typedarray/Float32Array#subarray - local.set $5 - local.get $5 - f32.const 3 - i32.const 0 - call $~lib/typedarray/Float32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 580 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f32.const 4 - i32.const 0 - call $~lib/typedarray/Float32Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 581 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f32.const 5 - i32.const 0 - call $~lib/typedarray/Float32Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 582 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f32.const 9 - i32.const 0 - call $~lib/typedarray/Float32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 583 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f32.const 10 - i32.const 0 - call $~lib/typedarray/Float32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 584 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f32.const 11 - i32.const 0 - call $~lib/typedarray/Float32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 585 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f32.const 5 - i32.const 1 - call $~lib/typedarray/Float32Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f32.const 5 - i32.const 2 - call $~lib/typedarray/Float32Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 587 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Float64Array#indexOf (; 474 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32) - (local $3 i32) - (local $4 f64) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Float64Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $6 - local.get $7 - i32.ge_s - end - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.tee $8 - i32.const 0 - local.tee $9 - local.get $8 - local.get $9 - i32.gt_s - select - local.set $6 - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - local.get $7 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 3 - i32.shl - i32.add - f64.load - local.get $4 - f64.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - end - local.get $6 - i32.const 1 - i32.add - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Float64Array#lastIndexOf (; 475 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32) - (local $3 i32) - (local $4 f64) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $3 - local.set $6 - local.get $5 - call $~lib/typedarray/Float64Array#get:length - local.set $7 - local.get $7 - i32.const 0 - i32.eq - if - i32.const -1 - local.set $8 - local.get $5 - call $~lib/rt/pure/__release - local.get $8 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - end - local.get $6 - i32.const 0 - i32.lt_s - if - local.get $7 - local.get $6 - i32.add - local.set $6 - else - local.get $6 - local.get $7 - i32.ge_s - if - local.get $7 - i32.const 1 - i32.sub - local.set $6 - end - end - local.get $5 - i32.load offset=4 - local.set $8 - block $break|0 - loop $continue|0 - local.get $6 - i32.const 0 - i32.ge_s - i32.eqz - br_if $break|0 - local.get $8 - local.get $6 - i32.const 3 - i32.shl - i32.add - f64.load - local.get $4 - f64.eq - if - local.get $6 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 - end - local.get $6 - i32.const 1 - i32.sub - local.set $6 - br $continue|0 - end - unreachable - end - i32.const -1 - local.set $9 - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - end - ) - (func $~lib/typedarray/Float64Array#lastIndexOf|trampoline (; 476 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32) - block $1of1 - block $0of1 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of1 $1of1 $outOfRange - end - unreachable - end - local.get $0 - call $~lib/typedarray/Float64Array#get:length - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Float64Array#lastIndexOf - ) - (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Float64Array,f64> (; 477 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Float64Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - f64.convert_i32_s - call $~lib/typedarray/Float64Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - f64.const 0 - i32.const 0 - call $~lib/typedarray/Float64Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 557 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 11 - i32.const 0 - call $~lib/typedarray/Float64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 558 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const -1 - i32.const 0 - call $~lib/typedarray/Float64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 559 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 3 - i32.const 0 - call $~lib/typedarray/Float64Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 560 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 3 - i32.const 2 - call $~lib/typedarray/Float64Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 561 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 3 - i32.const 3 - call $~lib/typedarray/Float64Array#indexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 562 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 3 - i32.const 4 - call $~lib/typedarray/Float64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 563 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 1 - i32.const 10 - call $~lib/typedarray/Float64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 564 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 1 - i32.const -100 - call $~lib/typedarray/Float64Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 565 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - f64.const 0 - i32.const 0 - call $~lib/typedarray/Float64Array#lastIndexOf|trampoline - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 567 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - f64.const 11 - i32.const 0 - call $~lib/typedarray/Float64Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 568 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - f64.const -1 - i32.const 0 - call $~lib/typedarray/Float64Array#lastIndexOf|trampoline - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 569 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 1 - global.set $~lib/argc - local.get $3 - f64.const 3 - i32.const 0 - call $~lib/typedarray/Float64Array#lastIndexOf|trampoline - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 570 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 3 - i32.const 4 - call $~lib/typedarray/Float64Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 571 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 3 - i32.const 3 - call $~lib/typedarray/Float64Array#lastIndexOf - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 572 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 3 - i32.const 2 - call $~lib/typedarray/Float64Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 573 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 1 - i32.const 100 - call $~lib/typedarray/Float64Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 574 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 1 - i32.const -10 - call $~lib/typedarray/Float64Array#lastIndexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 575 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - f64.const 1 - i32.const -11 - call $~lib/typedarray/Float64Array#lastIndexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 576 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 4 - i32.const 9 - call $~lib/typedarray/Float64Array#subarray - local.set $5 - local.get $5 - f64.const 3 - i32.const 0 - call $~lib/typedarray/Float64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 580 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f64.const 4 - i32.const 0 - call $~lib/typedarray/Float64Array#indexOf - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 581 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f64.const 5 - i32.const 0 - call $~lib/typedarray/Float64Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 582 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f64.const 9 - i32.const 0 - call $~lib/typedarray/Float64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 583 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f64.const 10 - i32.const 0 - call $~lib/typedarray/Float64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 584 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f64.const 11 - i32.const 0 - call $~lib/typedarray/Float64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 585 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f64.const 5 - i32.const 1 - call $~lib/typedarray/Float64Array#indexOf - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 586 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $5 - f64.const 5 - i32.const 2 - call $~lib/typedarray/Float64Array#indexOf - i32.const -1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 587 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - ) - (func $~lib/util/number/decimalCount32 (; 478 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - local.get $0 - i32.const 100000 - i32.lt_u - if - local.get $0 - i32.const 100 - i32.lt_u - if - i32.const 1 - i32.const 2 - local.get $0 - i32.const 10 - i32.lt_u - select - return - else - i32.const 4 - i32.const 5 - local.get $0 - i32.const 10000 - i32.lt_u - select - local.set $1 - i32.const 3 - local.get $1 - local.get $0 - i32.const 1000 - i32.lt_u - select - return - end - unreachable - else - local.get $0 - i32.const 10000000 - i32.lt_u - if - i32.const 6 - i32.const 7 - local.get $0 - i32.const 1000000 - i32.lt_u - select - return - else - i32.const 9 - i32.const 10 - local.get $0 - i32.const 1000000000 - i32.lt_u - select - local.set $1 - i32.const 8 - local.get $1 - local.get $0 - i32.const 100000000 - i32.lt_u - select - return - end - unreachable - end - unreachable - ) - (func $~lib/util/number/utoa32_lut (; 479 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - i32.const 2160 - i32.load offset=4 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i32.const 10000 - i32.ge_u - i32.eqz - br_if $break|0 - local.get $1 - i32.const 10000 - i32.div_u - local.set $4 - local.get $1 - i32.const 10000 - i32.rem_u - local.set $5 - local.get $4 - local.set $1 - local.get $5 - i32.const 100 - i32.div_u - local.set $6 - local.get $5 - i32.const 100 - i32.rem_u - local.set $7 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $8 - local.get $3 - local.get $7 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $9 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $8 - local.get $9 - i64.const 32 - i64.shl - i64.or - i64.store - br $continue|0 - end - unreachable - end - local.get $1 - i32.const 100 - i32.ge_u - if - local.get $1 - i32.const 100 - i32.div_u - local.set $7 - local.get $1 - i32.const 100 - i32.rem_u - local.set $6 - local.get $7 - local.set $1 - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $6 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - end - local.get $1 - i32.const 10 - i32.ge_u - if - local.get $2 - i32.const 2 - i32.sub - local.set $2 - local.get $3 - local.get $1 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store - else - local.get $2 - i32.const 1 - i32.sub - local.set $2 - i32.const 48 - local.get $1 - i32.add - local.set $5 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $5 - i32.store16 - end - ) - (func $~lib/util/number/itoa32 (; 480 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - i32.eqz - if - i32.const 1720 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i32.const 0 - i32.lt_s - local.set $1 - local.get $1 - if - i32.const 0 - local.get $0 - i32.sub - local.set $0 - end - local.get $0 - call $~lib/util/number/decimalCount32 - local.get $1 - i32.add - local.set $2 - local.get $2 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $3 - local.get $3 - local.set $6 - local.get $0 - local.set $5 - local.get $2 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - local.get $1 - if - local.get $3 - i32.const 45 - i32.store16 - end - local.get $3 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/itoa (; 481 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - call $~lib/util/number/itoa32 - return - ) - (func $~lib/string/String#get:length (; 482 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 16 - i32.sub - i32.load offset=12 - i32.const 1 - i32.shr_u - ) - (func $~lib/util/number/itoa_stream (; 483 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - i32.const 0 - i32.lt_s - local.set $4 - local.get $4 - if - i32.const 0 - local.get $2 - i32.sub - local.set $2 - end - local.get $2 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - call $~lib/util/number/decimalCount32 - local.get $4 - i32.add - local.set $3 - local.get $0 - local.set $7 - local.get $2 - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - local.set $6 - local.get $3 - local.set $5 - local.get $7 - local.get $6 - local.get $5 - call $~lib/util/number/utoa32_lut - local.get $4 - if - local.get $0 - i32.const 45 - i32.store16 - end - local.get $3 - ) - (func $~lib/string/String#substring (; 484 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $1 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $6 - local.get $2 - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - local.set $7 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - i32.const 1 - i32.shl - local.set $8 - local.get $6 - local.tee $4 - local.get $7 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - i32.const 1 - i32.shl - local.set $9 - local.get $9 - local.get $8 - i32.sub - local.set $3 - local.get $3 - i32.eqz - if - i32.const 1704 - call $~lib/rt/pure/__retain - return - end - local.get $8 - i32.eqz - if (result i32) - local.get $9 - local.get $0 - call $~lib/string/String#get:length - i32.const 1 - i32.shl - i32.eq - else - i32.const 0 - end - if - local.get $0 - call $~lib/rt/pure/__retain - return - end - local.get $3 - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $10 - local.get $10 - local.get $0 - local.get $8 - i32.add - local.get $3 - call $~lib/memory/memory.copy - local.get $10 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/string/joinIntegerArray (; 485 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 1704 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i32.load8_s - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 11 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 11 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 0 - i32.shl - i32.add - i32.load8_s - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Int8Array#join (; 486 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $0 - call $~lib/typedarray/Int8Array#get:length - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/util/string/compareImpl (; 487 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $2 - call $~lib/rt/pure/__retain - drop - i32.const 0 - local.set $5 - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $6 - local.get $2 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $7 - block $break|0 - loop $continue|0 - local.get $4 - if (result i32) - local.get $6 - i32.load16_u - local.get $7 - i32.load16_u - i32.sub - local.tee $5 - i32.eqz - else - i32.const 0 - end - i32.eqz - br_if $break|0 - local.get $4 - i32.const 1 - i32.sub - local.set $4 - local.get $6 - i32.const 2 - i32.add - local.set $6 - local.get $7 - i32.const 2 - i32.add - local.set $7 - br $continue|0 - end - unreachable - end - local.get $5 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/string/String.__eq (; 488 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - (local $3 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - local.get $1 - i32.eq - if - i32.const 1 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - i32.eq - if (result i32) - i32.const 1 - else - local.get $1 - i32.const 0 - i32.eq - end - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - call $~lib/string/String#get:length - local.set $3 - local.get $3 - local.get $1 - call $~lib/string/String#get:length - i32.ne - if - i32.const 0 - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - return - end - local.get $0 - i32.const 0 - local.get $1 - i32.const 0 - local.get $3 - call $~lib/util/string/compareImpl - i32.eqz - local.set $2 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/typedarray/Int8Array#toString (; 489 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 2192 - call $~lib/typedarray/Int8Array#join - ) - (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int8Array,i8> (; 490 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 5 - call $~lib/typedarray/Int8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int8Array#__set - local.get $1 - i32.const 2192 - call $~lib/typedarray/Int8Array#join - local.tee $2 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 614 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/typedarray/Int8Array#toString - local.tee $3 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 615 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/util/number/utoa32 (; 491 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - local.get $0 - i32.eqz - if - i32.const 1720 - call $~lib/rt/pure/__retain - return - end - local.get $0 - call $~lib/util/number/decimalCount32 - local.set $1 - local.get $1 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $2 - local.get $2 - local.set $5 - local.get $0 - local.set $4 - local.get $1 - local.set $3 - local.get $5 - local.get $4 - local.get $3 - call $~lib/util/number/utoa32_lut - local.get $2 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/itoa (; 492 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 255 - i32.and - call $~lib/util/number/utoa32 - return - ) - (func $~lib/util/number/itoa_stream (; 493 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i32.const 255 - i32.and - i32.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i32.const 255 - i32.and - call $~lib/util/number/decimalCount32 - local.set $3 - local.get $0 - local.set $6 - local.get $2 - i32.const 255 - i32.and - local.set $5 - local.get $3 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 494 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 1704 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i32.load8_u - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 10 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 10 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 0 - i32.shl - i32.add - i32.load8_u - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint8Array#join (; 495 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $0 - call $~lib/typedarray/Uint8Array#get:length - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/typedarray/Uint8Array#toString (; 496 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 2192 - call $~lib/typedarray/Uint8Array#join - ) - (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint8Array,u8> (; 497 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 5 - call $~lib/typedarray/Uint8Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Uint8Array#__set - local.get $1 - i32.const 2192 - call $~lib/typedarray/Uint8Array#join - local.tee $2 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 614 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/typedarray/Uint8Array#toString - local.tee $3 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 615 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint8ClampedArray#join (; 498 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $0 - call $~lib/typedarray/Uint8ClampedArray#get:length - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/typedarray/Uint8ClampedArray#toString (; 499 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 2192 - call $~lib/typedarray/Uint8ClampedArray#join - ) - (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint8ClampedArray,u8> (; 500 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 5 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 - i32.const 2192 - call $~lib/typedarray/Uint8ClampedArray#join - local.tee $2 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 614 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/typedarray/Uint8ClampedArray#toString - local.tee $3 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 615 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/util/number/itoa (; 501 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - call $~lib/util/number/itoa32 - return - ) - (func $~lib/util/number/itoa_stream (; 502 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - i32.const 0 - i32.lt_s - local.set $4 - local.get $4 - if - i32.const 0 - local.get $2 - i32.sub - local.set $2 - end - local.get $2 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - call $~lib/util/number/decimalCount32 - local.get $4 - i32.add - local.set $3 - local.get $0 - local.set $7 - local.get $2 - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - local.set $6 - local.get $3 - local.set $5 - local.get $7 - local.get $6 - local.get $5 - call $~lib/util/number/utoa32_lut - local.get $4 - if - local.get $0 - i32.const 45 - i32.store16 - end - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 503 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 1704 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i32.load16_s - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 11 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 11 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - i32.load16_s - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.load16_s - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Int16Array#join (; 504 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $0 - call $~lib/typedarray/Int16Array#get:length - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/typedarray/Int16Array#toString (; 505 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 2192 - call $~lib/typedarray/Int16Array#join - ) - (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int16Array,i16> (; 506 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 5 - call $~lib/typedarray/Int16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int16Array#__set - local.get $1 - i32.const 2192 - call $~lib/typedarray/Int16Array#join - local.tee $2 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 614 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/typedarray/Int16Array#toString - local.tee $3 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 615 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/util/number/itoa (; 507 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 65535 - i32.and - call $~lib/util/number/utoa32 - return - ) - (func $~lib/util/number/itoa_stream (; 508 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i32.const 65535 - i32.and - i32.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i32.const 65535 - i32.and - call $~lib/util/number/decimalCount32 - local.set $3 - local.get $0 - local.set $6 - local.get $2 - i32.const 65535 - i32.and - local.set $5 - local.get $3 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 509 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 1704 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i32.load16_u - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 10 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 10 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.load16_u - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint16Array#join (; 510 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $0 - call $~lib/typedarray/Uint16Array#get:length - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/typedarray/Uint16Array#toString (; 511 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 2192 - call $~lib/typedarray/Uint16Array#join - ) - (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint16Array,u16> (; 512 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 5 - call $~lib/typedarray/Uint16Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Uint16Array#__set - local.get $1 - i32.const 2192 - call $~lib/typedarray/Uint16Array#join - local.tee $2 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 614 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/typedarray/Uint16Array#toString - local.tee $3 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 615 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/util/number/itoa (; 513 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/itoa32 - return - ) - (func $~lib/util/number/itoa_stream (; 514 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i32.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i32.const 0 - i32.lt_s - local.set $4 - local.get $4 - if - i32.const 0 - local.get $2 - i32.sub - local.set $2 - end - local.get $2 - call $~lib/util/number/decimalCount32 - local.get $4 - i32.add - local.set $3 - local.get $0 - local.set $7 - local.get $2 - local.set $6 - local.get $3 - local.set $5 - local.get $7 - local.get $6 - local.get $5 - call $~lib/util/number/utoa32_lut - local.get $4 - if - local.get $0 - i32.const 45 - i32.store16 - end - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 515 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 1704 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i32.load - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 11 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 11 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Int32Array#join (; 516 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $0 - call $~lib/typedarray/Int32Array#get:length - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/typedarray/Int32Array#toString (; 517 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 2192 - call $~lib/typedarray/Int32Array#join - ) - (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int32Array,i32> (; 518 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 5 - call $~lib/typedarray/Int32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int32Array#__set - local.get $1 - i32.const 2192 - call $~lib/typedarray/Int32Array#join - local.tee $2 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 614 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/typedarray/Int32Array#toString - local.tee $3 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 615 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/util/number/itoa (; 519 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - call $~lib/util/number/utoa32 - return - ) - (func $~lib/util/number/itoa_stream (; 520 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i32.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - call $~lib/util/number/decimalCount32 - local.set $3 - local.get $0 - local.set $6 - local.get $2 - local.set $5 - local.get $3 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 521 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 1704 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i32.load - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 10 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 10 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - i32.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint32Array#join (; 522 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $0 - call $~lib/typedarray/Uint32Array#get:length - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/typedarray/Uint32Array#toString (; 523 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 2192 - call $~lib/typedarray/Uint32Array#join - ) - (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint32Array,u32> (; 524 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 5 - call $~lib/typedarray/Uint32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Uint32Array#__set - local.get $1 - i32.const 2192 - call $~lib/typedarray/Uint32Array#join - local.tee $2 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 614 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/typedarray/Uint32Array#toString - local.tee $3 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 615 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/util/number/decimalCount64 (; 525 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - (local $1 i32) - local.get $0 - i64.const 1000000000000000 - i64.lt_u - if - local.get $0 - i64.const 1000000000000 - i64.lt_u - if - i32.const 11 - i32.const 12 - local.get $0 - i64.const 100000000000 - i64.lt_u - select - local.set $1 - i32.const 10 - local.get $1 - local.get $0 - i64.const 10000000000 - i64.lt_u - select - return - else - i32.const 14 - i32.const 15 - local.get $0 - i64.const 100000000000000 - i64.lt_u - select - local.set $1 - i32.const 13 - local.get $1 - local.get $0 - i64.const 10000000000000 - i64.lt_u - select - return - end - unreachable - else - local.get $0 - i64.const 100000000000000000 - i64.lt_u - if - i32.const 16 - i32.const 17 - local.get $0 - i64.const 10000000000000000 - i64.lt_u - select - return - else - i32.const 19 - i32.const 20 - local.get $0 - i64.const -8446744073709551616 - i64.lt_u - select - local.set $1 - i32.const 18 - local.get $1 - local.get $0 - i64.const 1000000000000000000 - i64.lt_u - select - return - end - unreachable - end - unreachable - ) - (func $~lib/util/number/utoa64_lut (; 526 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) - (local $3 i32) - (local $4 i64) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i64) - (local $13 i64) - i32.const 2160 - i32.load offset=4 - local.set $3 - block $break|0 - loop $continue|0 - local.get $1 - i64.const 100000000 - i64.ge_u - i32.eqz - br_if $break|0 - local.get $1 - i64.const 100000000 - i64.div_u - local.set $4 - local.get $1 - local.get $4 - i64.const 100000000 - i64.mul - i64.sub - i32.wrap_i64 - local.set $5 - local.get $4 - local.set $1 - local.get $5 - i32.const 10000 - i32.div_u - local.set $6 - local.get $5 - i32.const 10000 - i32.rem_u - local.set $7 - local.get $6 - i32.const 100 - i32.div_u - local.set $8 - local.get $6 - i32.const 100 - i32.rem_u - local.set $9 - local.get $7 - i32.const 100 - i32.div_u - local.set $10 - local.get $7 - i32.const 100 - i32.rem_u - local.set $11 - local.get $3 - local.get $10 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $12 - local.get $3 - local.get $11 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $13 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $12 - local.get $13 - i64.const 32 - i64.shl - i64.or - i64.store - local.get $3 - local.get $8 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $12 - local.get $3 - local.get $9 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.set $13 - local.get $2 - i32.const 4 - i32.sub - local.set $2 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $12 - local.get $13 - i64.const 32 - i64.shl - i64.or - i64.store - br $continue|0 - end - unreachable - end - local.get $0 - local.get $1 - i32.wrap_i64 - local.get $2 - call $~lib/util/number/utoa32_lut - ) - (func $~lib/util/number/itoa64 (; 527 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - local.get $0 - i64.eqz - if - i32.const 1720 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i64.const 0 - i64.lt_s - local.set $1 - local.get $1 - if - i64.const 0 - local.get $0 - i64.sub - local.set $0 - end - local.get $0 - i64.const 4294967295 - i64.le_u - if - local.get $0 - i32.wrap_i64 - local.set $3 - local.get $3 - call $~lib/util/number/decimalCount32 - local.get $1 - i32.add - local.set $4 - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $2 - local.get $2 - local.set $7 - local.get $3 - local.set $6 - local.get $4 - local.set $5 - local.get $7 - local.get $6 - local.get $5 - call $~lib/util/number/utoa32_lut - else - local.get $0 - call $~lib/util/number/decimalCount64 - local.get $1 - i32.add - local.set $4 - local.get $4 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $2 - local.get $2 - local.set $6 - local.get $0 - local.set $8 - local.get $4 - local.set $5 - local.get $6 - local.get $8 - local.get $5 - call $~lib/util/number/utoa64_lut - end - local.get $1 - if - local.get $2 - i32.const 45 - i32.store16 - end - local.get $2 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/itoa (; 528 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - local.get $0 - call $~lib/util/number/itoa64 - return - ) - (func $~lib/util/number/itoa_stream (; 529 ;) (type $FUNCSIG$iiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i64) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i64.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i64.const 0 - i64.lt_s - local.set $4 - local.get $4 - if - i64.const 0 - local.get $2 - i64.sub - local.set $2 - end - local.get $2 - i64.const 4294967295 - i64.le_u - if - local.get $2 - i32.wrap_i64 - local.set $5 - local.get $5 - call $~lib/util/number/decimalCount32 - local.get $4 - i32.add - local.set $3 - local.get $0 - local.set $8 - local.get $5 - local.set $7 - local.get $3 - local.set $6 - local.get $8 - local.get $7 - local.get $6 - call $~lib/util/number/utoa32_lut - else - local.get $2 - call $~lib/util/number/decimalCount64 - local.get $4 - i32.add - local.set $3 - local.get $0 - local.set $7 - local.get $2 - local.set $9 - local.get $3 - local.set $6 - local.get $7 - local.get $9 - local.get $6 - call $~lib/util/number/utoa64_lut - end - local.get $4 - if - local.get $0 - i32.const 45 - i32.store16 - end - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 530 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 1704 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i64.load - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 21 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 21 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 3 - i32.shl - i32.add - i64.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 3 - i32.shl - i32.add - i64.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Int64Array#join (; 531 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $0 - call $~lib/typedarray/Int64Array#get:length - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/typedarray/Int64Array#toString (; 532 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 2192 - call $~lib/typedarray/Int64Array#join - ) - (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int64Array,i64> (; 533 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 5 - call $~lib/typedarray/Int64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 1 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 1 - i64.const 2 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 2 - i64.const 3 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 3 - i64.const 4 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 4 - i64.const 5 - call $~lib/typedarray/Int64Array#__set - local.get $1 - i32.const 2192 - call $~lib/typedarray/Int64Array#join - local.tee $2 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 614 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/typedarray/Int64Array#toString - local.tee $3 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 615 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/util/number/utoa64 (; 534 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i64) - local.get $0 - i64.eqz - if - i32.const 1720 - call $~lib/rt/pure/__retain - return - end - local.get $0 - i64.const 4294967295 - i64.le_u - if - local.get $0 - i32.wrap_i64 - local.set $2 - local.get $2 - call $~lib/util/number/decimalCount32 - local.set $3 - local.get $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $1 - local.get $1 - local.set $6 - local.get $2 - local.set $5 - local.get $3 - local.set $4 - local.get $6 - local.get $5 - local.get $4 - call $~lib/util/number/utoa32_lut - else - local.get $0 - call $~lib/util/number/decimalCount64 - local.set $3 - local.get $3 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $1 - local.get $1 - local.set $5 - local.get $0 - local.set $7 - local.get $3 - local.set $4 - local.get $5 - local.get $7 - local.get $4 - call $~lib/util/number/utoa64_lut - end - local.get $1 - call $~lib/rt/pure/__retain - ) - (func $~lib/util/number/itoa (; 535 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) - local.get $0 - call $~lib/util/number/utoa64 - return - ) - (func $~lib/util/number/itoa_stream (; 536 ;) (type $FUNCSIG$iiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i64) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - i64.eqz - if - local.get $0 - i32.const 48 - i32.store16 - i32.const 1 - return - end - i32.const 0 - local.set $3 - local.get $2 - i64.const 4294967295 - i64.le_u - if - local.get $2 - i32.wrap_i64 - local.set $4 - local.get $4 - call $~lib/util/number/decimalCount32 - local.set $3 - local.get $0 - local.set $7 - local.get $4 - local.set $6 - local.get $3 - local.set $5 - local.get $7 - local.get $6 - local.get $5 - call $~lib/util/number/utoa32_lut - else - local.get $2 - call $~lib/util/number/decimalCount64 - local.set $3 - local.get $0 - local.set $6 - local.get $2 - local.set $8 - local.get $3 - local.set $5 - local.get $6 - local.get $8 - local.get $5 - call $~lib/util/number/utoa64_lut - end - local.get $3 - ) - (func $~lib/util/string/joinIntegerArray (; 537 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i64) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 1704 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - i64.load - call $~lib/util/number/itoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 20 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 20 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 3 - i32.shl - i32.add - i64.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 3 - i32.shl - i32.add - i64.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/itoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Uint64Array#join (; 538 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $0 - call $~lib/typedarray/Uint64Array#get:length - local.get $1 - call $~lib/util/string/joinIntegerArray - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/typedarray/Uint64Array#toString (; 539 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 2192 - call $~lib/typedarray/Uint64Array#join - ) - (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint64Array,u64> (; 540 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 5 - call $~lib/typedarray/Uint64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - i64.const 1 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 1 - i64.const 2 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 2 - i64.const 3 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 3 - i64.const 4 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 4 - i64.const 5 - call $~lib/typedarray/Uint64Array#__set - local.get $1 - i32.const 2192 - call $~lib/typedarray/Uint64Array#join - local.tee $2 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 614 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/typedarray/Uint64Array#toString - local.tee $3 - i32.const 2216 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 615 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/number/isFinite (; 541 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - local.get $0 - local.get $0 - f64.sub - f64.const 0 - f64.eq - ) - (func $~lib/array/Array#__unchecked_get (; 542 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 3 - i32.shl - i32.add - i64.load - ) - (func $~lib/array/Array#__unchecked_get (; 543 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - local.get $0 - i32.load offset=4 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.load16_s - ) - (func $~lib/util/number/genDigits (; 544 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i64) - (local $11 i32) - (local $12 i32) - (local $13 i64) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i32) - (local $25 i32) - (local $26 i32) - i32.const 0 - local.get $4 - i32.sub - local.set $7 - i64.const 1 - local.get $7 - i64.extend_i32_s - i64.shl - local.set $8 - local.get $8 - i64.const 1 - i64.sub - local.set $9 - local.get $3 - local.get $1 - i64.sub - local.set $10 - local.get $4 - local.set $11 - local.get $3 - local.get $7 - i64.extend_i32_s - i64.shr_u - i32.wrap_i64 - local.set $12 - local.get $3 - local.get $9 - i64.and - local.set $13 - local.get $12 - call $~lib/util/number/decimalCount32 - local.set $14 - local.get $6 - local.set $15 - i32.const 3400 - i32.load offset=4 - local.set $16 - block $break|0 - loop $continue|0 - local.get $14 - i32.const 0 - i32.gt_s - i32.eqz - br_if $break|0 - block $break|1 - block $case10|1 - block $case9|1 - block $case8|1 - block $case7|1 - block $case6|1 - block $case5|1 - block $case4|1 - block $case3|1 - block $case2|1 - block $case1|1 - block $case0|1 - local.get $14 - local.set $18 - local.get $18 - i32.const 10 - i32.eq - br_if $case0|1 - local.get $18 - i32.const 9 - i32.eq - br_if $case1|1 - local.get $18 - i32.const 8 - i32.eq - br_if $case2|1 - local.get $18 - i32.const 7 - i32.eq - br_if $case3|1 - local.get $18 - i32.const 6 - i32.eq - br_if $case4|1 - local.get $18 - i32.const 5 - i32.eq - br_if $case5|1 - local.get $18 - i32.const 4 - i32.eq - br_if $case6|1 - local.get $18 - i32.const 3 - i32.eq - br_if $case7|1 - local.get $18 - i32.const 2 - i32.eq - br_if $case8|1 - local.get $18 - i32.const 1 - i32.eq - br_if $case9|1 - br $case10|1 - end - local.get $12 - i32.const 1000000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100000 - i32.div_u - local.set $17 - local.get $12 - i32.const 100000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10000 - i32.div_u - local.set $17 - local.get $12 - i32.const 10000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 1000 - i32.div_u - local.set $17 - local.get $12 - i32.const 1000 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 100 - i32.div_u - local.set $17 - local.get $12 - i32.const 100 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - i32.const 10 - i32.div_u - local.set $17 - local.get $12 - i32.const 10 - i32.rem_u - local.set $12 - br $break|1 - end - local.get $12 - local.set $17 - i32.const 0 - local.set $12 - br $break|1 - end - i32.const 0 - local.set $17 - br $break|1 - end - local.get $17 - local.get $15 - i32.or - if - local.get $0 - local.get $15 - local.tee $18 - i32.const 1 - i32.add - local.set $15 - local.get $18 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $17 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $12 - i64.extend_i32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.get $13 - i64.add - local.set $19 - local.get $19 - local.get $5 - i64.le_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $19 - local.set $22 - local.get $16 - local.get $14 - i32.const 2 - i32.shl - i32.add - i64.load32_u - local.get $7 - i64.extend_i32_s - i64.shl - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $25 - local.get $25 - i32.load16_u - local.set $26 - block $break|2 - loop $continue|2 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|2 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|2 - end - unreachable - end - local.get $25 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|0 - end - unreachable - end - loop $continue|3 - local.get $13 - i64.const 10 - i64.mul - local.set $13 - local.get $5 - i64.const 10 - i64.mul - local.set $5 - local.get $13 - local.get $7 - i64.extend_i32_s - i64.shr_u - local.set $19 - local.get $19 - local.get $15 - i64.extend_i32_s - i64.or - i64.const 0 - i64.ne - if - local.get $0 - local.get $15 - local.tee $17 - i32.const 1 - i32.add - local.set $15 - local.get $17 - i32.const 1 - i32.shl - i32.add - i32.const 48 - local.get $19 - i32.wrap_i64 - i32.const 65535 - i32.and - i32.add - i32.store16 - end - local.get $13 - local.get $9 - i64.and - local.set $13 - local.get $14 - i32.const 1 - i32.sub - local.set $14 - local.get $13 - local.get $5 - i64.lt_u - if - global.get $~lib/util/number/_K - local.get $14 - i32.add - global.set $~lib/util/number/_K - local.get $10 - local.get $16 - i32.const 0 - local.get $14 - i32.sub - i32.const 2 - i32.shl - i32.add - i64.load32_u - i64.mul - local.set $10 - local.get $0 - local.set $24 - local.get $15 - local.set $18 - local.get $5 - local.set $23 - local.get $13 - local.set $22 - local.get $8 - local.set $21 - local.get $10 - local.set $20 - local.get $24 - local.get $18 - i32.const 1 - i32.sub - i32.const 1 - i32.shl - i32.add - local.set $17 - local.get $17 - i32.load16_u - local.set $26 - block $break|4 - loop $continue|4 - local.get $22 - local.get $20 - i64.lt_u - if (result i32) - local.get $23 - local.get $22 - i64.sub - local.get $21 - i64.ge_u - else - i32.const 0 - end - if (result i32) - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.lt_u - if (result i32) - i32.const 1 - else - local.get $20 - local.get $22 - i64.sub - local.get $22 - local.get $21 - i64.add - local.get $20 - i64.sub - i64.gt_u - end - else - i32.const 0 - end - i32.eqz - br_if $break|4 - local.get $26 - i32.const 1 - i32.sub - local.set $26 - local.get $22 - local.get $21 - i64.add - local.set $22 - br $continue|4 - end - unreachable - end - local.get $17 - local.get $26 - i32.store16 - local.get $15 - return - end - br $continue|3 - end - unreachable - ) - (func $~lib/util/number/prettify (; 545 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - local.get $2 - i32.eqz - if - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $1 - i32.const 2 - i32.add - return - end - local.get $1 - local.get $2 - i32.add - local.set $3 - local.get $1 - local.get $3 - i32.le_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - block $break|0 - local.get $1 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.const 48 - i32.const 16 - i32.shl - i32.or - i32.store - local.get $3 - i32.const 2 - i32.add - return - else - local.get $3 - i32.const 0 - i32.gt_s - if (result i32) - local.get $3 - i32.const 21 - i32.le_s - else - i32.const 0 - end - if - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - local.set $4 - local.get $4 - i32.const 2 - i32.add - local.get $4 - i32.const 0 - local.get $2 - i32.sub - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - local.get $3 - i32.const 1 - i32.shl - i32.add - i32.const 46 - i32.store16 - local.get $1 - i32.const 1 - i32.add - return - else - i32.const -6 - local.get $3 - i32.lt_s - if (result i32) - local.get $3 - i32.const 0 - i32.le_s - else - i32.const 0 - end - if - i32.const 2 - local.get $3 - i32.sub - local.set $4 - local.get $0 - local.get $4 - i32.const 1 - i32.shl - i32.add - local.get $0 - local.get $1 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $0 - i32.const 48 - i32.const 46 - i32.const 16 - i32.shl - i32.or - i32.store - block $break|1 - i32.const 2 - local.set $5 - loop $loop|1 - local.get $5 - local.get $4 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $0 - local.get $5 - i32.const 1 - i32.shl - i32.add - i32.const 48 - i32.store16 - local.get $5 - i32.const 1 - i32.add - local.set $5 - br $loop|1 - end - unreachable - end - local.get $1 - local.get $4 - i32.add - return - else - local.get $1 - i32.const 1 - i32.eq - if - local.get $0 - i32.const 101 - i32.store16 offset=2 - local.get $0 - i32.const 4 - i32.add - local.set $4 - local.get $3 - i32.const 1 - i32.sub - local.set $5 - local.get $5 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $5 - i32.sub - local.set $5 - end - local.get $5 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $7 - local.get $4 - local.set $10 - local.get $5 - local.set $9 - local.get $7 - local.set $8 - local.get $10 - local.get $9 - local.get $8 - call $~lib/util/number/utoa32_lut - local.get $4 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $7 - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - else - local.get $1 - i32.const 1 - i32.shl - local.set $7 - local.get $0 - i32.const 4 - i32.add - local.get $0 - i32.const 2 - i32.add - local.get $7 - i32.const 2 - i32.sub - call $~lib/memory/memory.copy - local.get $0 - i32.const 46 - i32.store16 offset=2 - local.get $0 - local.get $7 - i32.add - i32.const 101 - i32.store16 offset=2 - local.get $1 - local.get $0 - local.get $7 - i32.add - i32.const 4 - i32.add - local.set $9 - local.get $3 - i32.const 1 - i32.sub - local.set $8 - local.get $8 - i32.const 0 - i32.lt_s - local.set $6 - local.get $6 - if - i32.const 0 - local.get $8 - i32.sub - local.set $8 - end - local.get $8 - call $~lib/util/number/decimalCount32 - i32.const 1 - i32.add - local.set $4 - local.get $9 - local.set $11 - local.get $8 - local.set $5 - local.get $4 - local.set $10 - local.get $11 - local.get $5 - local.get $10 - call $~lib/util/number/utoa32_lut - local.get $9 - i32.const 45 - i32.const 43 - local.get $6 - select - i32.store16 - local.get $4 - i32.add - local.set $1 - local.get $1 - i32.const 2 - i32.add - return - end - unreachable - end - unreachable - end - unreachable - end - unreachable - ) - (func $~lib/util/number/dtoa_core (; 546 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 f64) - (local $6 i64) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i32) - (local $11 i64) - (local $12 i64) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 f64) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i64) - (local $25 i64) - (local $26 i32) - (local $27 i64) - (local $28 i32) - local.get $1 - f64.const 0 - f64.lt - local.set $2 - local.get $2 - if - local.get $1 - f64.neg - local.set $1 - local.get $0 - i32.const 45 - i32.store16 - end - local.get $1 - local.set $5 - local.get $0 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - i64.reinterpret_f64 - local.set $6 - local.get $6 - i64.const 9218868437227405312 - i64.and - i64.const 52 - i64.shr_u - i32.wrap_i64 - local.set $7 - local.get $6 - i64.const 4503599627370495 - i64.and - local.set $8 - local.get $7 - i32.const 0 - i32.ne - i64.extend_i32_u - i64.const 52 - i64.shl - local.get $8 - i64.add - local.set $9 - local.get $7 - i32.const 1 - local.get $7 - i32.const 0 - i32.ne - select - i32.const 1023 - i32.const 52 - i32.add - i32.sub - local.set $7 - local.get $9 - local.set $11 - local.get $7 - local.set $10 - local.get $11 - i64.const 1 - i64.shl - i64.const 1 - i64.add - local.set $12 - local.get $10 - i32.const 1 - i32.sub - local.set $13 - local.get $12 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $12 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $12 - local.get $13 - local.get $14 - i32.sub - local.set $13 - i32.const 1 - local.get $11 - i64.const 4503599627370496 - i64.eq - i32.add - local.set $15 - local.get $12 - global.set $~lib/util/number/_frc_plus - local.get $11 - local.get $15 - i64.extend_i32_s - i64.shl - i64.const 1 - i64.sub - local.get $10 - local.get $15 - i32.sub - local.get $13 - i32.sub - i64.extend_i32_s - i64.shl - global.set $~lib/util/number/_frc_minus - local.get $13 - global.set $~lib/util/number/_exp - global.get $~lib/util/number/_exp - local.set $10 - i32.const -61 - local.get $10 - i32.sub - f64.convert_i32_s - f64.const 0.30102999566398114 - f64.mul - f64.const 347 - f64.add - local.set $16 - local.get $16 - i32.trunc_f64_s - local.set $15 - local.get $15 - local.get $15 - f64.convert_i32_s - local.get $16 - f64.ne - i32.add - local.set $15 - local.get $15 - i32.const 3 - i32.shr_s - i32.const 1 - i32.add - local.set $14 - i32.const 348 - local.get $14 - i32.const 3 - i32.shl - i32.sub - global.set $~lib/util/number/_K - i32.const 3088 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_frc_pow - i32.const 3312 - local.get $14 - call $~lib/array/Array#__unchecked_get - global.set $~lib/util/number/_exp_pow - local.get $9 - i64.clz - i32.wrap_i64 - local.set $14 - local.get $9 - local.get $14 - i64.extend_i32_s - i64.shl - local.set $9 - local.get $7 - local.get $14 - i32.sub - local.set $7 - global.get $~lib/util/number/_frc_pow - local.set $12 - global.get $~lib/util/number/_exp_pow - local.set $15 - local.get $9 - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $24 - local.get $24 - i64.const 2147483647 - i64.add - local.set $24 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $24 - i64.const 32 - i64.shr_u - local.set $24 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $24 - i64.add - local.set $24 - local.get $7 - local.set $10 - local.get $15 - local.set $13 - local.get $10 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $10 - global.get $~lib/util/number/_frc_plus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $23 - local.get $11 - i64.const 4294967295 - i64.and - local.set $22 - local.get $17 - i64.const 32 - i64.shr_u - local.set $21 - local.get $11 - i64.const 32 - i64.shr_u - local.set $20 - local.get $23 - local.get $22 - i64.mul - local.set $19 - local.get $21 - local.get $22 - i64.mul - local.get $19 - i64.const 32 - i64.shr_u - i64.add - local.set $18 - local.get $23 - local.get $20 - i64.mul - local.get $18 - i64.const 4294967295 - i64.and - i64.add - local.set $25 - local.get $25 - i64.const 2147483647 - i64.add - local.set $25 - local.get $18 - i64.const 32 - i64.shr_u - local.set $18 - local.get $25 - i64.const 32 - i64.shr_u - local.set $25 - local.get $21 - local.get $20 - i64.mul - local.get $18 - i64.add - local.get $25 - i64.add - i64.const 1 - i64.sub - local.set $25 - global.get $~lib/util/number/_exp - local.set $26 - local.get $15 - local.set $13 - local.get $26 - local.get $13 - i32.add - i32.const 64 - i32.add - local.set $26 - global.get $~lib/util/number/_frc_minus - local.set $17 - local.get $12 - local.set $11 - local.get $17 - i64.const 4294967295 - i64.and - local.set $18 - local.get $11 - i64.const 4294967295 - i64.and - local.set $19 - local.get $17 - i64.const 32 - i64.shr_u - local.set $20 - local.get $11 - i64.const 32 - i64.shr_u - local.set $21 - local.get $18 - local.get $19 - i64.mul - local.set $22 - local.get $20 - local.get $19 - i64.mul - local.get $22 - i64.const 32 - i64.shr_u - i64.add - local.set $23 - local.get $18 - local.get $21 - i64.mul - local.get $23 - i64.const 4294967295 - i64.and - i64.add - local.set $27 - local.get $27 - i64.const 2147483647 - i64.add - local.set $27 - local.get $23 - i64.const 32 - i64.shr_u - local.set $23 - local.get $27 - i64.const 32 - i64.shr_u - local.set $27 - local.get $20 - local.get $21 - i64.mul - local.get $23 - i64.add - local.get $27 - i64.add - i64.const 1 - i64.add - local.set $27 - local.get $25 - local.get $27 - i64.sub - local.set $23 - local.get $4 - local.get $24 - local.get $10 - local.get $25 - local.get $26 - local.get $23 - local.get $3 - call $~lib/util/number/genDigits - local.set $28 - local.get $0 - local.get $2 - i32.const 1 - i32.shl - i32.add - local.get $28 - local.get $2 - i32.sub - global.get $~lib/util/number/_K - call $~lib/util/number/prettify - local.set $28 - local.get $28 - local.get $2 - i32.add - ) - (func $~lib/util/number/dtoa (; 547 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - f64.const 0 - f64.eq - if - i32.const 2256 - call $~lib/rt/pure/__retain - return - end - local.get $0 - call $~lib/number/isFinite - i32.eqz - if - local.get $0 - call $~lib/number/isNaN - if - i32.const 2280 - call $~lib/rt/pure/__retain - return - end - i32.const 2304 - i32.const 2344 - local.get $0 - f64.const 0 - f64.lt - select - call $~lib/rt/pure/__retain - return - end - i32.const 28 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - local.set $1 - local.get $1 - local.get $0 - call $~lib/util/number/dtoa_core - local.set $2 - local.get $2 - i32.const 28 - i32.eq - if - local.get $1 - call $~lib/rt/pure/__retain - return - end - local.get $1 - i32.const 0 - local.get $2 - call $~lib/string/String#substring - local.set $3 - local.get $1 - call $~lib/rt/tlsf/__free - local.get $3 - ) - (func $~lib/util/number/dtoa_stream (; 548 ;) (type $FUNCSIG$iiid) (param $0 i32) (param $1 i32) (param $2 f64) (result i32) - (local $3 i32) - (local $4 i32) - local.get $0 - local.get $1 - i32.const 1 - i32.shl - i32.add - local.set $0 - local.get $2 - f64.const 0 - f64.eq - if - local.get $0 - i32.const 48 - i32.store16 - local.get $0 - i32.const 46 - i32.store16 offset=2 - local.get $0 - i32.const 48 - i32.store16 offset=4 - i32.const 3 - return - end - local.get $2 - call $~lib/number/isFinite - i32.eqz - if - local.get $2 - call $~lib/number/isNaN - if - local.get $0 - i32.const 78 - i32.store16 - local.get $0 - i32.const 97 - i32.store16 offset=2 - local.get $0 - i32.const 78 - i32.store16 offset=4 - i32.const 3 - return - else - local.get $2 - f64.const 0 - f64.lt - local.set $3 - i32.const 8 - local.get $3 - i32.add - local.set $4 - local.get $0 - i32.const 2304 - i32.const 2344 - local.get $3 - select - local.get $4 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $4 - return - end - unreachable - end - local.get $0 - local.get $2 - call $~lib/util/number/dtoa_core - ) - (func $~lib/util/string/joinFloatArray (; 549 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 f32) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 1704 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - f32.load - f64.promote_f32 - call $~lib/util/number/dtoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 28 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 28 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 2 - i32.shl - i32.add - f32.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - f64.promote_f32 - call $~lib/util/number/dtoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 2 - i32.shl - i32.add - f32.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - f64.promote_f32 - call $~lib/util/number/dtoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Float32Array#join (; 550 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $0 - call $~lib/typedarray/Float32Array#get:length - local.get $1 - call $~lib/util/string/joinFloatArray - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/typedarray/Float32Array#toString (; 551 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 2192 - call $~lib/typedarray/Float32Array#join - ) - (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Float32Array,f32> (; 552 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 5 - call $~lib/typedarray/Float32Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f32.const 1 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 1 - f32.const 2 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 2 - f32.const 3 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 3 - f32.const 4 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 4 - f32.const 5 - call $~lib/typedarray/Float32Array#__set - local.get $1 - i32.const 2192 - call $~lib/typedarray/Float32Array#join - local.tee $2 - i32.const 3432 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 611 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/typedarray/Float32Array#toString - local.tee $3 - i32.const 3432 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 612 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/util/string/joinFloatArray (; 553 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 f64) - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $1 - i32.const 1 - i32.sub - local.set $3 - local.get $3 - i32.const 0 - i32.lt_s - if - i32.const 1704 - call $~lib/rt/pure/__retain - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $3 - i32.eqz - if - local.get $0 - f64.load - call $~lib/util/number/dtoa - local.tee $4 - call $~lib/rt/pure/__retain - local.set $5 - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - return - end - local.get $2 - call $~lib/string/String#get:length - local.set $6 - i32.const 28 - local.get $6 - i32.add - local.get $3 - i32.mul - i32.const 28 - i32.add - local.set $7 - local.get $7 - i32.const 1 - i32.shl - i32.const 1 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - i32.const 0 - local.set $9 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $3 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $0 - local.get $4 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/dtoa_stream - i32.add - local.set $9 - local.get $6 - if - local.get $8 - local.get $9 - i32.const 1 - i32.shl - i32.add - local.get $2 - local.get $6 - i32.const 1 - i32.shl - call $~lib/memory/memory.copy - local.get $9 - local.get $6 - i32.add - local.set $9 - end - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $0 - local.get $3 - i32.const 3 - i32.shl - i32.add - f64.load - local.set $10 - local.get $9 - local.get $8 - local.get $9 - local.get $10 - call $~lib/util/number/dtoa_stream - i32.add - local.set $9 - local.get $7 - local.get $9 - i32.gt_s - if - local.get $8 - i32.const 0 - local.get $9 - call $~lib/string/String#substring - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $4 - return - end - local.get $8 - local.set $4 - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - ) - (func $~lib/typedarray/Float64Array#join (; 554 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) - (local $2 i32) - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $0 - i32.load offset=4 - local.get $0 - call $~lib/typedarray/Float64Array#get:length - local.get $1 - call $~lib/util/string/joinFloatArray - local.set $2 - local.get $1 - call $~lib/rt/pure/__release - local.get $2 - ) - (func $~lib/typedarray/Float64Array#toString (; 555 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 2192 - call $~lib/typedarray/Float64Array#join - ) - (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Float64Array,f64> (; 556 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - i32.const 0 - i32.const 5 - call $~lib/typedarray/Float64Array#constructor - local.tee $0 - call $~lib/rt/pure/__retain - local.set $1 - local.get $1 - i32.const 0 - f64.const 1 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 1 - f64.const 2 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 2 - f64.const 3 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 3 - f64.const 4 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 4 - f64.const 5 - call $~lib/typedarray/Float64Array#__set - local.get $1 - i32.const 2192 - call $~lib/typedarray/Float64Array#join - local.tee $2 - i32.const 3432 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 611 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/typedarray/Float64Array#toString - local.tee $3 - i32.const 3432 - call $~lib/string/String.__eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 612 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int8Array#get:buffer (; 557 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 558 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.const 16 - i32.sub - i32.load offset=12 - ) - (func $~lib/arraybuffer/ArrayBuffer#slice (; 559 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - local.get $0 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $3 - local.get $1 - i32.const 0 - i32.lt_s - if (result i32) - local.get $3 - local.get $1 - i32.add - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - else - local.get $1 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - end - local.set $1 - local.get $2 - i32.const 0 - i32.lt_s - if (result i32) - local.get $3 - local.get $2 - i32.add - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - else - local.get $2 - local.tee $4 - local.get $3 - local.tee $5 - local.get $4 - local.get $5 - i32.lt_s - select - end - local.set $2 - local.get $2 - local.get $1 - i32.sub - local.tee $4 - i32.const 0 - local.tee $5 - local.get $4 - local.get $5 - i32.gt_s - select - local.set $6 - local.get $6 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.set $7 - local.get $7 - local.get $0 - local.get $1 - i32.add - local.get $6 - call $~lib/memory/memory.copy - local.get $7 - call $~lib/rt/pure/__retain - ) - (func $~lib/typedarray/Int8Array.wrap (; 560 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $6 - local.get $4 - local.get $6 - i32.ge_u - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 280 - i32.const 432 - i32.const 1724 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $3 - i32.const -1 - i32.eq - if - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const -2147483648 - i32.and - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1731 - i32.const 8 - call $~lib/builtins/abort - unreachable - else - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $7 - end - else - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1736 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - else - local.get $3 - i32.const 0 - i32.shl - local.set $7 - end - local.get $4 - local.get $7 - i32.add - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.gt_s - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1742 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - i32.const 3 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - local.get $8 - local.tee $9 - local.get $5 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 - local.get $5 - local.get $4 - i32.add - i32.store offset=4 - local.get $8 - local.set $10 - local.get $5 - call $~lib/rt/pure/__release - local.get $10 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/typedarray/Int8Array.wrap|trampoline (; 561 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $2of2 - block $1of2 - block $0of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of2 $1of2 $2of2 $outOfRange - end - unreachable - end - i32.const 0 - local.set $1 - end - i32.const -1 - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Int8Array.wrap - ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Int8Array,i8> (; 562 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayWrapValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int8Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i32.const 24 - i32.shl - i32.const 24 - i32.shr_s - call $~lib/typedarray/Int8Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Int8Array#get:buffer - local.tee $4 - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.add - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $5 - i32.const 0 - local.set $6 - i32.const 1 - global.set $~lib/argc - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Int8Array.wrap|trampoline - local.set $7 - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - local.set $6 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $7 - call $~lib/typedarray/Int8Array#__get - local.get $6 - local.get $7 - call $~lib/typedarray/Int8Array#__get - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 666 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint8Array#get:buffer (; 563 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/typedarray/Uint8Array.wrap (; 564 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $6 - local.get $4 - local.get $6 - i32.ge_u - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 280 - i32.const 432 - i32.const 1724 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $3 - i32.const -1 - i32.eq - if - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const -2147483648 - i32.and - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1731 - i32.const 8 - call $~lib/builtins/abort - unreachable - else - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $7 - end - else - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1736 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - else - local.get $3 - i32.const 0 - i32.shl - local.set $7 - end - local.get $4 - local.get $7 - i32.add - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.gt_s - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1742 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - i32.const 4 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - local.get $8 - local.tee $9 - local.get $5 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 - local.get $5 - local.get $4 - i32.add - i32.store offset=4 - local.get $8 - local.set $10 - local.get $5 - call $~lib/rt/pure/__release - local.get $10 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/typedarray/Uint8Array.wrap|trampoline (; 565 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $2of2 - block $1of2 - block $0of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of2 $1of2 $2of2 $outOfRange - end - unreachable - end - i32.const 0 - local.set $1 - end - i32.const -1 - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Uint8Array.wrap - ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint8Array,u8> (; 566 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayWrapValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint8Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Uint8Array#get:buffer - local.tee $4 - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.add - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $5 - i32.const 0 - local.set $6 - i32.const 1 - global.set $~lib/argc - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint8Array.wrap|trampoline - local.set $7 - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - local.set $6 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $7 - call $~lib/typedarray/Uint8Array#__get - local.get $6 - local.get $7 - call $~lib/typedarray/Uint8Array#__get - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 666 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint8ClampedArray#get:buffer (; 567 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/typedarray/Uint8ClampedArray.wrap (; 568 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $6 - local.get $4 - local.get $6 - i32.ge_u - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 280 - i32.const 432 - i32.const 1724 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $3 - i32.const -1 - i32.eq - if - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const -2147483648 - i32.and - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1731 - i32.const 8 - call $~lib/builtins/abort - unreachable - else - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $7 - end - else - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1736 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - else - local.get $3 - i32.const 0 - i32.shl - local.set $7 - end - local.get $4 - local.get $7 - i32.add - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.gt_s - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1742 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - i32.const 5 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - local.get $8 - local.tee $9 - local.get $5 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 - local.get $5 - local.get $4 - i32.add - i32.store offset=4 - local.get $8 - local.set $10 - local.get $5 - call $~lib/rt/pure/__release - local.get $10 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/typedarray/Uint8ClampedArray.wrap|trampoline (; 569 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $2of2 - block $1of2 - block $0of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of2 $1of2 $2of2 $outOfRange - end - unreachable - end - i32.const 0 - local.set $1 - end - i32.const -1 - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Uint8ClampedArray.wrap - ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint8ClampedArray,u8> (; 570 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayWrapValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i32.const 255 - i32.and - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Uint8ClampedArray#get:buffer - local.tee $4 - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.add - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $5 - i32.const 0 - local.set $6 - i32.const 1 - global.set $~lib/argc - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray.wrap|trampoline - local.set $7 - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - local.set $6 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $7 - call $~lib/typedarray/Uint8ClampedArray#__get - local.get $6 - local.get $7 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 666 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int16Array#get:buffer (; 571 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/typedarray/Int16Array.wrap (; 572 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $6 - local.get $4 - local.get $6 - i32.ge_u - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 280 - i32.const 432 - i32.const 1724 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $3 - i32.const -1 - i32.eq - if - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 1 - i32.and - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1731 - i32.const 8 - call $~lib/builtins/abort - unreachable - else - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $7 - end - else - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1736 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - else - local.get $3 - i32.const 1 - i32.shl - local.set $7 - end - local.get $4 - local.get $7 - i32.add - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.gt_s - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1742 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - i32.const 6 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - local.get $8 - local.tee $9 - local.get $5 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 - local.get $5 - local.get $4 - i32.add - i32.store offset=4 - local.get $8 - local.set $10 - local.get $5 - call $~lib/rt/pure/__release - local.get $10 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/typedarray/Int16Array.wrap|trampoline (; 573 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $2of2 - block $1of2 - block $0of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of2 $1of2 $2of2 $outOfRange - end - unreachable - end - i32.const 0 - local.set $1 - end - i32.const -1 - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Int16Array.wrap - ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Int16Array,i16> (; 574 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayWrapValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int16Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i32.const 16 - i32.shl - i32.const 16 - i32.shr_s - call $~lib/typedarray/Int16Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Int16Array#get:buffer - local.tee $4 - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.add - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $5 - i32.const 0 - local.set $6 - i32.const 1 - global.set $~lib/argc - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Int16Array.wrap|trampoline - local.set $7 - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - local.set $6 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $7 - call $~lib/typedarray/Int16Array#__get - local.get $6 - local.get $7 - call $~lib/typedarray/Int16Array#__get - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 666 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint16Array#get:buffer (; 575 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/typedarray/Uint16Array.wrap (; 576 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $6 - local.get $4 - local.get $6 - i32.ge_u - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 280 - i32.const 432 - i32.const 1724 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $3 - i32.const -1 - i32.eq - if - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 1 - i32.and - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1731 - i32.const 8 - call $~lib/builtins/abort - unreachable - else - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $7 - end - else - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1736 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - else - local.get $3 - i32.const 1 - i32.shl - local.set $7 - end - local.get $4 - local.get $7 - i32.add - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.gt_s - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1742 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - i32.const 7 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - local.get $8 - local.tee $9 - local.get $5 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 - local.get $5 - local.get $4 - i32.add - i32.store offset=4 - local.get $8 - local.set $10 - local.get $5 - call $~lib/rt/pure/__release - local.get $10 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/typedarray/Uint16Array.wrap|trampoline (; 577 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $2of2 - block $1of2 - block $0of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of2 $1of2 $2of2 $outOfRange - end - unreachable - end - i32.const 0 - local.set $1 - end - i32.const -1 - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Uint16Array.wrap - ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint16Array,u16> (; 578 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayWrapValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint16Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i32.const 65535 - i32.and - call $~lib/typedarray/Uint16Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Uint16Array#get:buffer - local.tee $4 - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.add - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $5 - i32.const 0 - local.set $6 - i32.const 1 - global.set $~lib/argc - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint16Array.wrap|trampoline - local.set $7 - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - local.set $6 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $7 - call $~lib/typedarray/Uint16Array#__get - local.get $6 - local.get $7 - call $~lib/typedarray/Uint16Array#__get - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 666 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int32Array#get:buffer (; 579 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/typedarray/Int32Array.wrap (; 580 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $6 - local.get $4 - local.get $6 - i32.ge_u - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 280 - i32.const 432 - i32.const 1724 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $3 - i32.const -1 - i32.eq - if - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 2 - i32.and - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1731 - i32.const 8 - call $~lib/builtins/abort - unreachable - else - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $7 - end - else - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1736 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - else - local.get $3 - i32.const 2 - i32.shl - local.set $7 - end - local.get $4 - local.get $7 - i32.add - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.gt_s - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1742 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - i32.const 8 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - local.get $8 - local.tee $9 - local.get $5 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 - local.get $5 - local.get $4 - i32.add - i32.store offset=4 - local.get $8 - local.set $10 - local.get $5 - call $~lib/rt/pure/__release - local.get $10 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/typedarray/Int32Array.wrap|trampoline (; 581 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $2of2 - block $1of2 - block $0of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of2 $1of2 $2of2 $outOfRange - end - unreachable - end - i32.const 0 - local.set $1 - end - i32.const -1 - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Int32Array.wrap - ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Int32Array,i32> (; 582 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayWrapValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int32Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - call $~lib/typedarray/Int32Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Int32Array#get:buffer - local.tee $4 - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.add - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $5 - i32.const 0 - local.set $6 - i32.const 1 - global.set $~lib/argc - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Int32Array.wrap|trampoline - local.set $7 - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - local.set $6 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $7 - call $~lib/typedarray/Int32Array#__get - local.get $6 - local.get $7 - call $~lib/typedarray/Int32Array#__get - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 666 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint32Array#get:buffer (; 583 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/typedarray/Uint32Array.wrap (; 584 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $6 - local.get $4 - local.get $6 - i32.ge_u - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 280 - i32.const 432 - i32.const 1724 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $3 - i32.const -1 - i32.eq - if - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 2 - i32.and - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1731 - i32.const 8 - call $~lib/builtins/abort - unreachable - else - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $7 - end - else - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1736 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - else - local.get $3 - i32.const 2 - i32.shl - local.set $7 - end - local.get $4 - local.get $7 - i32.add - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.gt_s - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1742 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - i32.const 9 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - local.get $8 - local.tee $9 - local.get $5 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 - local.get $5 - local.get $4 - i32.add - i32.store offset=4 - local.get $8 - local.set $10 - local.get $5 - call $~lib/rt/pure/__release - local.get $10 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/typedarray/Uint32Array.wrap|trampoline (; 585 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $2of2 - block $1of2 - block $0of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of2 $1of2 $2of2 $outOfRange - end - unreachable - end - i32.const 0 - local.set $1 - end - i32.const -1 - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Uint32Array.wrap - ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint32Array,u32> (; 586 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayWrapValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint32Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - call $~lib/typedarray/Uint32Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Uint32Array#get:buffer - local.tee $4 - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.add - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $5 - i32.const 0 - local.set $6 - i32.const 1 - global.set $~lib/argc - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint32Array.wrap|trampoline - local.set $7 - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - local.set $6 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $7 - call $~lib/typedarray/Uint32Array#__get - local.get $6 - local.get $7 - call $~lib/typedarray/Uint32Array#__get - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 666 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Int64Array#get:buffer (; 587 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/typedarray/Int64Array.wrap (; 588 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $6 - local.get $4 - local.get $6 - i32.ge_u - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 280 - i32.const 432 - i32.const 1724 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $3 - i32.const -1 - i32.eq - if - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 4 - i32.and - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1731 - i32.const 8 - call $~lib/builtins/abort - unreachable - else - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $7 - end - else - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1736 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - else - local.get $3 - i32.const 3 - i32.shl - local.set $7 - end - local.get $4 - local.get $7 - i32.add - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.gt_s - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1742 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - i32.const 10 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - local.get $8 - local.tee $9 - local.get $5 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 - local.get $5 - local.get $4 - i32.add - i32.store offset=4 - local.get $8 - local.set $10 - local.get $5 - call $~lib/rt/pure/__release - local.get $10 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/typedarray/Int64Array.wrap|trampoline (; 589 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $2of2 - block $1of2 - block $0of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of2 $1of2 $2of2 $outOfRange - end - unreachable - end - i32.const 0 - local.set $1 - end - i32.const -1 - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Int64Array.wrap - ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Int64Array,i64> (; 590 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayWrapValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Int64Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Int64Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Int64Array#get:buffer - local.tee $4 - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.add - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $5 - i32.const 0 - local.set $6 - i32.const 1 - global.set $~lib/argc - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Int64Array.wrap|trampoline - local.set $7 - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - local.set $6 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $7 - call $~lib/typedarray/Int64Array#__get - local.get $6 - local.get $7 - call $~lib/typedarray/Int64Array#__get - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 666 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Uint64Array#get:buffer (; 591 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/typedarray/Uint64Array.wrap (; 592 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $6 - local.get $4 - local.get $6 - i32.ge_u - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 280 - i32.const 432 - i32.const 1724 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $3 - i32.const -1 - i32.eq - if - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 4 - i32.and - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1731 - i32.const 8 - call $~lib/builtins/abort - unreachable - else - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $7 - end - else - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1736 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - else - local.get $3 - i32.const 3 - i32.shl - local.set $7 - end - local.get $4 - local.get $7 - i32.add - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.gt_s - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1742 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - i32.const 11 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - local.get $8 - local.tee $9 - local.get $5 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 - local.get $5 - local.get $4 - i32.add - i32.store offset=4 - local.get $8 - local.set $10 - local.get $5 - call $~lib/rt/pure/__release - local.get $10 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/typedarray/Uint64Array.wrap|trampoline (; 593 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $2of2 - block $1of2 - block $0of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of2 $1of2 $2of2 $outOfRange - end - unreachable - end - i32.const 0 - local.set $1 - end - i32.const -1 - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Uint64Array.wrap - ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint64Array,u64> (; 594 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayWrapValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Uint64Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - i64.extend_i32_s - call $~lib/typedarray/Uint64Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Uint64Array#get:buffer - local.tee $4 - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.add - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $5 - i32.const 0 - local.set $6 - i32.const 1 - global.set $~lib/argc - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Uint64Array.wrap|trampoline - local.set $7 - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - local.set $6 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $7 - call $~lib/typedarray/Uint64Array#__get - local.get $6 - local.get $7 - call $~lib/typedarray/Uint64Array#__get - i64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 666 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Float32Array#get:buffer (; 595 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/typedarray/Float32Array.wrap (; 596 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $6 - local.get $4 - local.get $6 - i32.ge_u - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 280 - i32.const 432 - i32.const 1724 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $3 - i32.const -1 - i32.eq - if - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 2 - i32.and - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1731 - i32.const 8 - call $~lib/builtins/abort - unreachable - else - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $7 - end - else - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1736 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - else - local.get $3 - i32.const 2 - i32.shl - local.set $7 - end - local.get $4 - local.get $7 - i32.add - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.gt_s - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1742 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - i32.const 12 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - local.get $8 - local.tee $9 - local.get $5 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 - local.get $5 - local.get $4 - i32.add - i32.store offset=4 - local.get $8 - local.set $10 - local.get $5 - call $~lib/rt/pure/__release - local.get $10 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/typedarray/Float32Array.wrap|trampoline (; 597 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $2of2 - block $1of2 - block $0of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of2 $1of2 $2of2 $outOfRange - end - unreachable - end - i32.const 0 - local.set $1 - end - i32.const -1 - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Float32Array.wrap - ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Float32Array,f32> (; 598 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayWrapValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Float32Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - f32.convert_i32_s - call $~lib/typedarray/Float32Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Float32Array#get:buffer - local.tee $4 - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.add - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $5 - i32.const 0 - local.set $6 - i32.const 1 - global.set $~lib/argc - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Float32Array.wrap|trampoline - local.set $7 - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - local.set $6 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $7 - call $~lib/typedarray/Float32Array#__get - local.get $6 - local.get $7 - call $~lib/typedarray/Float32Array#__get - f32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 666 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - ) - (func $~lib/typedarray/Float64Array#get:buffer (; 599 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/typedarray/Float64Array.wrap (; 600 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $0 - call $~lib/rt/pure/__retain - local.set $5 - local.get $1 - local.set $4 - local.get $2 - local.set $3 - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $6 - local.get $4 - local.get $6 - i32.ge_u - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 280 - i32.const 432 - i32.const 1724 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $3 - i32.const 0 - i32.lt_s - if - local.get $3 - i32.const -1 - i32.eq - if - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.const 4 - i32.and - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1731 - i32.const 8 - call $~lib/builtins/abort - unreachable - else - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $7 - end - else - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1736 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - else - local.get $3 - i32.const 3 - i32.shl - local.set $7 - end - local.get $4 - local.get $7 - i32.add - local.get $5 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - i32.gt_s - if - local.get $5 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1742 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - i32.const 13 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $8 - local.get $8 - local.tee $9 - local.get $5 - local.tee $10 - local.get $9 - i32.load - local.tee $9 - i32.ne - if - local.get $10 - call $~lib/rt/pure/__retain - drop - local.get $9 - call $~lib/rt/pure/__release - end - local.get $10 - i32.store - local.get $8 - local.get $7 - i32.store offset=8 - local.get $8 - local.get $5 - local.get $4 - i32.add - i32.store offset=4 - local.get $8 - local.set $10 - local.get $5 - call $~lib/rt/pure/__release - local.get $10 - local.set $8 - local.get $0 - call $~lib/rt/pure/__release - local.get $8 - ) - (func $~lib/typedarray/Float64Array.wrap|trampoline (; 601 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - block $2of2 - block $1of2 - block $0of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $0of2 $1of2 $2of2 $outOfRange - end - unreachable - end - i32.const 0 - local.set $1 - end - i32.const -1 - local.set $2 - end - local.get $0 - local.get $1 - local.get $2 - call $~lib/typedarray/Float64Array.wrap - ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Float64Array,f64> (; 602 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - global.get $std/typedarray/testArrayWrapValues - call $~lib/rt/pure/__retain - local.set $0 - local.get $0 - call $~lib/array/Array#get:length - local.set $1 - i32.const 0 - local.get $1 - call $~lib/typedarray/Float64Array#constructor - local.tee $2 - call $~lib/rt/pure/__retain - local.set $3 - block $break|0 - i32.const 0 - local.set $4 - loop $loop|0 - local.get $4 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|0 - local.get $3 - local.get $4 - local.get $0 - local.get $4 - call $~lib/array/Array#__get - f64.convert_i32_s - call $~lib/typedarray/Float64Array#__set - local.get $4 - i32.const 1 - i32.add - local.set $4 - br $loop|0 - end - unreachable - end - local.get $3 - call $~lib/typedarray/Float64Array#get:buffer - local.tee $4 - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.add - call $~lib/arraybuffer/ArrayBuffer#slice - local.set $5 - i32.const 0 - local.set $6 - i32.const 1 - global.set $~lib/argc - local.get $5 - i32.const 0 - i32.const 0 - call $~lib/typedarray/Float64Array.wrap|trampoline - local.set $7 - local.get $6 - call $~lib/rt/pure/__release - local.get $7 - local.set $6 - block $break|1 - i32.const 0 - local.set $7 - loop $loop|1 - local.get $7 - local.get $1 - i32.lt_s - i32.eqz - br_if $break|1 - local.get $3 - local.get $7 - call $~lib/typedarray/Float64Array#__get - local.get $6 - local.get $7 - call $~lib/typedarray/Float64Array#__get - f64.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 666 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - local.get $7 - i32.const 1 - i32.add - local.set $7 - br $loop|1 - end - unreachable - end - local.get $2 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - ) - (func $start:std/typedarray (; 603 ;) (type $FUNCSIG$v) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i32) - (local $20 i32) - (local $21 i32) - (local $22 i32) - (local $23 i32) - (local $24 i32) - (local $25 i32) - (local $26 i32) - i32.const 0 - call $std/typedarray/testInstantiate - i32.const 5 - call $std/typedarray/testInstantiate - i32.const 0 - i32.const 3 - call $~lib/typedarray/Int32Array#constructor - local.set $0 - local.get $0 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $0 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $0 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $0 - call $~lib/typedarray/Int32Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 95 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 96 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 12 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 97 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - call $~lib/typedarray/Int32Array#__get - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 98 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - call $~lib/typedarray/Int32Array#__get - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 99 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 2 - call $~lib/typedarray/Int32Array#__get - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 100 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#subarray - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - local.set $0 - local.get $0 - call $~lib/typedarray/Int32Array#get:length - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 103 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 104 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 105 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - call $~lib/typedarray/Int32Array#__get - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 106 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - i32.const 0 - i32.const 8 - call $~lib/typedarray/Float64Array#constructor - local.set $0 - local.get $0 - i32.const 0 - f64.const 1 - call $~lib/typedarray/Float64Array#__set - local.get $0 - i32.const 1 - f64.const 2 - call $~lib/typedarray/Float64Array#__set - local.get $0 - i32.const 2 - f64.const 7 - call $~lib/typedarray/Float64Array#__set - local.get $0 - i32.const 3 - f64.const 6 - call $~lib/typedarray/Float64Array#__set - local.get $0 - i32.const 4 - f64.const 5 - call $~lib/typedarray/Float64Array#__set - local.get $0 - i32.const 5 - f64.const 4 - call $~lib/typedarray/Float64Array#__set - local.get $0 - i32.const 6 - f64.const 3 - call $~lib/typedarray/Float64Array#__set - local.get $0 - i32.const 7 - f64.const 8 - call $~lib/typedarray/Float64Array#__set - local.get $0 - i32.const 2 - i32.const 6 - call $~lib/typedarray/Float64Array#subarray - local.set $1 - local.get $0 - call $~lib/rt/pure/__release - local.get $1 - local.set $0 - local.get $0 - call $~lib/typedarray/Float64Array#get:length - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 122 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 16 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 123 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 32 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 124 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - i32.const 0 - global.set $~lib/argc - local.get $0 - i32.const 0 - call $~lib/typedarray/Float64Array#sort|trampoline - call $~lib/rt/pure/__release - local.get $0 - i32.const 0 - call $~lib/typedarray/Float64Array#__get - f64.const 4 - f64.eq - if (result i32) - local.get $0 - i32.const 1 - call $~lib/typedarray/Float64Array#__get - f64.const 5 - f64.eq - else - i32.const 0 - end - if (result i32) - local.get $0 - i32.const 2 - call $~lib/typedarray/Float64Array#__get - f64.const 6 - f64.eq - else - i32.const 0 - end - if (result i32) - local.get $0 - i32.const 3 - call $~lib/typedarray/Float64Array#__get - f64.const 7 - f64.eq - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 126 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - i32.const 0 - i32.const 3 - call $~lib/typedarray/Uint8ClampedArray#constructor - local.set $0 - local.get $0 - i32.const 0 - i32.const -32 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 - i32.const 2 - i32.const 256 - call $~lib/typedarray/Uint8ClampedArray#__set - local.get $0 - i32.const 0 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 135 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 136 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 2 - call $~lib/typedarray/Uint8ClampedArray#__get - i32.const 255 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 137 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - i32.const 0 - i32.const 5 - call $~lib/typedarray/Int8Array#constructor - local.set $0 - local.get $0 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int8Array#__set - local.get $0 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $0 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int8Array#__set - local.get $0 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int8Array#__set - local.get $0 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int8Array#__set - local.get $0 - i32.const 1 - i32.const 1 - i32.const 3 - call $~lib/typedarray/Int8Array#fill - call $~lib/rt/pure/__release - local.get $0 - i32.const 5 - i32.const 0 - i32.const 14 - i32.const 488 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $2 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 149 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int8Array#fill - call $~lib/rt/pure/__release - local.get $0 - i32.const 5 - i32.const 0 - i32.const 14 - i32.const 560 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $3 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 152 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.const 0 - i32.const -3 - call $~lib/typedarray/Int8Array#fill - call $~lib/rt/pure/__release - local.get $0 - i32.const 5 - i32.const 0 - i32.const 14 - i32.const 584 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $4 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 155 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 2 - i32.const -2 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int8Array#fill - call $~lib/rt/pure/__release - local.get $0 - i32.const 5 - i32.const 0 - i32.const 14 - i32.const 608 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $5 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 158 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 0 - i32.const 1 - i32.const 0 - call $~lib/typedarray/Int8Array#fill - call $~lib/rt/pure/__release - local.get $0 - i32.const 5 - i32.const 0 - i32.const 14 - i32.const 632 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $6 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 161 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int8Array#subarray - local.set $1 - local.get $1 - i32.const 0 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int8Array#fill - call $~lib/rt/pure/__release - local.get $1 - call $~lib/typedarray/Int8Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 165 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 166 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 167 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $1 - i32.const 3 - i32.const 0 - i32.const 14 - i32.const 656 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $8 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 168 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 5 - i32.const 0 - i32.const 14 - i32.const 680 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $9 - call $std/typedarray/isInt8ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 169 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - i32.const 0 - i32.const 5 - call $~lib/typedarray/Int32Array#constructor - local.set $9 - local.get $9 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $9 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $9 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $9 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#__set - local.get $9 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int32Array#__set - local.get $9 - i32.const 1 - i32.const 1 - i32.const 3 - call $~lib/typedarray/Int32Array#fill - call $~lib/rt/pure/__release - local.get $9 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 704 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $1 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 181 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $9 - i32.const 0 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#fill - call $~lib/rt/pure/__release - local.get $9 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 744 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $6 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 184 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $9 - i32.const 1 - i32.const 0 - i32.const -3 - call $~lib/typedarray/Int32Array#fill - call $~lib/rt/pure/__release - local.get $9 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 784 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $5 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 187 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $9 - i32.const 2 - i32.const -2 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#fill - call $~lib/rt/pure/__release - local.get $9 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 824 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $4 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 190 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $9 - i32.const 0 - i32.const 1 - i32.const 0 - call $~lib/typedarray/Int32Array#fill - call $~lib/rt/pure/__release - local.get $9 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 864 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $3 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 193 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $9 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int32Array#subarray - local.set $8 - local.get $8 - i32.const 0 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#fill - call $~lib/rt/pure/__release - local.get $8 - call $~lib/typedarray/Int32Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 197 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 198 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 12 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 199 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 3 - i32.const 2 - i32.const 15 - i32.const 904 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $0 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 200 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $9 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 936 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $7 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 201 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $9 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - i32.const 0 - i32.const 6 - call $~lib/typedarray/Int8Array#constructor - local.set $7 - local.get $7 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 5 - i32.const 6 - call $~lib/typedarray/Int8Array#__set - local.get $7 - i32.const 1 - i32.const 6 - call $~lib/typedarray/Int8Array#subarray - local.set $0 - local.get $0 - i32.const 0 - call $~lib/typedarray/Int8Array#__get - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 222 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/typedarray/Int8Array#get:length - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 223 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 224 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 5 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 225 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $0 - i32.const 1 - i32.const 5 - call $~lib/typedarray/Int8Array#subarray - local.set $8 - local.get $8 - i32.const 0 - call $~lib/typedarray/Int8Array#__get - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 228 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - call $~lib/typedarray/Int8Array#get:length - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 229 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 230 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 231 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int8Array#subarray - local.set $3 - local.get $3 - i32.const 0 - call $~lib/typedarray/Int8Array#__get - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 234 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - call $~lib/typedarray/Int8Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 235 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 236 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 237 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $7 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - i32.const 0 - i32.const 5 - call $~lib/typedarray/Int32Array#constructor - local.set $3 - local.get $3 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $3 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $3 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $3 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#__set - local.get $3 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int32Array#__set - local.get $3 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $8 - local.get $3 - i32.const 0 - i32.const 3 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#copyWithin - local.tee $0 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 976 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $4 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 248 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $2 - local.get $3 - call $~lib/rt/pure/__release - local.get $2 - local.set $3 - local.get $3 - i32.const 1 - i32.const 3 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#copyWithin - local.tee $2 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 1016 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $5 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 250 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $9 - local.get $3 - call $~lib/rt/pure/__release - local.get $9 - local.set $3 - local.get $3 - i32.const 1 - i32.const 2 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#copyWithin - local.tee $9 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 1056 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $6 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 252 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $1 - local.get $3 - call $~lib/rt/pure/__release - local.get $1 - local.set $3 - local.get $3 - i32.const 2 - i32.const 2 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#copyWithin - local.tee $1 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 1096 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $10 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 254 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $7 - local.get $3 - call $~lib/rt/pure/__release - local.get $7 - local.set $3 - local.get $3 - i32.const 0 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#copyWithin - local.tee $7 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 1136 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $12 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 256 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $11 - local.get $3 - call $~lib/rt/pure/__release - local.get $11 - local.set $3 - local.get $3 - i32.const 1 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#copyWithin - local.tee $11 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 1176 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $14 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 258 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $13 - local.get $3 - call $~lib/rt/pure/__release - local.get $13 - local.set $3 - local.get $3 - i32.const 1 - i32.const 2 - i32.const 4 - call $~lib/typedarray/Int32Array#copyWithin - local.tee $13 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 1216 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $16 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 260 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $15 - local.get $3 - call $~lib/rt/pure/__release - local.get $15 - local.set $3 - local.get $3 - i32.const 0 - i32.const -2 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#copyWithin - local.tee $15 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 1256 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $18 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 262 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $17 - local.get $3 - call $~lib/rt/pure/__release - local.get $17 - local.set $3 - local.get $3 - i32.const 0 - i32.const -2 - i32.const -1 - call $~lib/typedarray/Int32Array#copyWithin - local.tee $17 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 1296 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $20 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 264 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $19 - local.get $3 - call $~lib/rt/pure/__release - local.get $19 - local.set $3 - local.get $3 - i32.const -4 - i32.const -3 - i32.const -2 - call $~lib/typedarray/Int32Array#copyWithin - local.tee $19 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 1336 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $22 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 266 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $21 - local.get $3 - call $~lib/rt/pure/__release - local.get $21 - local.set $3 - local.get $3 - i32.const -4 - i32.const -3 - i32.const -1 - call $~lib/typedarray/Int32Array#copyWithin - local.tee $21 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 1376 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $24 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 268 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $8 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $23 - local.get $3 - call $~lib/rt/pure/__release - local.get $23 - local.set $3 - local.get $3 - i32.const -4 - i32.const -3 - i32.const 2147483647 - call $~lib/typedarray/Int32Array#copyWithin - local.tee $23 - i32.const 5 - i32.const 2 - i32.const 15 - i32.const 1416 - call $~lib/rt/__allocArray - call $~lib/rt/pure/__retain - local.tee $26 - call $std/typedarray/isInt32ArrayEqual - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 270 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $3 - call $~lib/rt/pure/__release - local.get $8 - call $~lib/rt/pure/__release - local.get $0 - call $~lib/rt/pure/__release - local.get $4 - call $~lib/rt/pure/__release - local.get $2 - call $~lib/rt/pure/__release - local.get $5 - call $~lib/rt/pure/__release - local.get $9 - call $~lib/rt/pure/__release - local.get $6 - call $~lib/rt/pure/__release - local.get $1 - call $~lib/rt/pure/__release - local.get $10 - call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $12 - call $~lib/rt/pure/__release - local.get $11 - call $~lib/rt/pure/__release - local.get $14 - call $~lib/rt/pure/__release - local.get $13 - call $~lib/rt/pure/__release - local.get $16 - call $~lib/rt/pure/__release - local.get $15 - call $~lib/rt/pure/__release - local.get $18 - call $~lib/rt/pure/__release - local.get $17 - call $~lib/rt/pure/__release - local.get $20 - call $~lib/rt/pure/__release - local.get $19 - call $~lib/rt/pure/__release - local.get $22 - call $~lib/rt/pure/__release - local.get $21 - call $~lib/rt/pure/__release - local.get $24 - call $~lib/rt/pure/__release - local.get $23 - call $~lib/rt/pure/__release - local.get $26 - call $~lib/rt/pure/__release - i32.const 0 - i32.const 5 - call $~lib/typedarray/Int32Array#constructor - local.set $26 - local.get $26 - i32.const 0 - i32.const 1 - call $~lib/typedarray/Int32Array#__set - local.get $26 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#__set - local.get $26 - i32.const 2 - i32.const 3 - call $~lib/typedarray/Int32Array#__set - local.get $26 - i32.const 3 - i32.const 4 - call $~lib/typedarray/Int32Array#__set - local.get $26 - i32.const 4 - i32.const 5 - call $~lib/typedarray/Int32Array#__set - local.get $26 - i32.const 1 - i32.const 4 - call $~lib/typedarray/Int32Array#subarray - local.set $23 - local.get $23 - call $~lib/typedarray/Int32Array#get:length - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 282 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $23 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 283 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $23 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 12 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 284 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $26 - i32.const 1 - i32.const 3 - call $~lib/typedarray/Int32Array#slice - local.set $24 - local.get $24 - i32.const 0 - call $~lib/typedarray/Int32Array#__get - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 287 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $24 - i32.const 1 - call $~lib/typedarray/Int32Array#__get - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 288 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $24 - call $~lib/typedarray/Int32Array#get:length - i32.const 2 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 289 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $24 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 290 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $24 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 8 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 291 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $23 - i32.const 1 - i32.const 2 - call $~lib/typedarray/Int32Array#slice - local.set $21 - local.get $21 - i32.const 0 - call $~lib/typedarray/Int32Array#__get - i32.const 3 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 294 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $21 - call $~lib/typedarray/Int32Array#get:length - i32.const 1 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 295 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $21 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.const 0 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 296 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $21 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.const 4 - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 297 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $26 - i32.const 0 - global.get $~lib/builtins/i32.MAX_VALUE - call $~lib/typedarray/Int32Array#slice - local.set $22 - local.get $22 - local.get $26 - i32.ne - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 300 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $22 - call $~lib/typedarray/Int32Array#get:length - local.get $26 - call $~lib/typedarray/Int32Array#get:length - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 301 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $22 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $26 - call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 302 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $22 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - local.get $26 - call $~lib/arraybuffer/ArrayBufferView#get:byteLength - i32.eq - i32.eqz - if - i32.const 0 - i32.const 376 - i32.const 303 - i32.const 2 - call $~lib/builtins/abort - unreachable - end - local.get $26 - call $~lib/rt/pure/__release - local.get $23 - call $~lib/rt/pure/__release - local.get $24 - call $~lib/rt/pure/__release - local.get $21 - call $~lib/rt/pure/__release - local.get $22 - call $~lib/rt/pure/__release - call $std/typedarray/testReduce<~lib/typedarray/Int8Array,i8> - call $std/typedarray/testReduce<~lib/typedarray/Uint8Array,u8> - call $std/typedarray/testReduce<~lib/typedarray/Uint8ClampedArray,u8> - call $std/typedarray/testReduce<~lib/typedarray/Int16Array,i16> - call $std/typedarray/testReduce<~lib/typedarray/Uint16Array,u16> - call $std/typedarray/testReduce<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testReduce<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testReduce<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testReduce<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testReduce<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testReduce<~lib/typedarray/Float64Array,f64> - call $std/typedarray/testReduceRight<~lib/typedarray/Int8Array,i8> - call $std/typedarray/testReduceRight<~lib/typedarray/Uint8Array,u8> - call $std/typedarray/testReduceRight<~lib/typedarray/Uint8ClampedArray,u8> - call $std/typedarray/testReduceRight<~lib/typedarray/Int16Array,i16> - call $std/typedarray/testReduceRight<~lib/typedarray/Uint16Array,u16> - call $std/typedarray/testReduceRight<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testReduceRight<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testReduceRight<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testReduceRight<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testReduceRight<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testReduceRight<~lib/typedarray/Float64Array,f64> - call $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8> - call $std/typedarray/testArrayMap<~lib/typedarray/Uint8Array,u8> - call $std/typedarray/testArrayMap<~lib/typedarray/Uint8ClampedArray,u8> - call $std/typedarray/testArrayMap<~lib/typedarray/Int16Array,i16> - call $std/typedarray/testArrayMap<~lib/typedarray/Uint16Array,u16> - call $std/typedarray/testArrayMap<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testArrayMap<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testArrayMap<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testArrayMap<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testArrayMap<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testArrayMap<~lib/typedarray/Float64Array,f64> - call $std/typedarray/testArrayFilter<~lib/typedarray/Int8Array,i8> - call $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8> - call $std/typedarray/testArrayFilter<~lib/typedarray/Uint8ClampedArray,u8> - call $std/typedarray/testArrayFilter<~lib/typedarray/Int16Array,i16> - call $std/typedarray/testArrayFilter<~lib/typedarray/Uint16Array,u16> - call $std/typedarray/testArrayFilter<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testArrayFilter<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testArrayFilter<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testArrayFilter<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testArrayFilter<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testArrayFilter<~lib/typedarray/Float64Array,f64> - call $std/typedarray/testArraySome<~lib/typedarray/Int8Array,i8> - call $std/typedarray/testArraySome<~lib/typedarray/Uint8Array,u8> - call $std/typedarray/testArraySome<~lib/typedarray/Uint8ClampedArray,u8> - call $std/typedarray/testArraySome<~lib/typedarray/Int16Array,i16> - call $std/typedarray/testArraySome<~lib/typedarray/Uint16Array,u16> - call $std/typedarray/testArraySome<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testArraySome<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testArraySome<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testArraySome<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testArraySome<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testArraySome<~lib/typedarray/Float64Array,f64> - call $std/typedarray/testArrayFindIndex<~lib/typedarray/Int8Array,i8> - call $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8Array,u8> - call $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8ClampedArray,u8> - call $std/typedarray/testArrayFindIndex<~lib/typedarray/Int16Array,i16> - call $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint16Array,u16> - call $std/typedarray/testArrayFindIndex<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testArrayFindIndex<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testArrayFindIndex<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testArrayFindIndex<~lib/typedarray/Float64Array,f64> - call $std/typedarray/testArrayEvery<~lib/typedarray/Int8Array,i8> - call $std/typedarray/testArrayEvery<~lib/typedarray/Uint8Array,u8> - call $std/typedarray/testArrayEvery<~lib/typedarray/Uint8ClampedArray,u8> - call $std/typedarray/testArrayEvery<~lib/typedarray/Int16Array,i16> - call $std/typedarray/testArrayEvery<~lib/typedarray/Uint16Array,u16> - call $std/typedarray/testArrayEvery<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testArrayEvery<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testArrayEvery<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testArrayEvery<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testArrayEvery<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testArrayEvery<~lib/typedarray/Float64Array,f64> - call $std/typedarray/testArrayForEach<~lib/typedarray/Int8Array,i8> - call $std/typedarray/testArrayForEach<~lib/typedarray/Uint8Array,u8> - call $std/typedarray/testArrayForEach<~lib/typedarray/Uint8ClampedArray,u8> - call $std/typedarray/testArrayForEach<~lib/typedarray/Int16Array,i16> - call $std/typedarray/testArrayForEach<~lib/typedarray/Uint16Array,u16> - call $std/typedarray/testArrayForEach<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testArrayForEach<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testArrayForEach<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testArrayForEach<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testArrayForEach<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testArrayForEach<~lib/typedarray/Float64Array,f64> - call $std/typedarray/testArrayReverse<~lib/typedarray/Int8Array,i8> - call $std/typedarray/testArrayReverse<~lib/typedarray/Uint8Array,u8> - call $std/typedarray/testArrayReverse<~lib/typedarray/Uint8ClampedArray,u8> - call $std/typedarray/testArrayReverse<~lib/typedarray/Int16Array,i16> - call $std/typedarray/testArrayReverse<~lib/typedarray/Uint16Array,u16> - call $std/typedarray/testArrayReverse<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testArrayReverse<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testArrayReverse<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testArrayReverse<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testArrayReverse<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testArrayReverse<~lib/typedarray/Float64Array,f64> - call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int8Array,i8> - call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint8Array,u8> - call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint8ClampedArray,u8> - call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int16Array,i16> - call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint16Array,u16> - call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Float64Array,f64> - call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int8Array,i8> - call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint8Array,u8> - call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint8ClampedArray,u8> - call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int16Array,i16> - call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint16Array,u16> - call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Float64Array,f64> - call $std/typedarray/testArrayWrap<~lib/typedarray/Int8Array,i8> - call $std/typedarray/testArrayWrap<~lib/typedarray/Uint8Array,u8> - call $std/typedarray/testArrayWrap<~lib/typedarray/Uint8ClampedArray,u8> - call $std/typedarray/testArrayWrap<~lib/typedarray/Int16Array,i16> - call $std/typedarray/testArrayWrap<~lib/typedarray/Uint16Array,u16> - call $std/typedarray/testArrayWrap<~lib/typedarray/Int32Array,i32> - call $std/typedarray/testArrayWrap<~lib/typedarray/Uint32Array,u32> - call $std/typedarray/testArrayWrap<~lib/typedarray/Int64Array,i64> - call $std/typedarray/testArrayWrap<~lib/typedarray/Uint64Array,u64> - call $std/typedarray/testArrayWrap<~lib/typedarray/Float32Array,f32> - call $std/typedarray/testArrayWrap<~lib/typedarray/Float64Array,f64> - ) - (func $start (; 604 ;) (type $FUNCSIG$v) - global.get $~lib/started - if - return - else - i32.const 1 - global.set $~lib/started - end - call $start:std/typedarray - ) - (func $~lib/array/Array#__visit_impl (; 605 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 606 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 607 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 608 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/array/Array#__visit_impl (; 609 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - nop - ) - (func $~lib/rt/pure/__visit (; 610 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - (local $3 i32) - local.get $0 - global.get $~lib/heap/__heap_base - i32.lt_u - if - return - end - local.get $0 - i32.const 16 - i32.sub - local.set $2 - block $break|0 - block $case5|0 - block $case4|0 - block $case3|0 - block $case2|0 - block $case1|0 - block $case0|0 - local.get $1 - local.set $3 - local.get $3 - i32.const 1 - i32.eq - br_if $case0|0 - local.get $3 - i32.const 2 - i32.eq - br_if $case1|0 - local.get $3 - i32.const 3 - i32.eq - br_if $case2|0 - local.get $3 - i32.const 4 - i32.eq - br_if $case3|0 - local.get $3 - i32.const 5 - i32.eq - br_if $case4|0 - br $case5|0 - end - local.get $2 - call $~lib/rt/pure/decrement - br $break|0 - end - local.get $2 - i32.load offset=4 - i32.const 268435455 - i32.and - i32.const 0 - i32.gt_u - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 75 - i32.const 17 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $2 - i32.load offset=4 - i32.const 1 - i32.sub - i32.store offset=4 - local.get $2 - call $~lib/rt/pure/markGray - br $break|0 - end - local.get $2 - call $~lib/rt/pure/scan - br $break|0 - end - local.get $2 - i32.load offset=4 - local.set $3 - local.get $3 - i32.const -268435456 - i32.and - local.get $3 - i32.const 1 - i32.add - i32.const -268435456 - i32.and - i32.eq - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 86 - i32.const 6 - call $~lib/builtins/abort - unreachable - end - local.get $2 - local.get $3 - i32.const 1 - i32.add - i32.store offset=4 - local.get $3 - i32.const 1879048192 - i32.and - i32.const 0 - i32.ne - if - local.get $2 - call $~lib/rt/pure/scanBlack - end - br $break|0 - end - local.get $2 - call $~lib/rt/pure/collectWhite - br $break|0 - end - i32.const 0 - i32.eqz - if - i32.const 0 - i32.const 232 - i32.const 97 - i32.const 24 - call $~lib/builtins/abort - unreachable - end - end - ) - (func $~lib/rt/__visit_members (; 611 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) - (local $2 i32) - block $block$4$break - block $switch$1$default - block $switch$1$case$20 - block $switch$1$case$19 - block $switch$1$case$18 - block $switch$1$case$17 - block $switch$1$case$16 - block $switch$1$case$4 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$16 $switch$1$case$17 $switch$1$case$18 $switch$1$case$19 $switch$1$case$20 $switch$1$default - end - return - end - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl - br $block$4$break - end - unreachable - end - local.get $0 - i32.load - local.tee $2 - if - local.get $2 - local.get $1 - call $~lib/rt/pure/__visit - end - return - ) - (func $null (; 612 ;) (type $FUNCSIG$v) - ) -) From 774e91c21a66b2c41afd84bf06d8dc25f39dc2cd Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 23 Sep 2019 19:54:36 +0300 Subject: [PATCH 02/12] refactor --- std/assembly/arraybuffer.ts | 2 +- tests/compiler/assert-nonnull.optimized.wat | 2 +- tests/compiler/assert-nonnull.untouched.wat | 4 +- tests/compiler/rc/global-init.optimized.wat | 2 +- tests/compiler/rc/global-init.untouched.wat | 2 +- tests/compiler/rc/local-init.optimized.wat | 2 +- tests/compiler/rc/local-init.untouched.wat | 2 +- .../rc/logical-and-mismatch.optimized.wat | 2 +- .../rc/logical-and-mismatch.untouched.wat | 2 +- .../rc/logical-or-mismatch.optimized.wat | 2 +- .../rc/logical-or-mismatch.untouched.wat | 2 +- tests/compiler/rc/rereturn.optimized.wat | 2 +- tests/compiler/rc/rereturn.untouched.wat | 2 +- .../rc/ternary-mismatch.optimized.wat | 2 +- .../rc/ternary-mismatch.untouched.wat | 2 +- tests/compiler/runtime-full.optimized.wat | 2 +- tests/compiler/runtime-full.untouched.wat | 2 +- tests/compiler/std/array-access.optimized.wat | 4 +- tests/compiler/std/array-access.untouched.wat | 8 +- tests/compiler/std/dataview.optimized.wat | 110 ++++++++---------- tests/compiler/std/dataview.untouched.wat | 41 +++---- tests/compiler/std/map.optimized.wat | 2 +- tests/compiler/std/map.untouched.wat | 2 +- tests/compiler/std/set.optimized.wat | 2 +- tests/compiler/std/set.untouched.wat | 2 +- .../std/string-encoding.optimized.wat | 2 +- .../std/string-encoding.untouched.wat | 2 +- 27 files changed, 95 insertions(+), 116 deletions(-) diff --git a/std/assembly/arraybuffer.ts b/std/assembly/arraybuffer.ts index cc74a8a57c..5a6e8fc9d6 100644 --- a/std/assembly/arraybuffer.ts +++ b/std/assembly/arraybuffer.ts @@ -5,8 +5,8 @@ import { idof } from "./builtins"; import { E_INVALIDLENGTH } from "./util/error"; export abstract class ArrayBufferView { - readonly dataStart: usize; readonly buffer: ArrayBuffer; + readonly dataStart: usize; readonly byteLength: i32; get byteOffset(): i32 { diff --git a/tests/compiler/assert-nonnull.optimized.wat b/tests/compiler/assert-nonnull.optimized.wat index 258f9bd28f..2149cccbed 100644 --- a/tests/compiler/assert-nonnull.optimized.wat +++ b/tests/compiler/assert-nonnull.optimized.wat @@ -53,7 +53,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 i32.load ) (func $~lib/array/Array#__get (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) diff --git a/tests/compiler/assert-nonnull.untouched.wat b/tests/compiler/assert-nonnull.untouched.wat index 0ee1f1fd84..6b4be00840 100644 --- a/tests/compiler/assert-nonnull.untouched.wat +++ b/tests/compiler/assert-nonnull.untouched.wat @@ -90,7 +90,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -151,7 +151,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl diff --git a/tests/compiler/rc/global-init.optimized.wat b/tests/compiler/rc/global-init.optimized.wat index d64dcf9a0e..c171eea177 100644 --- a/tests/compiler/rc/global-init.optimized.wat +++ b/tests/compiler/rc/global-init.optimized.wat @@ -1929,7 +1929,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/global-init.untouched.wat b/tests/compiler/rc/global-init.untouched.wat index ed2accb8f4..7c7b8830b8 100644 --- a/tests/compiler/rc/global-init.untouched.wat +++ b/tests/compiler/rc/global-init.untouched.wat @@ -3454,7 +3454,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/local-init.optimized.wat b/tests/compiler/rc/local-init.optimized.wat index 09cd6f2405..02eee80e8e 100644 --- a/tests/compiler/rc/local-init.optimized.wat +++ b/tests/compiler/rc/local-init.optimized.wat @@ -1906,7 +1906,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/local-init.untouched.wat b/tests/compiler/rc/local-init.untouched.wat index 7699774ba5..9157c0e601 100644 --- a/tests/compiler/rc/local-init.untouched.wat +++ b/tests/compiler/rc/local-init.untouched.wat @@ -3445,7 +3445,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/logical-and-mismatch.optimized.wat b/tests/compiler/rc/logical-and-mismatch.optimized.wat index 6daef5ea2c..6772fcfa31 100644 --- a/tests/compiler/rc/logical-and-mismatch.optimized.wat +++ b/tests/compiler/rc/logical-and-mismatch.optimized.wat @@ -1949,7 +1949,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/logical-and-mismatch.untouched.wat b/tests/compiler/rc/logical-and-mismatch.untouched.wat index d2e0b00136..b3ca3f728d 100644 --- a/tests/compiler/rc/logical-and-mismatch.untouched.wat +++ b/tests/compiler/rc/logical-and-mismatch.untouched.wat @@ -3483,7 +3483,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/logical-or-mismatch.optimized.wat b/tests/compiler/rc/logical-or-mismatch.optimized.wat index 3286ffe51f..a8fee64286 100644 --- a/tests/compiler/rc/logical-or-mismatch.optimized.wat +++ b/tests/compiler/rc/logical-or-mismatch.optimized.wat @@ -1949,7 +1949,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/logical-or-mismatch.untouched.wat b/tests/compiler/rc/logical-or-mismatch.untouched.wat index 90b3e310d9..c28a4e768a 100644 --- a/tests/compiler/rc/logical-or-mismatch.untouched.wat +++ b/tests/compiler/rc/logical-or-mismatch.untouched.wat @@ -3483,7 +3483,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/rereturn.optimized.wat b/tests/compiler/rc/rereturn.optimized.wat index b221b210e4..52e8d2592b 100644 --- a/tests/compiler/rc/rereturn.optimized.wat +++ b/tests/compiler/rc/rereturn.optimized.wat @@ -1885,7 +1885,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/rereturn.untouched.wat b/tests/compiler/rc/rereturn.untouched.wat index 64666083f6..e0b5fa9f29 100644 --- a/tests/compiler/rc/rereturn.untouched.wat +++ b/tests/compiler/rc/rereturn.untouched.wat @@ -3419,7 +3419,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/ternary-mismatch.optimized.wat b/tests/compiler/rc/ternary-mismatch.optimized.wat index d092a8cc85..08ab899cf5 100644 --- a/tests/compiler/rc/ternary-mismatch.optimized.wat +++ b/tests/compiler/rc/ternary-mismatch.optimized.wat @@ -1941,7 +1941,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/ternary-mismatch.untouched.wat b/tests/compiler/rc/ternary-mismatch.untouched.wat index de62690bf3..7f526cb5af 100644 --- a/tests/compiler/rc/ternary-mismatch.untouched.wat +++ b/tests/compiler/rc/ternary-mismatch.untouched.wat @@ -3467,7 +3467,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/runtime-full.optimized.wat b/tests/compiler/runtime-full.optimized.wat index 8cc29c5013..261c212f50 100644 --- a/tests/compiler/runtime-full.optimized.wat +++ b/tests/compiler/runtime-full.optimized.wat @@ -1877,7 +1877,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/runtime-full.untouched.wat b/tests/compiler/runtime-full.untouched.wat index fd19ccb958..56944d4a18 100644 --- a/tests/compiler/runtime-full.untouched.wat +++ b/tests/compiler/runtime-full.untouched.wat @@ -3391,7 +3391,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index 6338497344..837b6ab683 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -31,7 +31,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -63,7 +63,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 i32.const 4 i32.add i32.load diff --git a/tests/compiler/std/array-access.untouched.wat b/tests/compiler/std/array-access.untouched.wat index 784b79895c..a9cae69364 100644 --- a/tests/compiler/std/array-access.untouched.wat +++ b/tests/compiler/std/array-access.untouched.wat @@ -26,7 +26,7 @@ ) (func $~lib/array/Array<~lib/array/Array>#__unchecked_get (; 2 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -71,7 +71,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -119,7 +119,7 @@ ) (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -347,7 +347,7 @@ ) (func $~lib/array/Array<~lib/array/Array<~lib/string/String>>#__unchecked_get (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index 2a29abe5c0..ec98fa824c 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -1854,7 +1854,7 @@ i32.const 0 i32.store offset=8 local.get $0 - i32.load offset=4 + i32.load local.tee $2 local.get $1 i32.ne @@ -1867,10 +1867,10 @@ end local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 i32.const 8 i32.store offset=8 @@ -1890,7 +1890,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -1968,7 +1968,14 @@ call $~lib/rt/pure/__release local.get $3 ) - (func $~lib/polyfills/bswap (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + ) + (func $~lib/polyfills/bswap (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const -16711936 i32.and @@ -1981,7 +1988,7 @@ i32.rotr i32.or ) - (func $~lib/dataview/DataView#getFloat32 (; 36 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) + (func $~lib/dataview/DataView#getFloat32 (; 37 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) local.get $1 i32.const 0 i32.lt_s @@ -2017,7 +2024,7 @@ f32.reinterpret_i32 end ) - (func $~lib/polyfills/bswap (; 37 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) + (func $~lib/polyfills/bswap (; 38 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) local.get $0 i64.const 8 i64.shr_u @@ -2043,7 +2050,7 @@ i64.const 32 i64.rotr ) - (func $~lib/dataview/DataView#getFloat64 (; 38 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) + (func $~lib/dataview/DataView#getFloat64 (; 39 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) i32.const 8 local.get $0 i32.load offset=8 @@ -2069,7 +2076,7 @@ f64.reinterpret_i64 end ) - (func $~lib/dataview/DataView#getInt8 (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/dataview/DataView#getInt8 (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -2088,7 +2095,7 @@ i32.add i32.load8_s ) - (func $~lib/polyfills/bswap (; 40 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 41 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 16 i32.shl @@ -2101,7 +2108,7 @@ i32.shl i32.or ) - (func $~lib/dataview/DataView#getInt16 (; 41 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getInt16 (; 42 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 i32.const 0 i32.lt_s @@ -2135,7 +2142,7 @@ end local.get $0 ) - (func $~lib/dataview/DataView#getInt32 (; 42 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getInt32 (; 43 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 i32.const 0 i32.lt_s @@ -2169,7 +2176,7 @@ end local.get $0 ) - (func $~lib/dataview/DataView#getInt64 (; 43 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + (func $~lib/dataview/DataView#getInt64 (; 44 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) (local $2 i64) i32.const 8 local.get $0 @@ -2195,7 +2202,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/dataview/DataView#getUint8 (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/dataview/DataView#getUint8 (; 45 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.load offset=8 @@ -2214,7 +2221,7 @@ i32.add i32.load8_u ) - (func $~lib/polyfills/bswap (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/polyfills/bswap (; 46 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 8 i32.shl @@ -2225,7 +2232,7 @@ i32.shr_u i32.or ) - (func $~lib/dataview/DataView#getUint16 (; 46 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getUint16 (; 47 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 i32.const 0 i32.lt_s @@ -2259,7 +2266,7 @@ end local.get $0 ) - (func $~lib/dataview/DataView#getUint32 (; 47 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/dataview/DataView#getUint32 (; 48 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 i32.const 0 i32.lt_s @@ -2293,7 +2300,7 @@ end local.get $0 ) - (func $~lib/dataview/DataView#getUint64 (; 48 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + (func $~lib/dataview/DataView#getUint64 (; 49 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) (local $2 i64) i32.const 8 local.get $0 @@ -2319,7 +2326,7 @@ call $~lib/polyfills/bswap end ) - (func $~lib/dataview/DataView#setFloat32 (; 49 ;) (type $FUNCSIG$vifi) (param $0 i32) (param $1 f32) (param $2 i32) + (func $~lib/dataview/DataView#setFloat32 (; 50 ;) (type $FUNCSIG$vifi) (param $0 i32) (param $1 f32) (param $2 i32) i32.const 4 local.get $0 i32.load offset=8 @@ -2347,7 +2354,7 @@ i32.store end ) - (func $~lib/dataview/DataView#setFloat64 (; 50 ;) (type $FUNCSIG$vidi) (param $0 i32) (param $1 f64) (param $2 i32) + (func $~lib/dataview/DataView#setFloat64 (; 51 ;) (type $FUNCSIG$vidi) (param $0 i32) (param $1 f64) (param $2 i32) i32.const 8 local.get $0 i32.load offset=8 @@ -2375,7 +2382,7 @@ i64.store end ) - (func $~lib/dataview/DataView#setInt8 (; 51 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/dataview/DataView#setInt8 (; 52 ;) (type $FUNCSIG$vi) (param $0 i32) i32.const 0 local.get $0 i32.load offset=8 @@ -2393,7 +2400,7 @@ i32.const 108 i32.store8 ) - (func $~lib/dataview/DataView#setInt16 (; 52 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/dataview/DataView#setInt16 (; 53 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) i32.const 2 local.get $0 i32.load offset=8 @@ -2417,7 +2424,7 @@ end i32.store16 ) - (func $~lib/dataview/DataView#setInt32 (; 53 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/dataview/DataView#setInt32 (; 54 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) i32.const 4 local.get $0 i32.load offset=8 @@ -2441,7 +2448,7 @@ end i32.store ) - (func $~lib/dataview/DataView#setInt64 (; 54 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) + (func $~lib/dataview/DataView#setInt64 (; 55 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) i32.const 8 local.get $0 i32.load offset=8 @@ -2465,7 +2472,7 @@ end i64.store ) - (func $~lib/dataview/DataView#setUint8 (; 55 ;) (type $FUNCSIG$vi) (param $0 i32) + (func $~lib/dataview/DataView#setUint8 (; 56 ;) (type $FUNCSIG$vi) (param $0 i32) i32.const 0 local.get $0 i32.load offset=8 @@ -2483,7 +2490,7 @@ i32.const 238 i32.store8 ) - (func $~lib/dataview/DataView#setUint16 (; 56 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/dataview/DataView#setUint16 (; 57 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) i32.const 2 local.get $0 i32.load offset=8 @@ -2507,7 +2514,7 @@ end i32.store16 ) - (func $~lib/dataview/DataView#setUint32 (; 57 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/dataview/DataView#setUint32 (; 58 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) i32.const 4 local.get $0 i32.load offset=8 @@ -2531,7 +2538,7 @@ end i32.store ) - (func $~lib/dataview/DataView#setUint64 (; 58 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) + (func $~lib/dataview/DataView#setUint64 (; 59 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) i32.const 8 local.get $0 i32.load offset=8 @@ -2555,7 +2562,7 @@ end i64.store ) - (func $~lib/dataview/DataView#constructor|trampoline (; 59 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/dataview/DataView#constructor|trampoline (; 60 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) block $2of2 block $1of2 @@ -2576,7 +2583,7 @@ local.get $1 call $~lib/dataview/DataView#constructor ) - (func $start:std/dataview (; 60 ;) (type $FUNCSIG$v) + (func $start:std/dataview (; 61 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -2618,12 +2625,9 @@ i32.const 95 call $~lib/typedarray/Uint8Array#__set local.get $1 - i32.load offset=4 - local.get $1 i32.load local.get $1 - i32.load offset=4 - i32.sub + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 i32.load offset=8 call $~lib/dataview/DataView#constructor @@ -4104,16 +4108,13 @@ i32.const 1 global.set $~lib/argc local.get $1 - i32.load offset=4 + i32.load call $~lib/dataview/DataView#constructor|trampoline local.set $2 local.get $0 call $~lib/rt/pure/__release local.get $2 - i32.load offset=4 - local.get $2 - i32.load - i32.sub + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset if i32.const 0 i32.const 480 @@ -4139,10 +4140,10 @@ local.get $2 call $~lib/rt/pure/__release ) - (func $start (; 61 ;) (type $FUNCSIG$v) + (func $start (; 62 ;) (type $FUNCSIG$v) call $start:std/dataview ) - (func $~lib/rt/pure/__visit (; 62 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/rt/pure/__visit (; 63 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) local.get $0 i32.const 556 i32.lt_u @@ -4252,26 +4253,15 @@ unreachable end ) - (func $~lib/rt/__visit_members (; 63 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/rt/__visit_members (; 64 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) block $switch$1$default - block $switch$1$case$6 - block $switch$1$case$4 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$4 $switch$1$case$6 $switch$1$default - end - return - end - local.get $0 - i32.load offset=4 - local.tee $0 - if + block $switch$1$case$4 + block $switch$1$case$2 local.get $0 - local.get $1 - call $~lib/rt/pure/__visit + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$default end return end @@ -4287,7 +4277,7 @@ end unreachable ) - (func $null (; 64 ;) (type $FUNCSIG$v) + (func $null (; 65 ;) (type $FUNCSIG$v) nop ) ) diff --git a/tests/compiler/std/dataview.untouched.wat b/tests/compiler/std/dataview.untouched.wat index a088bd3c81..a25802bfde 100644 --- a/tests/compiler/std/dataview.untouched.wat +++ b/tests/compiler/std/dataview.untouched.wat @@ -3592,7 +3592,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load offset=4 + i32.load local.tee $4 i32.ne if @@ -3603,10 +3603,10 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store offset=4 + i32.store local.get $0 local.get $3 - i32.store + i32.store offset=4 local.get $0 local.get $1 i32.store offset=8 @@ -3642,7 +3642,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -3731,10 +3731,10 @@ local.get $0 ) (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load local.get $0 i32.load offset=4 + local.get $0 + i32.load i32.sub ) (func $~lib/polyfills/bswap (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) @@ -4573,7 +4573,7 @@ call $~lib/typedarray/Uint8Array#__set i32.const 0 local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $0 @@ -6220,7 +6220,7 @@ global.set $~lib/argc i32.const 0 local.get $0 - i32.load offset=4 + i32.load i32.const 0 i32.const 0 call $~lib/dataview/DataView#constructor|trampoline @@ -6396,24 +6396,13 @@ (func $~lib/rt/__visit_members (; 70 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) block $switch$1$default - block $switch$1$case$6 - block $switch$1$case$4 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$4 $switch$1$case$6 $switch$1$default - end - return - end - local.get $0 - i32.load offset=4 - local.tee $2 - if - local.get $2 - local.get $1 - call $~lib/rt/pure/__visit + block $switch$1$case$4 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$default end return end diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index eb178e89ed..489b187dde 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -8716,7 +8716,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/std/map.untouched.wat b/tests/compiler/std/map.untouched.wat index 61d1206d04..cacf158efc 100644 --- a/tests/compiler/std/map.untouched.wat +++ b/tests/compiler/std/map.untouched.wat @@ -12658,7 +12658,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index bcd248f235..f484a5aba8 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -7611,7 +7611,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/std/set.untouched.wat b/tests/compiler/std/set.untouched.wat index f4a8a43248..894782324b 100644 --- a/tests/compiler/std/set.untouched.wat +++ b/tests/compiler/std/set.untouched.wat @@ -11370,7 +11370,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index ef6cf43c35..54ac4558aa 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -3864,7 +3864,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/std/string-encoding.untouched.wat b/tests/compiler/std/string-encoding.untouched.wat index aabb8d9f5e..eb9da63f99 100644 --- a/tests/compiler/std/string-encoding.untouched.wat +++ b/tests/compiler/std/string-encoding.untouched.wat @@ -5597,7 +5597,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 From e8e6c7323fe2b05e5b4a063683890efd71649b99 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Mon, 23 Sep 2019 21:17:39 +0300 Subject: [PATCH 03/12] add retains --- std/assembly/typedarray.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/std/assembly/typedarray.ts b/std/assembly/typedarray.ts index e53dba4abb..3a8c35e52e 100644 --- a/std/assembly/typedarray.ts +++ b/std/assembly/typedarray.ts @@ -1445,7 +1445,7 @@ function SUBARRAY( end = max(end, begin); var out = __alloc(offsetof(), idof()); - store(out, array.buffer, offsetof("buffer")); + store(out, __retain(changetype(array.buffer)), offsetof("buffer")); store(out, array.dataStart + (begin << alignof()), offsetof("dataStart")); store(out, (end - begin) << alignof(), offsetof("byteLength")); return changetype(out); // retains @@ -1522,7 +1522,7 @@ function MAP( fn(load(dataStart + (i << alignof())), i, array) ); } - store(out, changetype(buffer), offsetof("buffer")); + store(out, __retain(buffer), offsetof("buffer")); store(out, buffer, offsetof("dataStart")); store(out, byteLength, offsetof("byteLength")); return changetype(out); // retains @@ -1551,7 +1551,7 @@ function FILTER( // shrink output buffer var byteLength = j << alignof(); var data = __realloc(buffer, byteLength); - store(out, changetype(data), offsetof("buffer")); + store(out, __retain(data), offsetof("buffer")); store(out, byteLength, offsetof("byteLength")); store(out, data, offsetof("dataStart")); return changetype(out); // retains @@ -1698,7 +1698,7 @@ function WRAP(buffer: ArrayBuffer, byteOffset throw new RangeError(E_INVALIDLENGTH); } var out = __alloc(offsetof(), idof()); - store(out, buffer, offsetof("buffer")); + store(out, __retain(changetype(buffer)), offsetof("buffer")); store(out, byteLength, offsetof("byteLength")); store(out, changetype(buffer) + byteOffset, offsetof("dataStart")); return changetype(out); // retains From 0dea3bd1c3327c22493c64718c4d90b75e03d37b Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 24 Sep 2019 10:10:06 +0300 Subject: [PATCH 04/12] fix --- src/compiler.ts | 4 +- std/assembly/array.ts | 2 +- std/assembly/rt.ts | 6 +- tests/compiler/infer-generic.untouched.wat | 172 + tests/compiler/number.untouched.wat | 4186 ++ tests/compiler/resolve-access.optimized.wat | 2 +- tests/compiler/resolve-access.untouched.wat | 2084 + tests/compiler/resolve-binary.untouched.wat | 5764 ++ .../resolve-elementaccess.optimized.wat | 4 +- .../resolve-elementaccess.untouched.wat | 3787 ++ .../resolve-function-expression.untouched.wat | 641 + tests/compiler/resolve-ternary.untouched.wat | 5465 ++ tests/compiler/resolve-unary.untouched.wat | 1220 + .../retain-release-sanity.optimized.wat | 4 +- .../retain-release-sanity.untouched.wat | 4620 ++ .../compiler/std/array-literal.optimized.wat | 4 +- .../compiler/std/array-literal.untouched.wat | 4101 ++ tests/compiler/std/array.optimized.wat | 22 +- tests/compiler/std/array.ts | 2 +- tests/compiler/std/array.untouched.wat | 23605 +++++++ tests/compiler/std/arraybuffer.optimized.wat | 57 +- tests/compiler/std/arraybuffer.untouched.wat | 4505 ++ tests/compiler/std/libm.untouched.wat | 12546 ++++ tests/compiler/std/math.untouched.wat | 54516 ++++++++++++++++ tests/compiler/std/static-array.optimized.wat | 8 +- tests/compiler/std/static-array.untouched.wat | 2389 + tests/compiler/std/string.optimized.wat | 4 +- tests/compiler/std/string.untouched.wat | 18441 ++++++ tests/compiler/std/typedarray.optimized.wat | 2938 +- tests/compiler/std/typedarray.untouched.wat | 42335 ++++++++++++ 30 files changed, 191585 insertions(+), 1849 deletions(-) diff --git a/src/compiler.ts b/src/compiler.ts index a6301298de..cac03776d5 100644 --- a/src/compiler.ts +++ b/src/compiler.ts @@ -1592,9 +1592,9 @@ export class Compiler extends DiagnosticEmitter { var bufferAddress32 = i64_low(bufferSegment.offset) + runtimeHeaderSize; assert(!program.options.isWasm64); // TODO - assert(arrayInstance.writeField("data", bufferAddress32, buf, runtimeHeaderSize)); + assert(arrayInstance.writeField("buffer", bufferAddress32, buf, runtimeHeaderSize)); assert(arrayInstance.writeField("dataStart", bufferAddress32, buf, runtimeHeaderSize)); - assert(arrayInstance.writeField("dataLength", bufferLength, buf, runtimeHeaderSize)); + assert(arrayInstance.writeField("byteLength", bufferLength, buf, runtimeHeaderSize)); assert(arrayInstance.writeField("length_", arrayLength, buf, runtimeHeaderSize)); return this.addMemorySegment(buf); diff --git a/std/assembly/array.ts b/std/assembly/array.ts index 285f8ea252..0c221b5061 100644 --- a/std/assembly/array.ts +++ b/std/assembly/array.ts @@ -10,7 +10,7 @@ import { E_INDEXOUTOFRANGE, E_INVALIDLENGTH, E_EMPTYARRAY, E_HOLEYARRAY } from " /** Ensures that the given array has _at least_ the specified backing size. */ function ensureSize(array: usize, minSize: usize, alignLog2: u32): void { var oldCapacity = changetype(array).byteLength; - if (minSize > oldCapacity >>> alignLog2) { + if (minSize > oldCapacity >>> alignLog2) { if (minSize > BLOCK_MAXSIZE >>> alignLog2) throw new RangeError(E_INVALIDLENGTH); let oldData = changetype(changetype(array).buffer); let newCapacity = minSize << alignLog2; diff --git a/std/assembly/rt.ts b/std/assembly/rt.ts index de9b855386..ce82dcd28b 100644 --- a/std/assembly/rt.ts +++ b/std/assembly/rt.ts @@ -41,9 +41,9 @@ export function __allocArray(length: i32, alignLog2: usize, id: u32, data: usize var array = __alloc(offsetof(), id); var bufferSize = length << alignLog2; var buffer = __alloc(bufferSize, idof()); - store(array, __retain(buffer), offsetof("data")); - changetype(array).dataStart = buffer; - changetype(array).dataLength = bufferSize; + store(array, __retain(buffer), offsetof("buffer")); + store(array, buffer, offsetof("dataStart")); + store(array, bufferSize, offsetof("byteLength")); store(changetype(array), length, offsetof("length_")); if (data) memory.copy(buffer, data, bufferSize); return array; diff --git a/tests/compiler/infer-generic.untouched.wat b/tests/compiler/infer-generic.untouched.wat index e69de29bb2..296df99d33 100644 --- a/tests/compiler/infer-generic.untouched.wat +++ b/tests/compiler/infer-generic.untouched.wat @@ -0,0 +1,172 @@ +(module + (type $FUNCSIG$idd (func (param f64 f64) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$iifii (func (param i32 f32 i32 i32) (result i32))) + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) + (type $FUNCSIG$v (func)) + (type $FUNCSIG$ff (func (param f32) (result f32))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (memory $0 1) + (data (i32.const 8) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00i\00n\00f\00e\00r\00-\00g\00e\00n\00e\00r\00i\00c\00.\00t\00s\00") + (data (i32.const 56) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\00\00\80?\00\00\00@\00\00@@") + (data (i32.const 88) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00H\00\00\00H\00\00\00\0c\00\00\00\03\00\00\00") + (table $0 2 funcref) + (elem (i32.const 0) $null $start:infer-generic~anonymous|0) + (global $infer-generic/arr i32 (i32.const 104)) + (global $~lib/argc (mut i32) (i32.const 0)) + (export "memory" (memory $0)) + (export "test1" (func $infer-generic/test1)) + (export "test2" (func $infer-generic/test2)) + (export "test3" (func $infer-generic/test3)) + (export "test4" (func $infer-generic/test4)) + (start $start) + (func $infer-generic/inferCompatible (; 1 ;) (type $FUNCSIG$idd) (param $0 f64) (param $1 f64) (result i32) + local.get $0 + local.get $1 + f64.eq + ) + (func $~lib/rt/stub/__retain (; 2 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + ) + (func $~lib/rt/stub/__release (; 3 ;) (type $FUNCSIG$vi) (param $0 i32) + nop + ) + (func $start:infer-generic~anonymous|0 (; 4 ;) (type $FUNCSIG$iifii) (param $0 i32) (param $1 f32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/stub/__retain + drop + local.get $0 + if (result i32) + local.get $1 + f32.const 0 + f32.ne + else + i32.const 0 + end + local.set $4 + local.get $3 + call $~lib/rt/stub/__release + local.get $4 + ) + (func $~lib/array/Array#reduce (; 5 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $2 + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + local.get $0 + i32.load offset=12 + local.set $5 + loop $loop|0 + local.get $4 + local.get $5 + local.tee $6 + local.get $0 + i32.load offset=12 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $0 + i32.load offset=4 + local.get $4 + i32.const 2 + i32.shl + i32.add + f32.load + local.get $4 + local.get $0 + local.get $1 + call_indirect (type $FUNCSIG$iifii) + local.set $3 + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + ) + (func $start:infer-generic (; 6 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + f64.const 1 + f64.const 1 + call $infer-generic/inferCompatible + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 46 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $infer-generic/arr + i32.const 1 + i32.const 0 + call $~lib/array/Array#reduce + drop + ) + (func $infer-generic/inferPlain (; 7 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + ) + (func $infer-generic/test1 (; 8 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $infer-generic/inferPlain + ) + (func $infer-generic/inferEncapsulatedClass (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + local.get $0 + ) + (func $infer-generic/test2 (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + local.get $0 + call $infer-generic/inferEncapsulatedClass + local.set $1 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + ) + (func $infer-generic/inferEncapsulatedFunction (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + ) + (func $infer-generic/test3 (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $infer-generic/inferEncapsulatedFunction + ) + (func $infer-generic/inferEncapsulatedFunctionMixed (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + ) + (func $infer-generic/test4 (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $infer-generic/inferEncapsulatedFunctionMixed + ) + (func $start (; 15 ;) (type $FUNCSIG$v) + call $start:infer-generic + ) + (func $null (; 16 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/number.untouched.wat b/tests/compiler/number.untouched.wat index e69de29bb2..826eba3516 100644 --- a/tests/compiler/number.untouched.wat +++ b/tests/compiler/number.untouched.wat @@ -0,0 +1,4186 @@ +(module + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$idi (func (param f64 i32) (result i32))) + (type $FUNCSIG$id (func (param f64) (result i32))) + (type $FUNCSIG$iid (func (param i32 f64) (result i32))) + (type $FUNCSIG$jii (func (param i32 i32) (result i64))) + (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) + (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) + (type $FUNCSIG$if (func (param f32) (result i32))) + (type $FUNCSIG$v (func)) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (memory $0 1) + (data (i32.const 8) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") + (data (i32.const 32) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") + (data (i32.const 448) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\000\00\00\000\00\00\00\90\01\00\00d\00\00\00") + (data (i32.const 480) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\001\00") + (data (i32.const 504) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00n\00u\00m\00b\00e\00r\00.\00t\00s\00") + (data (i32.const 544) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") + (data (i32.const 568) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") + (data (i32.const 592) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 632) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 664) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8 (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa32 + return + ) + (func $~lib/number/I32#toString (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa + ) + (func $~lib/rt/stub/__release (; 9 ;) (type $FUNCSIG$vi) (param $0 i32) + nop + ) + (func $~lib/string/String#get:length (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 16 + i32.sub + i32.load offset=12 + i32.const 1 + i32.shr_u + ) + (func $~lib/util/string/compareImpl (; 11 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + local.get $2 + call $~lib/rt/stub/__retain + drop + i32.const 0 + local.set $5 + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $6 + local.get $2 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $7 + block $break|0 + loop $continue|0 + local.get $4 + if (result i32) + local.get $6 + i32.load16_u + local.get $7 + i32.load16_u + i32.sub + local.tee $5 + i32.eqz + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + local.get $6 + i32.const 2 + i32.add + local.set $6 + local.get $7 + i32.const 2 + i32.add + local.set $7 + br $continue|0 + end + unreachable + end + local.get $5 + local.set $8 + local.get $0 + call $~lib/rt/stub/__release + local.get $2 + call $~lib/rt/stub/__release + local.get $8 + ) + (func $~lib/string/String.__eq (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + local.get $1 + call $~lib/rt/stub/__retain + drop + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 0 + i32.eq + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + return + end + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $3 + local.get $1 + call $~lib/string/String#get:length + i32.ne + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + local.get $1 + i32.const 0 + local.get $3 + call $~lib/util/string/compareImpl + i32.eqz + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $~lib/number/isFinite (; 13 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.eq + ) + (func $~lib/number/isNaN (; 14 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.ne + ) + (func $~lib/array/Array#__unchecked_get (; 15 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + i64.load + ) + (func $~lib/array/Array#__unchecked_get (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.load16_s + ) + (func $~lib/util/number/genDigits (; 17 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i64) + (local $11 i32) + (local $12 i32) + (local $13 i64) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i32) + (local $25 i32) + (local $26 i32) + i32.const 0 + local.get $4 + i32.sub + local.set $7 + i64.const 1 + local.get $7 + i64.extend_i32_s + i64.shl + local.set $8 + local.get $8 + i64.const 1 + i64.sub + local.set $9 + local.get $3 + local.get $1 + i64.sub + local.set $10 + local.get $4 + local.set $11 + local.get $3 + local.get $7 + i64.extend_i32_s + i64.shr_u + i32.wrap_i64 + local.set $12 + local.get $3 + local.get $9 + i64.and + local.set $13 + local.get $12 + call $~lib/util/number/decimalCount32 + local.set $14 + local.get $6 + local.set $15 + i32.const 1704 + i32.load offset=4 + local.set $16 + block $break|0 + loop $continue|0 + local.get $14 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|0 + block $break|1 + block $case10|1 + block $case9|1 + block $case8|1 + block $case7|1 + block $case6|1 + block $case5|1 + block $case4|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $14 + local.set $18 + local.get $18 + i32.const 10 + i32.eq + br_if $case0|1 + local.get $18 + i32.const 9 + i32.eq + br_if $case1|1 + local.get $18 + i32.const 8 + i32.eq + br_if $case2|1 + local.get $18 + i32.const 7 + i32.eq + br_if $case3|1 + local.get $18 + i32.const 6 + i32.eq + br_if $case4|1 + local.get $18 + i32.const 5 + i32.eq + br_if $case5|1 + local.get $18 + i32.const 4 + i32.eq + br_if $case6|1 + local.get $18 + i32.const 3 + i32.eq + br_if $case7|1 + local.get $18 + i32.const 2 + i32.eq + br_if $case8|1 + local.get $18 + i32.const 1 + i32.eq + br_if $case9|1 + br $case10|1 + end + local.get $12 + i32.const 1000000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100 + i32.div_u + local.set $17 + local.get $12 + i32.const 100 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10 + i32.div_u + local.set $17 + local.get $12 + i32.const 10 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + local.set $17 + i32.const 0 + local.set $12 + br $break|1 + end + i32.const 0 + local.set $17 + br $break|1 + end + local.get $17 + local.get $15 + i32.or + if + local.get $0 + local.get $15 + local.tee $18 + i32.const 1 + i32.add + local.set $15 + local.get $18 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $17 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $12 + i64.extend_i32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.get $13 + i64.add + local.set $19 + local.get $19 + local.get $5 + i64.le_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $19 + local.set $22 + local.get $16 + local.get $14 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $25 + local.get $25 + i32.load16_u + local.set $26 + block $break|2 + loop $continue|2 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|2 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|2 + end + unreachable + end + local.get $25 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|0 + end + unreachable + end + loop $continue|3 + local.get $13 + i64.const 10 + i64.mul + local.set $13 + local.get $5 + i64.const 10 + i64.mul + local.set $5 + local.get $13 + local.get $7 + i64.extend_i32_s + i64.shr_u + local.set $19 + local.get $19 + local.get $15 + i64.extend_i32_s + i64.or + i64.const 0 + i64.ne + if + local.get $0 + local.get $15 + local.tee $17 + i32.const 1 + i32.add + local.set $15 + local.get $17 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $19 + i32.wrap_i64 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $13 + local.get $9 + i64.and + local.set $13 + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $13 + local.get $5 + i64.lt_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $10 + local.get $16 + i32.const 0 + local.get $14 + i32.sub + i32.const 2 + i32.shl + i32.add + i64.load32_u + i64.mul + local.set $10 + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $13 + local.set $22 + local.get $8 + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $17 + local.get $17 + i32.load16_u + local.set $26 + block $break|4 + loop $continue|4 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|4 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|4 + end + unreachable + end + local.get $17 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|3 + end + unreachable + ) + (func $~lib/util/memory/memcpy (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + loop $continue|0 + local.get $2 + if (result i32) + local.get $1 + i32.const 3 + i32.and + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $0 + i32.const 3 + i32.and + i32.const 0 + i32.eq + if + block $break|1 + loop $continue|1 + local.get $2 + i32.const 16 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 8 + i32.add + i32.load + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 12 + i32.add + i32.load + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|1 + end + unreachable + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.set $0 + local.get $1 + i32.const 4 + i32.add + local.set $1 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load16_u + i32.store16 + local.get $0 + i32.const 2 + i32.add + local.set $0 + local.get $1 + i32.const 2 + i32.add + local.set $1 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + return + end + local.get $2 + i32.const 32 + i32.ge_u + if + block $break|2 + block $case2|2 + block $case1|2 + block $case0|2 + local.get $0 + i32.const 3 + i32.and + local.set $5 + local.get $5 + i32.const 1 + i32.eq + br_if $case0|2 + local.get $5 + i32.const 2 + i32.eq + br_if $case1|2 + local.get $5 + i32.const 3 + i32.eq + br_if $case2|2 + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 3 + i32.sub + local.set $2 + block $break|3 + loop $continue|3 + local.get $2 + i32.const 17 + i32.ge_u + i32.eqz + br_if $break|3 + local.get $1 + i32.const 1 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 5 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 9 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 13 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|3 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + block $break|4 + loop $continue|4 + local.get $2 + i32.const 18 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $1 + i32.const 2 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 6 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 10 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 14 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|4 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + block $break|5 + loop $continue|5 + local.get $2 + i32.const 19 + i32.ge_u + i32.eqz + br_if $break|5 + local.get $1 + i32.const 3 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 7 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 11 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 15 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|5 + end + unreachable + end + br $break|2 + end + end + local.get $2 + i32.const 16 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + ) + (func $~lib/memory/memory.copy (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + local.get $4 + i32.eq + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $4 + local.get $3 + i32.add + local.get $5 + i32.le_u + if (result i32) + i32.const 1 + else + local.get $5 + local.get $3 + i32.add + local.get $4 + i32.le_u + end + if + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $4 + i32.lt_u + if + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|0 + loop $continue|0 + local.get $5 + i32.const 7 + i32.and + i32.eqz + br_if $break|0 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $3 + i32.const 1 + i32.sub + local.set $3 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + br $continue|0 + end + unreachable + end + block $break|1 + loop $continue|1 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $5 + local.get $4 + i64.load + i64.store + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + i32.const 8 + i32.add + local.set $5 + local.get $4 + i32.const 8 + i32.add + local.set $4 + br $continue|1 + end + unreachable + end + end + block $break|2 + loop $continue|2 + local.get $3 + i32.eqz + br_if $break|2 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + local.get $3 + i32.const 1 + i32.sub + local.set $3 + br $continue|2 + end + unreachable + end + else + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|3 + loop $continue|3 + local.get $5 + local.get $3 + i32.add + i32.const 7 + i32.and + i32.eqz + br_if $break|3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + local.get $3 + i32.add + local.get $4 + local.get $3 + i32.add + i64.load + i64.store + br $continue|4 + end + unreachable + end + end + block $break|5 + loop $continue|5 + local.get $3 + i32.eqz + br_if $break|5 + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|5 + end + unreachable + end + end + end + ) + (func $~lib/util/number/prettify (; 20 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $2 + i32.eqz + if + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 2 + i32.add + return + end + local.get $1 + local.get $2 + i32.add + local.set $3 + local.get $1 + local.get $3 + i32.le_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + block $break|0 + local.get $1 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $3 + i32.const 2 + i32.add + return + else + local.get $3 + i32.const 0 + i32.gt_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $4 + local.get $4 + i32.const 2 + i32.add + local.get $4 + i32.const 0 + local.get $2 + i32.sub + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.store16 + local.get $1 + i32.const 1 + i32.add + return + else + i32.const -6 + local.get $3 + i32.lt_s + if (result i32) + local.get $3 + i32.const 0 + i32.le_s + else + i32.const 0 + end + if + i32.const 2 + local.get $3 + i32.sub + local.set $4 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $1 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + i32.const 48 + i32.const 46 + i32.const 16 + i32.shl + i32.or + i32.store + block $break|1 + i32.const 2 + local.set $5 + loop $loop|1 + local.get $5 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|1 + end + unreachable + end + local.get $1 + local.get $4 + i32.add + return + else + local.get $1 + i32.const 1 + i32.eq + if + local.get $0 + i32.const 101 + i32.store16 offset=2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + local.get $5 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $5 + i32.sub + local.set $5 + end + local.get $5 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $7 + local.get $4 + local.set $10 + local.get $5 + local.set $9 + local.get $7 + local.set $8 + local.get $10 + local.get $9 + local.get $8 + call $~lib/util/number/utoa32_lut + local.get $4 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $7 + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + else + local.get $1 + i32.const 1 + i32.shl + local.set $7 + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.const 2 + i32.add + local.get $7 + i32.const 2 + i32.sub + call $~lib/memory/memory.copy + local.get $0 + i32.const 46 + i32.store16 offset=2 + local.get $0 + local.get $7 + i32.add + i32.const 101 + i32.store16 offset=2 + local.get $1 + local.get $0 + local.get $7 + i32.add + i32.const 4 + i32.add + local.set $9 + local.get $3 + i32.const 1 + i32.sub + local.set $8 + local.get $8 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $8 + i32.sub + local.set $8 + end + local.get $8 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $4 + local.get $9 + local.set $11 + local.get $8 + local.set $5 + local.get $4 + local.set $10 + local.get $11 + local.get $5 + local.get $10 + call $~lib/util/number/utoa32_lut + local.get $9 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $4 + i32.add + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + end + unreachable + end + unreachable + end + unreachable + end + unreachable + ) + (func $~lib/util/number/dtoa_core (; 21 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 i64) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i32) + (local $11 i64) + (local $12 i64) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 f64) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i64) + (local $25 i64) + (local $26 i32) + (local $27 i64) + (local $28 i32) + local.get $1 + f64.const 0 + f64.lt + local.set $2 + local.get $2 + if + local.get $1 + f64.neg + local.set $1 + local.get $0 + i32.const 45 + i32.store16 + end + local.get $1 + local.set $5 + local.get $0 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i64.reinterpret_f64 + local.set $6 + local.get $6 + i64.const 9218868437227405312 + i64.and + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.set $7 + local.get $6 + i64.const 4503599627370495 + i64.and + local.set $8 + local.get $7 + i32.const 0 + i32.ne + i64.extend_i32_u + i64.const 52 + i64.shl + local.get $8 + i64.add + local.set $9 + local.get $7 + i32.const 1 + local.get $7 + i32.const 0 + i32.ne + select + i32.const 1023 + i32.const 52 + i32.add + i32.sub + local.set $7 + local.get $9 + local.set $11 + local.get $7 + local.set $10 + local.get $11 + i64.const 1 + i64.shl + i64.const 1 + i64.add + local.set $12 + local.get $10 + i32.const 1 + i32.sub + local.set $13 + local.get $12 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $12 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $12 + local.get $13 + local.get $14 + i32.sub + local.set $13 + i32.const 1 + local.get $11 + i64.const 4503599627370496 + i64.eq + i32.add + local.set $15 + local.get $12 + global.set $~lib/util/number/_frc_plus + local.get $11 + local.get $15 + i64.extend_i32_s + i64.shl + i64.const 1 + i64.sub + local.get $10 + local.get $15 + i32.sub + local.get $13 + i32.sub + i64.extend_i32_s + i64.shl + global.set $~lib/util/number/_frc_minus + local.get $13 + global.set $~lib/util/number/_exp + global.get $~lib/util/number/_exp + local.set $10 + i32.const -61 + local.get $10 + i32.sub + f64.convert_i32_s + f64.const 0.30102999566398114 + f64.mul + f64.const 347 + f64.add + local.set $16 + local.get $16 + i32.trunc_f64_s + local.set $15 + local.get $15 + local.get $15 + f64.convert_i32_s + local.get $16 + f64.ne + i32.add + local.set $15 + local.get $15 + i32.const 3 + i32.shr_s + i32.const 1 + i32.add + local.set $14 + i32.const 348 + local.get $14 + i32.const 3 + i32.shl + i32.sub + global.set $~lib/util/number/_K + i32.const 1392 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_frc_pow + i32.const 1616 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_exp_pow + local.get $9 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $9 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $9 + local.get $7 + local.get $14 + i32.sub + local.set $7 + global.get $~lib/util/number/_frc_pow + local.set $12 + global.get $~lib/util/number/_exp_pow + local.set $15 + local.get $9 + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $24 + local.get $24 + i64.const 2147483647 + i64.add + local.set $24 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $24 + i64.const 32 + i64.shr_u + local.set $24 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $24 + i64.add + local.set $24 + local.get $7 + local.set $10 + local.get $15 + local.set $13 + local.get $10 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $10 + global.get $~lib/util/number/_frc_plus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $23 + local.get $11 + i64.const 4294967295 + i64.and + local.set $22 + local.get $17 + i64.const 32 + i64.shr_u + local.set $21 + local.get $11 + i64.const 32 + i64.shr_u + local.set $20 + local.get $23 + local.get $22 + i64.mul + local.set $19 + local.get $21 + local.get $22 + i64.mul + local.get $19 + i64.const 32 + i64.shr_u + i64.add + local.set $18 + local.get $23 + local.get $20 + i64.mul + local.get $18 + i64.const 4294967295 + i64.and + i64.add + local.set $25 + local.get $25 + i64.const 2147483647 + i64.add + local.set $25 + local.get $18 + i64.const 32 + i64.shr_u + local.set $18 + local.get $25 + i64.const 32 + i64.shr_u + local.set $25 + local.get $21 + local.get $20 + i64.mul + local.get $18 + i64.add + local.get $25 + i64.add + i64.const 1 + i64.sub + local.set $25 + global.get $~lib/util/number/_exp + local.set $26 + local.get $15 + local.set $13 + local.get $26 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $26 + global.get $~lib/util/number/_frc_minus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $27 + local.get $27 + i64.const 2147483647 + i64.add + local.set $27 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $27 + i64.const 32 + i64.shr_u + local.set $27 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $27 + i64.add + i64.const 1 + i64.add + local.set $27 + local.get $25 + local.get $27 + i64.sub + local.set $23 + local.get $4 + local.get $24 + local.get $10 + local.get $25 + local.get $26 + local.get $23 + local.get $3 + call $~lib/util/number/genDigits + local.set $28 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $28 + local.get $2 + i32.sub + global.get $~lib/util/number/_K + call $~lib/util/number/prettify + local.set $28 + local.get $28 + local.get $2 + i32.add + ) + (func $~lib/string/String#substring (; 22 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $6 + local.get $2 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $7 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + i32.const 1 + i32.shl + local.set $8 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + i32.const 1 + i32.shl + local.set $9 + local.get $9 + local.get $8 + i32.sub + local.set $3 + local.get $3 + i32.eqz + if + i32.const 1736 + call $~lib/rt/stub/__retain + return + end + local.get $8 + i32.eqz + if (result i32) + local.get $9 + local.get $0 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + i32.eq + else + i32.const 0 + end + if + local.get $0 + call $~lib/rt/stub/__retain + return + end + local.get $3 + i32.const 1 + call $~lib/rt/stub/__alloc + local.set $10 + local.get $10 + local.get $0 + local.get $8 + i32.add + local.get $3 + call $~lib/memory/memory.copy + local.get $10 + call $~lib/rt/stub/__retain + ) + (func $~lib/rt/stub/__free (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 1752 + i32.const 71 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 16 + i32.sub + local.set $1 + local.get $1 + i32.load offset=4 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 1752 + i32.const 73 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + i32.load + i32.add + global.get $~lib/rt/stub/offset + i32.eq + if + local.get $1 + global.set $~lib/rt/stub/offset + end + ) + (func $~lib/util/number/dtoa (; 24 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + f64.const 0 + f64.eq + if + i32.const 560 + call $~lib/rt/stub/__retain + return + end + local.get $0 + call $~lib/number/isFinite + i32.eqz + if + local.get $0 + call $~lib/number/isNaN + if + i32.const 584 + call $~lib/rt/stub/__retain + return + end + i32.const 608 + i32.const 648 + local.get $0 + f64.const 0 + f64.lt + select + call $~lib/rt/stub/__retain + return + end + i32.const 28 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/stub/__alloc + local.set $1 + local.get $1 + local.get $0 + call $~lib/util/number/dtoa_core + local.set $2 + local.get $2 + i32.const 28 + i32.eq + if + local.get $1 + call $~lib/rt/stub/__retain + return + end + local.get $1 + i32.const 0 + local.get $2 + call $~lib/string/String#substring + local.set $3 + local.get $1 + call $~lib/rt/stub/__free + local.get $3 + ) + (func $~lib/number/F64#toString (; 25 ;) (type $FUNCSIG$idi) (param $0 f64) (param $1 i32) (result i32) + local.get $0 + call $~lib/util/number/dtoa + ) + (func $~lib/number/Bool#toString (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + local.get $0 + if (result i32) + i32.const 1920 + call $~lib/rt/stub/__retain + local.tee $1 + else + i32.const 1944 + call $~lib/rt/stub/__retain + local.tee $2 + end + call $~lib/rt/stub/__retain + ) + (func $~lib/number/isNaN (; 27 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + local.get $0 + local.get $0 + f32.ne + ) + (func $~lib/number/F32.isSafeInteger (; 28 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + local.get $0 + f32.abs + global.get $~lib/builtins/f32.MAX_SAFE_INTEGER + f32.le + if (result i32) + local.get $0 + f32.trunc + local.get $0 + f32.eq + else + i32.const 0 + end + ) + (func $~lib/number/isFinite (; 29 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + local.get $0 + local.get $0 + f32.sub + f32.const 0 + f32.eq + ) + (func $~lib/number/F32.isInteger (; 30 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + local.get $0 + call $~lib/number/isFinite + if (result i32) + local.get $0 + f32.trunc + local.get $0 + f32.eq + else + i32.const 0 + end + ) + (func $~lib/number/F64.isSafeInteger (; 31 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + f64.abs + global.get $~lib/builtins/f64.MAX_SAFE_INTEGER + f64.le + if (result i32) + local.get $0 + f64.trunc + local.get $0 + f64.eq + else + i32.const 0 + end + ) + (func $~lib/number/F64.isInteger (; 32 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + call $~lib/number/isFinite + if (result i32) + local.get $0 + f64.trunc + local.get $0 + f64.eq + else + i32.const 0 + end + ) + (func $start:number (; 33 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + global.get $~lib/heap/__heap_base + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + global.set $~lib/rt/stub/startOffset + global.get $~lib/rt/stub/startOffset + global.set $~lib/rt/stub/offset + global.get $number/a + call $~lib/number/I32#toString + local.tee $0 + i32.const 496 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 5 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2 + i32.const 0 + call $~lib/number/F64#toString + local.tee $1 + i32.const 1800 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 7 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + call $~lib/number/I32#toString + local.tee $2 + i32.const 1824 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 8 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const -5 + call $~lib/number/I32#toString + local.tee $3 + i32.const 1848 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 10 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4 + call $~lib/number/I32#toString + local.tee $4 + i32.const 1872 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 11 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $number/a + i32.const 1 + i32.add + global.set $number/a + global.get $number/a + call $~lib/number/I32#toString + local.tee $5 + i32.const 1896 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 12 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $number/a + i32.const 1 + i32.sub + global.set $number/a + global.get $number/a + call $~lib/number/I32#toString + local.tee $6 + i32.const 496 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 13 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + call $~lib/number/Bool#toString + local.tee $7 + i32.const 1920 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 14 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/number/Bool#toString + local.tee $8 + i32.const 1944 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 15 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $number/a + local.tee $9 + i32.const 1 + i32.add + global.set $number/a + local.get $9 + call $~lib/number/I32#toString + local.tee $9 + i32.const 496 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 18 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $number/a + local.tee $10 + i32.const 1 + i32.sub + global.set $number/a + local.get $10 + call $~lib/number/I32#toString + local.tee $10 + i32.const 1896 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 19 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 23 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -16777216 + call $~lib/number/F32.isSafeInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 25 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -16777215 + call $~lib/number/F32.isSafeInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 26 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + call $~lib/number/F32.isSafeInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 27 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + call $~lib/number/F32.isSafeInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 28 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + call $~lib/number/F32.isSafeInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 29 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + call $~lib/number/F32.isSafeInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 30 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 16777215 + call $~lib/number/F32.isSafeInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 31 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 16777216 + call $~lib/number/F32.isSafeInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 32 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + call $~lib/number/F32.isSafeInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 33 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + call $~lib/number/F32.isInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 34 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + call $~lib/number/F32.isInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 35 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + call $~lib/number/F32.isInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 36 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + call $~lib/number/F32.isInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 37 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1920928955078125e-07 + call $~lib/number/F32.isInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 38 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + call $~lib/number/F32.isInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 39 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + call $~lib/number/F32.isInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 40 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -16777215 + call $~lib/number/F32.isInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 41 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 16777215 + call $~lib/number/F32.isInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 42 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + call $~lib/number/F32.isInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 43 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.5 + call $~lib/number/F32.isInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 44 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 46 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -9007199254740992 + call $~lib/number/F64.isSafeInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 48 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -9007199254740991 + call $~lib/number/F64.isSafeInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 49 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + call $~lib/number/F64.isSafeInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 50 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + call $~lib/number/F64.isSafeInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 51 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + call $~lib/number/F64.isSafeInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 52 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + call $~lib/number/F64.isSafeInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 53 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9007199254740991 + call $~lib/number/F64.isSafeInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 54 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9007199254740992 + call $~lib/number/F64.isSafeInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 55 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + call $~lib/number/F64.isSafeInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 56 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + call $~lib/number/F64.isInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 57 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + call $~lib/number/F64.isInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 58 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + call $~lib/number/F64.isInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 59 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + call $~lib/number/F64.isInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 60 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.220446049250313e-16 + call $~lib/number/F64.isInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 61 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + call $~lib/number/F64.isInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 62 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + call $~lib/number/F64.isInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 63 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -9007199254740991 + call $~lib/number/F64.isInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 64 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9007199254740991 + call $~lib/number/F64.isInteger + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 65 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + call $~lib/number/F64.isInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 66 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.5 + call $~lib/number/F64.isInteger + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 67 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + call $~lib/rt/stub/__release + local.get $3 + call $~lib/rt/stub/__release + local.get $4 + call $~lib/rt/stub/__release + local.get $5 + call $~lib/rt/stub/__release + local.get $6 + call $~lib/rt/stub/__release + local.get $7 + call $~lib/rt/stub/__release + local.get $8 + call $~lib/rt/stub/__release + local.get $9 + call $~lib/rt/stub/__release + local.get $10 + call $~lib/rt/stub/__release + ) + (func $start (; 34 ;) (type $FUNCSIG$v) + call $start:number + ) + (func $null (; 35 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index 4ae0f1c841..d7ea06f1cc 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -313,7 +313,7 @@ if i32.const 48 i32.const 104 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/resolve-access.untouched.wat b/tests/compiler/resolve-access.untouched.wat index e69de29bb2..2a3adb026a 100644 --- a/tests/compiler/resolve-access.untouched.wat +++ b/tests/compiler/resolve-access.untouched.wat @@ -0,0 +1,2084 @@ +(module + (type $FUNCSIG$i (func (result i32))) + (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (type $FUNCSIG$jii (func (param i32 i32) (result i64))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$ij (func (param i64) (result i32))) + (type $FUNCSIG$viji (func (param i32 i64 i32))) + (type $FUNCSIG$v (func)) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (memory $0 1) + (data (i32.const 8) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\00\00\00\00") + (data (i32.const 32) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") + (data (i32.const 88) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 136) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") + (data (i32.const 160) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") + (data (i32.const 576) "\10\00\00\00\01\00\00\00\05\00\00\00\10\00\00\00\b0\00\00\00\b0\00\00\00\90\01\00\00d\00\00\00") + (table $0 1 funcref) + (elem (i32.const 0) $null) + (global $~lib/rt/stub/startOffset (mut i32) (i32.const 0)) + (global $~lib/rt/stub/offset (mut i32) (i32.const 0)) + (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) + (global $~lib/builtins/u32.MAX_VALUE i32 (i32.const -1)) + (global $~lib/heap/__heap_base i32 (i32.const 608)) + (export "memory" (memory $0)) + (export "arrayAccess" (func $resolve-access/arrayAccess)) + (export "fieldAccess" (func $resolve-access/fieldAccess)) + (export "propertyAccess" (func $resolve-access/propertyAccess)) + (start $start) + (func $~lib/rt/stub/maybeGrowMemory (; 1 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + memory.size + local.set $1 + local.get $1 + i32.const 16 + i32.shl + local.set $2 + local.get $0 + local.get $2 + i32.gt_u + if + local.get $0 + local.get $2 + i32.sub + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $3 + local.get $1 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.set $4 + local.get $4 + memory.grow + i32.const 0 + i32.lt_s + if + local.get $3 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + end + local.get $0 + global.set $~lib/rt/stub/offset + ) + (func $~lib/rt/stub/__alloc (; 2 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.const 1073741808 + i32.gt_u + if + unreachable + end + global.get $~lib/rt/stub/offset + i32.const 16 + i32.add + local.set $2 + local.get $0 + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.tee $3 + i32.const 16 + local.tee $4 + local.get $3 + local.get $4 + i32.gt_u + select + local.set $5 + local.get $2 + local.get $5 + i32.add + call $~lib/rt/stub/maybeGrowMemory + local.get $2 + i32.const 16 + i32.sub + local.set $6 + local.get $6 + local.get $5 + i32.store + local.get $6 + i32.const -1 + i32.store offset=4 + local.get $6 + local.get $1 + i32.store offset=8 + local.get $6 + local.get $0 + i32.store offset=12 + local.get $2 + ) + (func $~lib/rt/stub/__retain (; 3 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + ) + (func $~lib/util/memory/memcpy (; 4 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + loop $continue|0 + local.get $2 + if (result i32) + local.get $1 + i32.const 3 + i32.and + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $0 + i32.const 3 + i32.and + i32.const 0 + i32.eq + if + block $break|1 + loop $continue|1 + local.get $2 + i32.const 16 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 8 + i32.add + i32.load + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 12 + i32.add + i32.load + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|1 + end + unreachable + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.set $0 + local.get $1 + i32.const 4 + i32.add + local.set $1 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load16_u + i32.store16 + local.get $0 + i32.const 2 + i32.add + local.set $0 + local.get $1 + i32.const 2 + i32.add + local.set $1 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + return + end + local.get $2 + i32.const 32 + i32.ge_u + if + block $break|2 + block $case2|2 + block $case1|2 + block $case0|2 + local.get $0 + i32.const 3 + i32.and + local.set $5 + local.get $5 + i32.const 1 + i32.eq + br_if $case0|2 + local.get $5 + i32.const 2 + i32.eq + br_if $case1|2 + local.get $5 + i32.const 3 + i32.eq + br_if $case2|2 + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 3 + i32.sub + local.set $2 + block $break|3 + loop $continue|3 + local.get $2 + i32.const 17 + i32.ge_u + i32.eqz + br_if $break|3 + local.get $1 + i32.const 1 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 5 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 9 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 13 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|3 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + block $break|4 + loop $continue|4 + local.get $2 + i32.const 18 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $1 + i32.const 2 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 6 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 10 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 14 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|4 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + block $break|5 + loop $continue|5 + local.get $2 + i32.const 19 + i32.ge_u + i32.eqz + br_if $break|5 + local.get $1 + i32.const 3 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 7 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 11 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 15 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|5 + end + unreachable + end + br $break|2 + end + end + local.get $2 + i32.const 16 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + ) + (func $~lib/memory/memory.copy (; 5 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + local.get $4 + i32.eq + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $4 + local.get $3 + i32.add + local.get $5 + i32.le_u + if (result i32) + i32.const 1 + else + local.get $5 + local.get $3 + i32.add + local.get $4 + i32.le_u + end + if + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $4 + i32.lt_u + if + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|0 + loop $continue|0 + local.get $5 + i32.const 7 + i32.and + i32.eqz + br_if $break|0 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $3 + i32.const 1 + i32.sub + local.set $3 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + br $continue|0 + end + unreachable + end + block $break|1 + loop $continue|1 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $5 + local.get $4 + i64.load + i64.store + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + i32.const 8 + i32.add + local.set $5 + local.get $4 + i32.const 8 + i32.add + local.set $4 + br $continue|1 + end + unreachable + end + end + block $break|2 + loop $continue|2 + local.get $3 + i32.eqz + br_if $break|2 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + local.get $3 + i32.const 1 + i32.sub + local.set $3 + br $continue|2 + end + unreachable + end + else + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|3 + loop $continue|3 + local.get $5 + local.get $3 + i32.add + i32.const 7 + i32.and + i32.eqz + br_if $break|3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + local.get $3 + i32.add + local.get $4 + local.get $3 + i32.add + i64.load + i64.store + br $continue|4 + end + unreachable + end + end + block $break|5 + loop $continue|5 + local.get $3 + i32.eqz + br_if $break|5 + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|5 + end + unreachable + end + end + end + ) + (func $~lib/rt/__allocArray (; 6 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + i32.const 16 + local.get $2 + call $~lib/rt/stub/__alloc + local.set $4 + local.get $0 + local.get $1 + i32.shl + local.set $5 + local.get $5 + i32.const 0 + call $~lib/rt/stub/__alloc + local.set $6 + local.get $4 + local.get $6 + call $~lib/rt/stub/__retain + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $4 + local.get $5 + i32.store offset=8 + local.get $4 + local.get $0 + i32.store offset=12 + local.get $3 + if + local.get $6 + local.get $3 + local.get $5 + call $~lib/memory/memory.copy + end + local.get $4 + ) + (func $~lib/array/Array#__unchecked_get (; 7 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + i64.load + ) + (func $~lib/array/Array#__get (; 8 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + (local $2 i64) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 48 + i32.const 104 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $~lib/util/number/decimalCount32 (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + i32.const 100000 + i32.lt_u + if + local.get $0 + i32.const 100 + i32.lt_u + if + i32.const 1 + i32.const 2 + local.get $0 + i32.const 10 + i32.lt_u + select + return + else + i32.const 4 + i32.const 5 + local.get $0 + i32.const 10000 + i32.lt_u + select + local.set $1 + i32.const 3 + local.get $1 + local.get $0 + i32.const 1000 + i32.lt_u + select + return + end + unreachable + else + local.get $0 + i32.const 10000000 + i32.lt_u + if + i32.const 6 + i32.const 7 + local.get $0 + i32.const 1000000 + i32.lt_u + select + return + else + i32.const 9 + i32.const 10 + local.get $0 + i32.const 1000000000 + i32.lt_u + select + local.set $1 + i32.const 8 + local.get $1 + local.get $0 + i32.const 100000000 + i32.lt_u + select + return + end + unreachable + end + unreachable + ) + (func $~lib/util/number/utoa32_lut (; 10 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + i32.const 592 + i32.load offset=4 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i32.const 10000 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $1 + i32.const 10000 + i32.div_u + local.set $4 + local.get $1 + i32.const 10000 + i32.rem_u + local.set $5 + local.get $4 + local.set $1 + local.get $5 + i32.const 100 + i32.div_u + local.set $6 + local.get $5 + i32.const 100 + i32.rem_u + local.set $7 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $8 + local.get $3 + local.get $7 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $9 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $8 + local.get $9 + i64.const 32 + i64.shl + i64.or + i64.store + br $continue|0 + end + unreachable + end + local.get $1 + i32.const 100 + i32.ge_u + if + local.get $1 + i32.const 100 + i32.div_u + local.set $7 + local.get $1 + i32.const 100 + i32.rem_u + local.set $6 + local.get $7 + local.set $1 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + end + local.get $1 + i32.const 10 + i32.ge_u + if + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + else + local.get $2 + i32.const 1 + i32.sub + local.set $2 + i32.const 48 + local.get $1 + i32.add + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store16 + end + ) + (func $~lib/util/number/decimalCount64 (; 11 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (local $1 i32) + local.get $0 + i64.const 1000000000000000 + i64.lt_u + if + local.get $0 + i64.const 1000000000000 + i64.lt_u + if + i32.const 11 + i32.const 12 + local.get $0 + i64.const 100000000000 + i64.lt_u + select + local.set $1 + i32.const 10 + local.get $1 + local.get $0 + i64.const 10000000000 + i64.lt_u + select + return + else + i32.const 14 + i32.const 15 + local.get $0 + i64.const 100000000000000 + i64.lt_u + select + local.set $1 + i32.const 13 + local.get $1 + local.get $0 + i64.const 10000000000000 + i64.lt_u + select + return + end + unreachable + else + local.get $0 + i64.const 100000000000000000 + i64.lt_u + if + i32.const 16 + i32.const 17 + local.get $0 + i64.const 10000000000000000 + i64.lt_u + select + return + else + i32.const 19 + i32.const 20 + local.get $0 + i64.const -8446744073709551616 + i64.lt_u + select + local.set $1 + i32.const 18 + local.get $1 + local.get $0 + i64.const 1000000000000000000 + i64.lt_u + select + return + end + unreachable + end + unreachable + ) + (func $~lib/util/number/utoa64_lut (; 12 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) + (local $3 i32) + (local $4 i64) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i64) + (local $13 i64) + i32.const 592 + i32.load offset=4 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i64.const 100000000 + i64.ge_u + i32.eqz + br_if $break|0 + local.get $1 + i64.const 100000000 + i64.div_u + local.set $4 + local.get $1 + local.get $4 + i64.const 100000000 + i64.mul + i64.sub + i32.wrap_i64 + local.set $5 + local.get $4 + local.set $1 + local.get $5 + i32.const 10000 + i32.div_u + local.set $6 + local.get $5 + i32.const 10000 + i32.rem_u + local.set $7 + local.get $6 + i32.const 100 + i32.div_u + local.set $8 + local.get $6 + i32.const 100 + i32.rem_u + local.set $9 + local.get $7 + i32.const 100 + i32.div_u + local.set $10 + local.get $7 + i32.const 100 + i32.rem_u + local.set $11 + local.get $3 + local.get $10 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $12 + local.get $3 + local.get $11 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $13 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $12 + local.get $13 + i64.const 32 + i64.shl + i64.or + i64.store + local.get $3 + local.get $8 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $12 + local.get $3 + local.get $9 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $13 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $12 + local.get $13 + i64.const 32 + i64.shl + i64.or + i64.store + br $continue|0 + end + unreachable + end + local.get $0 + local.get $1 + i32.wrap_i64 + local.get $2 + call $~lib/util/number/utoa32_lut + ) + (func $~lib/util/number/utoa64 (; 13 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i64) + local.get $0 + i64.eqz + if + i32.const 152 + call $~lib/rt/stub/__retain + return + end + local.get $0 + i64.const 4294967295 + i64.le_u + if + local.get $0 + i32.wrap_i64 + local.set $2 + local.get $2 + call $~lib/util/number/decimalCount32 + local.set $3 + local.get $3 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/stub/__alloc + local.set $1 + local.get $1 + local.set $6 + local.get $2 + local.set $5 + local.get $3 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + else + local.get $0 + call $~lib/util/number/decimalCount64 + local.set $3 + local.get $3 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/stub/__alloc + local.set $1 + local.get $1 + local.set $5 + local.get $0 + local.set $7 + local.get $3 + local.set $4 + local.get $5 + local.get $7 + local.get $4 + call $~lib/util/number/utoa64_lut + end + local.get $1 + call $~lib/rt/stub/__retain + ) + (func $~lib/util/number/itoa (; 14 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + local.get $0 + call $~lib/util/number/utoa64 + return + ) + (func $~lib/number/U64#toString (; 15 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + local.get $0 + call $~lib/util/number/itoa + ) + (func $~lib/rt/stub/__release (; 16 ;) (type $FUNCSIG$vi) (param $0 i32) + nop + ) + (func $resolve-access/arrayAccess (; 17 ;) (type $FUNCSIG$i) (result i32) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 1 + i32.const 3 + i32.const 3 + i32.const 24 + call $~lib/rt/__allocArray + call $~lib/rt/stub/__retain + local.tee $1 + call $~lib/rt/stub/__retain + local.set $0 + local.get $0 + i32.const 0 + call $~lib/array/Array#__get + call $~lib/number/U64#toString + local.set $2 + local.get $1 + call $~lib/rt/stub/__release + local.get $0 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $resolve-access/Container#constructor (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.eqz + if + i32.const 8 + i32.const 6 + call $~lib/rt/stub/__alloc + call $~lib/rt/stub/__retain + local.set $0 + end + local.get $0 + i64.const 0 + i64.store + local.get $0 + ) + (func $resolve-access/fieldAccess (; 19 ;) (type $FUNCSIG$i) (result i32) + (local $0 i32) + (local $1 i32) + i32.const 0 + call $resolve-access/Container#constructor + local.set $0 + local.get $0 + i64.const 1 + i64.store + local.get $0 + i64.load + call $~lib/number/U64#toString + local.set $1 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + ) + (func $resolve-access/Container#toU32 (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i64.load + i32.wrap_i64 + ) + (func $~lib/util/number/utoa32 (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.eqz + if + i32.const 152 + call $~lib/rt/stub/__retain + return + end + local.get $0 + call $~lib/util/number/decimalCount32 + local.set $1 + local.get $1 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/stub/__alloc + local.set $2 + local.get $2 + local.set $5 + local.get $0 + local.set $4 + local.get $1 + local.set $3 + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/number/utoa32_lut + local.get $2 + call $~lib/rt/stub/__retain + ) + (func $~lib/util/number/itoa (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/utoa32 + return + ) + (func $~lib/number/U32#toString (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa + ) + (func $resolve-access/propertyAccess (; 24 ;) (type $FUNCSIG$i) (result i32) + (local $0 i32) + (local $1 i32) + i32.const 0 + call $resolve-access/Container#constructor + local.set $0 + local.get $0 + i64.const 1 + i64.store + local.get $0 + call $resolve-access/Container#toU32 + call $~lib/number/U32#toString + local.set $1 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + ) + (func $start (; 25 ;) (type $FUNCSIG$v) + global.get $~lib/heap/__heap_base + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + global.set $~lib/rt/stub/startOffset + global.get $~lib/rt/stub/startOffset + global.set $~lib/rt/stub/offset + ) + (func $null (; 26 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/resolve-binary.untouched.wat b/tests/compiler/resolve-binary.untouched.wat index e69de29bb2..b3292d57da 100644 --- a/tests/compiler/resolve-binary.untouched.wat +++ b/tests/compiler/resolve-binary.untouched.wat @@ -0,0 +1,5764 @@ +(module + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (type $FUNCSIG$ddd (func (param f64 f64) (result f64))) + (type $FUNCSIG$ddi (func (param f64 i32) (result f64))) + (type $FUNCSIG$idi (func (param f64 i32) (result i32))) + (type $FUNCSIG$id (func (param f64) (result i32))) + (type $FUNCSIG$iid (func (param i32 f64) (result i32))) + (type $FUNCSIG$jii (func (param i32 i32) (result i64))) + (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) + (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) + (type $FUNCSIG$v (func)) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (memory $0 1) + (data (i32.const 8) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00t\00r\00u\00e\00") + (data (i32.const 32) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00f\00a\00l\00s\00e\00") + (data (i32.const 64) "\"\00\00\00\01\00\00\00\01\00\00\00\"\00\00\00r\00e\00s\00o\00l\00v\00e\00-\00b\00i\00n\00a\00r\00y\00.\00t\00s\00") + (data (i32.const 120) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00a\00") + (data (i32.const 144) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") + (data (i32.const 168) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") + (data (i32.const 584) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\b8\00\00\00\b8\00\00\00\90\01\00\00d\00\00\00") + (data (i32.const 616) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\001\00") + (data (i32.const 640) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\002\00") + (data (i32.const 664) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") + (data (i32.const 688) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") + (data (i32.const 712) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 752) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 784) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8 (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa32 + return + ) + (func $~lib/number/I32#toString (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa + ) + (func $~lib/math/NativeMath.scalbn (; 14 ;) (type $FUNCSIG$ddi) (param $0 f64) (param $1 i32) (result f64) + (local $2 f64) + (local $3 i32) + (local $4 i32) + local.get $0 + local.set $2 + local.get $1 + i32.const 1023 + i32.gt_s + if + local.get $2 + f64.const 8988465674311579538646525e283 + f64.mul + local.set $2 + local.get $1 + i32.const 1023 + i32.sub + local.set $1 + local.get $1 + i32.const 1023 + i32.gt_s + if + local.get $2 + f64.const 8988465674311579538646525e283 + f64.mul + local.set $2 + local.get $1 + i32.const 1023 + i32.sub + local.tee $3 + i32.const 1023 + local.tee $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.set $1 + end + else + local.get $1 + i32.const -1022 + i32.lt_s + if + local.get $2 + f64.const 2.2250738585072014e-308 + f64.const 9007199254740992 + f64.mul + f64.mul + local.set $2 + local.get $1 + i32.const 1022 + i32.const 53 + i32.sub + i32.add + local.set $1 + local.get $1 + i32.const -1022 + i32.lt_s + if + local.get $2 + f64.const 2.2250738585072014e-308 + f64.const 9007199254740992 + f64.mul + f64.mul + local.set $2 + local.get $1 + i32.const 1022 + i32.add + i32.const 53 + i32.sub + local.tee $3 + i32.const -1022 + local.tee $4 + local.get $3 + local.get $4 + i32.gt_s + select + local.set $1 + end + end + end + local.get $2 + i64.const 1023 + local.get $1 + i64.extend_i32_s + i64.add + i64.const 52 + i64.shl + f64.reinterpret_i64 + f64.mul + ) + (func $~lib/math/NativeMath.pow (; 15 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (local $2 i64) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 f64) + (local $16 f64) + (local $17 f64) + (local $18 f64) + (local $19 f64) + (local $20 f64) + (local $21 f64) + (local $22 f64) + (local $23 f64) + (local $24 f64) + (local $25 f64) + (local $26 f64) + (local $27 f64) + (local $28 i32) + (local $29 i32) + (local $30 f64) + (local $31 f64) + (local $32 f64) + (local $33 f64) + (local $34 f64) + (local $35 f64) + (local $36 f64) + (local $37 f64) + (local $38 f64) + (local $39 f64) + (local $40 f64) + (local $41 i32) + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $3 + local.get $2 + i32.wrap_i64 + local.set $4 + local.get $1 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $5 + local.get $2 + i32.wrap_i64 + local.set $6 + local.get $3 + i32.const 2147483647 + i32.and + local.set $7 + local.get $5 + i32.const 2147483647 + i32.and + local.set $8 + local.get $8 + local.get $6 + i32.or + i32.const 0 + i32.eq + if + f64.const 1 + return + end + local.get $7 + i32.const 2146435072 + i32.gt_s + if (result i32) + i32.const 1 + else + local.get $7 + i32.const 2146435072 + i32.eq + if (result i32) + local.get $4 + i32.const 0 + i32.ne + else + i32.const 0 + end + end + if (result i32) + i32.const 1 + else + local.get $8 + i32.const 2146435072 + i32.gt_s + end + if (result i32) + i32.const 1 + else + local.get $8 + i32.const 2146435072 + i32.eq + if (result i32) + local.get $6 + i32.const 0 + i32.ne + else + i32.const 0 + end + end + if + local.get $0 + local.get $1 + f64.add + return + end + i32.const 0 + local.set $9 + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $8 + i32.const 1128267776 + i32.ge_s + if + i32.const 2 + local.set $9 + else + local.get $8 + i32.const 1072693248 + i32.ge_s + if + local.get $8 + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + local.set $10 + local.get $10 + i32.const 20 + i32.gt_s + local.set $11 + i32.const 52 + i32.const 20 + local.get $11 + select + local.get $10 + i32.sub + local.set $12 + local.get $6 + local.get $8 + local.get $11 + select + local.set $13 + local.get $13 + local.get $12 + i32.shr_s + local.set $14 + local.get $14 + local.get $12 + i32.shl + local.get $13 + i32.eq + if + i32.const 2 + local.get $14 + i32.const 1 + i32.and + i32.sub + local.set $9 + end + end + end + end + local.get $6 + i32.const 0 + i32.eq + if + local.get $8 + i32.const 2146435072 + i32.eq + if + local.get $7 + i32.const 1072693248 + i32.sub + local.get $4 + i32.or + i32.const 0 + i32.eq + if + f64.const nan:0x8000000000000 + return + else + local.get $7 + i32.const 1072693248 + i32.ge_s + if + local.get $5 + i32.const 0 + i32.ge_s + if (result f64) + local.get $1 + else + f64.const 0 + end + return + else + local.get $5 + i32.const 0 + i32.ge_s + if (result f64) + f64.const 0 + else + local.get $1 + f64.neg + end + return + end + unreachable + end + unreachable + end + local.get $8 + i32.const 1072693248 + i32.eq + if + local.get $5 + i32.const 0 + i32.ge_s + if + local.get $0 + return + end + f64.const 1 + local.get $0 + f64.div + return + end + local.get $5 + i32.const 1073741824 + i32.eq + if + local.get $0 + local.get $0 + f64.mul + return + end + local.get $5 + i32.const 1071644672 + i32.eq + if + local.get $3 + i32.const 0 + i32.ge_s + if + local.get $0 + f64.sqrt + return + end + end + end + local.get $0 + f64.abs + local.set $15 + local.get $4 + i32.const 0 + i32.eq + if + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $7 + i32.const 2146435072 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $7 + i32.const 1072693248 + i32.eq + end + if + local.get $15 + local.set $16 + local.get $5 + i32.const 0 + i32.lt_s + if + f64.const 1 + local.get $16 + f64.div + local.set $16 + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $7 + i32.const 1072693248 + i32.sub + local.get $9 + i32.or + i32.const 0 + i32.eq + if + local.get $16 + local.get $16 + f64.sub + local.set $17 + local.get $17 + local.get $17 + f64.div + local.set $16 + else + local.get $9 + i32.const 1 + i32.eq + if + local.get $16 + f64.neg + local.set $16 + end + end + end + local.get $16 + return + end + end + f64.const 1 + local.set $18 + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $9 + i32.const 0 + i32.eq + if + local.get $0 + local.get $0 + f64.sub + local.set $17 + local.get $17 + local.get $17 + f64.div + return + end + local.get $9 + i32.const 1 + i32.eq + if + f64.const -1 + local.set $18 + end + end + local.get $8 + i32.const 1105199104 + i32.gt_s + if + local.get $8 + i32.const 1139802112 + i32.gt_s + if + local.get $7 + i32.const 1072693247 + i32.le_s + if + local.get $5 + i32.const 0 + i32.lt_s + if (result f64) + f64.const 1.e+300 + f64.const 1.e+300 + f64.mul + else + f64.const 1e-300 + f64.const 1e-300 + f64.mul + end + return + end + local.get $7 + i32.const 1072693248 + i32.ge_s + if + local.get $5 + i32.const 0 + i32.gt_s + if (result f64) + f64.const 1.e+300 + f64.const 1.e+300 + f64.mul + else + f64.const 1e-300 + f64.const 1e-300 + f64.mul + end + return + end + end + local.get $7 + i32.const 1072693247 + i32.lt_s + if + local.get $5 + i32.const 0 + i32.lt_s + if (result f64) + local.get $18 + f64.const 1.e+300 + f64.mul + f64.const 1.e+300 + f64.mul + else + local.get $18 + f64.const 1e-300 + f64.mul + f64.const 1e-300 + f64.mul + end + return + end + local.get $7 + i32.const 1072693248 + i32.gt_s + if + local.get $5 + i32.const 0 + i32.gt_s + if (result f64) + local.get $18 + f64.const 1.e+300 + f64.mul + f64.const 1.e+300 + f64.mul + else + local.get $18 + f64.const 1e-300 + f64.mul + f64.const 1e-300 + f64.mul + end + return + end + local.get $15 + f64.const 1 + f64.sub + local.set $24 + local.get $24 + local.get $24 + f64.mul + f64.const 0.5 + local.get $24 + f64.const 0.3333333333333333 + local.get $24 + f64.const 0.25 + f64.mul + f64.sub + f64.mul + f64.sub + f64.mul + local.set $27 + f64.const 1.4426950216293335 + local.get $24 + f64.mul + local.set $25 + local.get $24 + f64.const 1.9259629911266175e-08 + f64.mul + local.get $27 + f64.const 1.4426950408889634 + f64.mul + f64.sub + local.set $26 + local.get $25 + local.get $26 + f64.add + local.set $19 + local.get $19 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $19 + local.get $26 + local.get $19 + local.get $25 + f64.sub + f64.sub + local.set $20 + else + i32.const 0 + local.set $29 + local.get $7 + i32.const 1048576 + i32.lt_s + if + local.get $15 + f64.const 9007199254740992 + f64.mul + local.set $15 + local.get $29 + i32.const 53 + i32.sub + local.set $29 + local.get $15 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $7 + end + local.get $29 + local.get $7 + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + i32.add + local.set $29 + local.get $7 + i32.const 1048575 + i32.and + local.set $28 + local.get $28 + i32.const 1072693248 + i32.or + local.set $7 + local.get $28 + i32.const 235662 + i32.le_s + if + i32.const 0 + local.set $10 + else + local.get $28 + i32.const 767610 + i32.lt_s + if + i32.const 1 + local.set $10 + else + i32.const 0 + local.set $10 + local.get $29 + i32.const 1 + i32.add + local.set $29 + local.get $7 + i32.const 1048576 + i32.sub + local.set $7 + end + end + local.get $15 + i64.reinterpret_f64 + i64.const 4294967295 + i64.and + local.get $7 + i64.extend_i32_s + i64.const 32 + i64.shl + i64.or + f64.reinterpret_i64 + local.set $15 + f64.const 1.5 + f64.const 1 + local.get $10 + select + local.set $35 + local.get $15 + local.get $35 + f64.sub + local.set $25 + f64.const 1 + local.get $15 + local.get $35 + f64.add + f64.div + local.set $26 + local.get $25 + local.get $26 + f64.mul + local.set $17 + local.get $17 + local.set $31 + local.get $31 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $31 + local.get $7 + i32.const 1 + i32.shr_s + i32.const 536870912 + i32.or + i32.const 524288 + i32.add + local.get $10 + i32.const 18 + i32.shl + i32.add + i64.extend_i32_s + i64.const 32 + i64.shl + f64.reinterpret_i64 + local.set $33 + local.get $15 + local.get $33 + local.get $35 + f64.sub + f64.sub + local.set $34 + local.get $26 + local.get $25 + local.get $31 + local.get $33 + f64.mul + f64.sub + local.get $31 + local.get $34 + f64.mul + f64.sub + f64.mul + local.set $32 + local.get $17 + local.get $17 + f64.mul + local.set $30 + local.get $30 + local.get $30 + f64.mul + f64.const 0.5999999999999946 + local.get $30 + f64.const 0.4285714285785502 + local.get $30 + f64.const 0.33333332981837743 + local.get $30 + f64.const 0.272728123808534 + local.get $30 + f64.const 0.23066074577556175 + local.get $30 + f64.const 0.20697501780033842 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $23 + local.get $23 + local.get $32 + local.get $31 + local.get $17 + f64.add + f64.mul + f64.add + local.set $23 + local.get $31 + local.get $31 + f64.mul + local.set $30 + f64.const 3 + local.get $30 + f64.add + local.get $23 + f64.add + local.set $33 + local.get $33 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $33 + local.get $23 + local.get $33 + f64.const 3 + f64.sub + local.get $30 + f64.sub + f64.sub + local.set $34 + local.get $31 + local.get $33 + f64.mul + local.set $25 + local.get $32 + local.get $33 + f64.mul + local.get $34 + local.get $17 + f64.mul + f64.add + local.set $26 + local.get $25 + local.get $26 + f64.add + local.set $21 + local.get $21 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $21 + local.get $26 + local.get $21 + local.get $25 + f64.sub + f64.sub + local.set $22 + f64.const 0.9617967009544373 + local.get $21 + f64.mul + local.set $36 + f64.const 1.350039202129749e-08 + f64.const 0 + local.get $10 + select + local.set $37 + f64.const -7.028461650952758e-09 + local.get $21 + f64.mul + local.get $22 + f64.const 0.9617966939259756 + f64.mul + f64.add + local.get $37 + f64.add + local.set $38 + local.get $29 + f64.convert_i32_s + local.set $24 + f64.const 0.5849624872207642 + f64.const 0 + local.get $10 + select + local.set $39 + local.get $36 + local.get $38 + f64.add + local.get $39 + f64.add + local.get $24 + f64.add + local.set $19 + local.get $19 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $19 + local.get $38 + local.get $19 + local.get $24 + f64.sub + local.get $39 + f64.sub + local.get $36 + f64.sub + f64.sub + local.set $20 + end + local.get $1 + local.set $40 + local.get $40 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $40 + local.get $1 + local.get $40 + f64.sub + local.get $19 + f64.mul + local.get $1 + local.get $20 + f64.mul + f64.add + local.set $22 + local.get $40 + local.get $19 + f64.mul + local.set $21 + local.get $22 + local.get $21 + f64.add + local.set $16 + local.get $16 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $28 + local.get $2 + i32.wrap_i64 + local.set $41 + local.get $28 + i32.const 1083179008 + i32.ge_s + if + local.get $28 + i32.const 1083179008 + i32.sub + local.get $41 + i32.or + i32.const 0 + i32.ne + if + local.get $18 + f64.const 1.e+300 + f64.mul + f64.const 1.e+300 + f64.mul + return + end + local.get $22 + f64.const 8.008566259537294e-17 + f64.add + local.get $16 + local.get $21 + f64.sub + f64.gt + if + local.get $18 + f64.const 1.e+300 + f64.mul + f64.const 1.e+300 + f64.mul + return + end + else + local.get $28 + i32.const 2147483647 + i32.and + i32.const 1083231232 + i32.ge_s + if + local.get $28 + i32.const -1064252416 + i32.sub + local.get $41 + i32.or + i32.const 0 + i32.ne + if + local.get $18 + f64.const 1e-300 + f64.mul + f64.const 1e-300 + f64.mul + return + end + local.get $22 + local.get $16 + local.get $21 + f64.sub + f64.le + if + local.get $18 + f64.const 1e-300 + f64.mul + f64.const 1e-300 + f64.mul + return + end + end + end + local.get $28 + i32.const 2147483647 + i32.and + local.set $41 + local.get $41 + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + local.set $10 + i32.const 0 + local.set $29 + local.get $41 + i32.const 1071644672 + i32.gt_s + if + local.get $28 + i32.const 1048576 + local.get $10 + i32.const 1 + i32.add + i32.shr_s + i32.add + local.set $29 + local.get $29 + i32.const 2147483647 + i32.and + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + local.set $10 + f64.const 0 + local.set $24 + local.get $29 + i32.const 1048575 + local.get $10 + i32.shr_s + i32.const -1 + i32.xor + i32.and + i64.extend_i32_s + i64.const 32 + i64.shl + f64.reinterpret_i64 + local.set $24 + local.get $29 + i32.const 1048575 + i32.and + i32.const 1048576 + i32.or + i32.const 20 + local.get $10 + i32.sub + i32.shr_s + local.set $29 + local.get $28 + i32.const 0 + i32.lt_s + if + i32.const 0 + local.get $29 + i32.sub + local.set $29 + end + local.get $21 + local.get $24 + f64.sub + local.set $21 + end + local.get $22 + local.get $21 + f64.add + local.set $24 + local.get $24 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $24 + local.get $24 + f64.const 0.6931471824645996 + f64.mul + local.set $25 + local.get $22 + local.get $24 + local.get $21 + f64.sub + f64.sub + f64.const 0.6931471805599453 + f64.mul + local.get $24 + f64.const -1.904654299957768e-09 + f64.mul + f64.add + local.set $26 + local.get $25 + local.get $26 + f64.add + local.set $16 + local.get $26 + local.get $16 + local.get $25 + f64.sub + f64.sub + local.set $27 + local.get $16 + local.get $16 + f64.mul + local.set $24 + local.get $16 + local.get $24 + f64.const 0.16666666666666602 + local.get $24 + f64.const -2.7777777777015593e-03 + local.get $24 + f64.const 6.613756321437934e-05 + local.get $24 + f64.const -1.6533902205465252e-06 + local.get $24 + f64.const 4.1381367970572385e-08 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.sub + local.set $19 + local.get $16 + local.get $19 + f64.mul + local.get $19 + f64.const 2 + f64.sub + f64.div + local.get $27 + local.get $16 + local.get $27 + f64.mul + f64.add + f64.sub + local.set $23 + f64.const 1 + local.get $23 + local.get $16 + f64.sub + f64.sub + local.set $16 + local.get $16 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $28 + local.get $28 + local.get $29 + i32.const 20 + i32.shl + i32.add + local.set $28 + local.get $28 + i32.const 20 + i32.shr_s + i32.const 0 + i32.le_s + if + local.get $16 + local.get $29 + call $~lib/math/NativeMath.scalbn + local.set $16 + else + local.get $16 + i64.reinterpret_f64 + i64.const 4294967295 + i64.and + local.get $28 + i64.extend_i32_s + i64.const 32 + i64.shl + i64.or + f64.reinterpret_i64 + local.set $16 + end + local.get $18 + local.get $16 + f64.mul + ) + (func $~lib/number/isFinite (; 16 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.eq + ) + (func $~lib/number/isNaN (; 17 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.ne + ) + (func $~lib/array/Array#__unchecked_get (; 18 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + i64.load + ) + (func $~lib/array/Array#__unchecked_get (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.load16_s + ) + (func $~lib/util/number/genDigits (; 20 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i64) + (local $11 i32) + (local $12 i32) + (local $13 i64) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i32) + (local $25 i32) + (local $26 i32) + i32.const 0 + local.get $4 + i32.sub + local.set $7 + i64.const 1 + local.get $7 + i64.extend_i32_s + i64.shl + local.set $8 + local.get $8 + i64.const 1 + i64.sub + local.set $9 + local.get $3 + local.get $1 + i64.sub + local.set $10 + local.get $4 + local.set $11 + local.get $3 + local.get $7 + i64.extend_i32_s + i64.shr_u + i32.wrap_i64 + local.set $12 + local.get $3 + local.get $9 + i64.and + local.set $13 + local.get $12 + call $~lib/util/number/decimalCount32 + local.set $14 + local.get $6 + local.set $15 + i32.const 1824 + i32.load offset=4 + local.set $16 + block $break|0 + loop $continue|0 + local.get $14 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|0 + block $break|1 + block $case10|1 + block $case9|1 + block $case8|1 + block $case7|1 + block $case6|1 + block $case5|1 + block $case4|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $14 + local.set $18 + local.get $18 + i32.const 10 + i32.eq + br_if $case0|1 + local.get $18 + i32.const 9 + i32.eq + br_if $case1|1 + local.get $18 + i32.const 8 + i32.eq + br_if $case2|1 + local.get $18 + i32.const 7 + i32.eq + br_if $case3|1 + local.get $18 + i32.const 6 + i32.eq + br_if $case4|1 + local.get $18 + i32.const 5 + i32.eq + br_if $case5|1 + local.get $18 + i32.const 4 + i32.eq + br_if $case6|1 + local.get $18 + i32.const 3 + i32.eq + br_if $case7|1 + local.get $18 + i32.const 2 + i32.eq + br_if $case8|1 + local.get $18 + i32.const 1 + i32.eq + br_if $case9|1 + br $case10|1 + end + local.get $12 + i32.const 1000000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100 + i32.div_u + local.set $17 + local.get $12 + i32.const 100 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10 + i32.div_u + local.set $17 + local.get $12 + i32.const 10 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + local.set $17 + i32.const 0 + local.set $12 + br $break|1 + end + i32.const 0 + local.set $17 + br $break|1 + end + local.get $17 + local.get $15 + i32.or + if + local.get $0 + local.get $15 + local.tee $18 + i32.const 1 + i32.add + local.set $15 + local.get $18 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $17 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $12 + i64.extend_i32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.get $13 + i64.add + local.set $19 + local.get $19 + local.get $5 + i64.le_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $19 + local.set $22 + local.get $16 + local.get $14 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $25 + local.get $25 + i32.load16_u + local.set $26 + block $break|2 + loop $continue|2 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|2 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|2 + end + unreachable + end + local.get $25 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|0 + end + unreachable + end + loop $continue|3 + local.get $13 + i64.const 10 + i64.mul + local.set $13 + local.get $5 + i64.const 10 + i64.mul + local.set $5 + local.get $13 + local.get $7 + i64.extend_i32_s + i64.shr_u + local.set $19 + local.get $19 + local.get $15 + i64.extend_i32_s + i64.or + i64.const 0 + i64.ne + if + local.get $0 + local.get $15 + local.tee $17 + i32.const 1 + i32.add + local.set $15 + local.get $17 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $19 + i32.wrap_i64 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $13 + local.get $9 + i64.and + local.set $13 + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $13 + local.get $5 + i64.lt_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $10 + local.get $16 + i32.const 0 + local.get $14 + i32.sub + i32.const 2 + i32.shl + i32.add + i64.load32_u + i64.mul + local.set $10 + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $13 + local.set $22 + local.get $8 + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $17 + local.get $17 + i32.load16_u + local.set $26 + block $break|4 + loop $continue|4 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|4 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|4 + end + unreachable + end + local.get $17 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|3 + end + unreachable + ) + (func $~lib/util/memory/memcpy (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + loop $continue|0 + local.get $2 + if (result i32) + local.get $1 + i32.const 3 + i32.and + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $0 + i32.const 3 + i32.and + i32.const 0 + i32.eq + if + block $break|1 + loop $continue|1 + local.get $2 + i32.const 16 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 8 + i32.add + i32.load + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 12 + i32.add + i32.load + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|1 + end + unreachable + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.set $0 + local.get $1 + i32.const 4 + i32.add + local.set $1 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load16_u + i32.store16 + local.get $0 + i32.const 2 + i32.add + local.set $0 + local.get $1 + i32.const 2 + i32.add + local.set $1 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + return + end + local.get $2 + i32.const 32 + i32.ge_u + if + block $break|2 + block $case2|2 + block $case1|2 + block $case0|2 + local.get $0 + i32.const 3 + i32.and + local.set $5 + local.get $5 + i32.const 1 + i32.eq + br_if $case0|2 + local.get $5 + i32.const 2 + i32.eq + br_if $case1|2 + local.get $5 + i32.const 3 + i32.eq + br_if $case2|2 + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 3 + i32.sub + local.set $2 + block $break|3 + loop $continue|3 + local.get $2 + i32.const 17 + i32.ge_u + i32.eqz + br_if $break|3 + local.get $1 + i32.const 1 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 5 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 9 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 13 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|3 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + block $break|4 + loop $continue|4 + local.get $2 + i32.const 18 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $1 + i32.const 2 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 6 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 10 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 14 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|4 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + block $break|5 + loop $continue|5 + local.get $2 + i32.const 19 + i32.ge_u + i32.eqz + br_if $break|5 + local.get $1 + i32.const 3 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 7 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 11 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 15 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|5 + end + unreachable + end + br $break|2 + end + end + local.get $2 + i32.const 16 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + ) + (func $~lib/memory/memory.copy (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + local.get $4 + i32.eq + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $4 + local.get $3 + i32.add + local.get $5 + i32.le_u + if (result i32) + i32.const 1 + else + local.get $5 + local.get $3 + i32.add + local.get $4 + i32.le_u + end + if + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $4 + i32.lt_u + if + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|0 + loop $continue|0 + local.get $5 + i32.const 7 + i32.and + i32.eqz + br_if $break|0 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $3 + i32.const 1 + i32.sub + local.set $3 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + br $continue|0 + end + unreachable + end + block $break|1 + loop $continue|1 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $5 + local.get $4 + i64.load + i64.store + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + i32.const 8 + i32.add + local.set $5 + local.get $4 + i32.const 8 + i32.add + local.set $4 + br $continue|1 + end + unreachable + end + end + block $break|2 + loop $continue|2 + local.get $3 + i32.eqz + br_if $break|2 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + local.get $3 + i32.const 1 + i32.sub + local.set $3 + br $continue|2 + end + unreachable + end + else + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|3 + loop $continue|3 + local.get $5 + local.get $3 + i32.add + i32.const 7 + i32.and + i32.eqz + br_if $break|3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + local.get $3 + i32.add + local.get $4 + local.get $3 + i32.add + i64.load + i64.store + br $continue|4 + end + unreachable + end + end + block $break|5 + loop $continue|5 + local.get $3 + i32.eqz + br_if $break|5 + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|5 + end + unreachable + end + end + end + ) + (func $~lib/util/number/prettify (; 23 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $2 + i32.eqz + if + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 2 + i32.add + return + end + local.get $1 + local.get $2 + i32.add + local.set $3 + local.get $1 + local.get $3 + i32.le_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + block $break|0 + local.get $1 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $3 + i32.const 2 + i32.add + return + else + local.get $3 + i32.const 0 + i32.gt_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $4 + local.get $4 + i32.const 2 + i32.add + local.get $4 + i32.const 0 + local.get $2 + i32.sub + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.store16 + local.get $1 + i32.const 1 + i32.add + return + else + i32.const -6 + local.get $3 + i32.lt_s + if (result i32) + local.get $3 + i32.const 0 + i32.le_s + else + i32.const 0 + end + if + i32.const 2 + local.get $3 + i32.sub + local.set $4 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $1 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + i32.const 48 + i32.const 46 + i32.const 16 + i32.shl + i32.or + i32.store + block $break|1 + i32.const 2 + local.set $5 + loop $loop|1 + local.get $5 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|1 + end + unreachable + end + local.get $1 + local.get $4 + i32.add + return + else + local.get $1 + i32.const 1 + i32.eq + if + local.get $0 + i32.const 101 + i32.store16 offset=2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + local.get $5 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $5 + i32.sub + local.set $5 + end + local.get $5 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $7 + local.get $4 + local.set $10 + local.get $5 + local.set $9 + local.get $7 + local.set $8 + local.get $10 + local.get $9 + local.get $8 + call $~lib/util/number/utoa32_lut + local.get $4 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $7 + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + else + local.get $1 + i32.const 1 + i32.shl + local.set $7 + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.const 2 + i32.add + local.get $7 + i32.const 2 + i32.sub + call $~lib/memory/memory.copy + local.get $0 + i32.const 46 + i32.store16 offset=2 + local.get $0 + local.get $7 + i32.add + i32.const 101 + i32.store16 offset=2 + local.get $1 + local.get $0 + local.get $7 + i32.add + i32.const 4 + i32.add + local.set $9 + local.get $3 + i32.const 1 + i32.sub + local.set $8 + local.get $8 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $8 + i32.sub + local.set $8 + end + local.get $8 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $4 + local.get $9 + local.set $11 + local.get $8 + local.set $5 + local.get $4 + local.set $10 + local.get $11 + local.get $5 + local.get $10 + call $~lib/util/number/utoa32_lut + local.get $9 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $4 + i32.add + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + end + unreachable + end + unreachable + end + unreachable + end + unreachable + ) + (func $~lib/util/number/dtoa_core (; 24 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 i64) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i32) + (local $11 i64) + (local $12 i64) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 f64) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i64) + (local $25 i64) + (local $26 i32) + (local $27 i64) + (local $28 i32) + local.get $1 + f64.const 0 + f64.lt + local.set $2 + local.get $2 + if + local.get $1 + f64.neg + local.set $1 + local.get $0 + i32.const 45 + i32.store16 + end + local.get $1 + local.set $5 + local.get $0 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i64.reinterpret_f64 + local.set $6 + local.get $6 + i64.const 9218868437227405312 + i64.and + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.set $7 + local.get $6 + i64.const 4503599627370495 + i64.and + local.set $8 + local.get $7 + i32.const 0 + i32.ne + i64.extend_i32_u + i64.const 52 + i64.shl + local.get $8 + i64.add + local.set $9 + local.get $7 + i32.const 1 + local.get $7 + i32.const 0 + i32.ne + select + i32.const 1023 + i32.const 52 + i32.add + i32.sub + local.set $7 + local.get $9 + local.set $11 + local.get $7 + local.set $10 + local.get $11 + i64.const 1 + i64.shl + i64.const 1 + i64.add + local.set $12 + local.get $10 + i32.const 1 + i32.sub + local.set $13 + local.get $12 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $12 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $12 + local.get $13 + local.get $14 + i32.sub + local.set $13 + i32.const 1 + local.get $11 + i64.const 4503599627370496 + i64.eq + i32.add + local.set $15 + local.get $12 + global.set $~lib/util/number/_frc_plus + local.get $11 + local.get $15 + i64.extend_i32_s + i64.shl + i64.const 1 + i64.sub + local.get $10 + local.get $15 + i32.sub + local.get $13 + i32.sub + i64.extend_i32_s + i64.shl + global.set $~lib/util/number/_frc_minus + local.get $13 + global.set $~lib/util/number/_exp + global.get $~lib/util/number/_exp + local.set $10 + i32.const -61 + local.get $10 + i32.sub + f64.convert_i32_s + f64.const 0.30102999566398114 + f64.mul + f64.const 347 + f64.add + local.set $16 + local.get $16 + i32.trunc_f64_s + local.set $15 + local.get $15 + local.get $15 + f64.convert_i32_s + local.get $16 + f64.ne + i32.add + local.set $15 + local.get $15 + i32.const 3 + i32.shr_s + i32.const 1 + i32.add + local.set $14 + i32.const 348 + local.get $14 + i32.const 3 + i32.shl + i32.sub + global.set $~lib/util/number/_K + i32.const 1512 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_frc_pow + i32.const 1736 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_exp_pow + local.get $9 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $9 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $9 + local.get $7 + local.get $14 + i32.sub + local.set $7 + global.get $~lib/util/number/_frc_pow + local.set $12 + global.get $~lib/util/number/_exp_pow + local.set $15 + local.get $9 + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $24 + local.get $24 + i64.const 2147483647 + i64.add + local.set $24 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $24 + i64.const 32 + i64.shr_u + local.set $24 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $24 + i64.add + local.set $24 + local.get $7 + local.set $10 + local.get $15 + local.set $13 + local.get $10 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $10 + global.get $~lib/util/number/_frc_plus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $23 + local.get $11 + i64.const 4294967295 + i64.and + local.set $22 + local.get $17 + i64.const 32 + i64.shr_u + local.set $21 + local.get $11 + i64.const 32 + i64.shr_u + local.set $20 + local.get $23 + local.get $22 + i64.mul + local.set $19 + local.get $21 + local.get $22 + i64.mul + local.get $19 + i64.const 32 + i64.shr_u + i64.add + local.set $18 + local.get $23 + local.get $20 + i64.mul + local.get $18 + i64.const 4294967295 + i64.and + i64.add + local.set $25 + local.get $25 + i64.const 2147483647 + i64.add + local.set $25 + local.get $18 + i64.const 32 + i64.shr_u + local.set $18 + local.get $25 + i64.const 32 + i64.shr_u + local.set $25 + local.get $21 + local.get $20 + i64.mul + local.get $18 + i64.add + local.get $25 + i64.add + i64.const 1 + i64.sub + local.set $25 + global.get $~lib/util/number/_exp + local.set $26 + local.get $15 + local.set $13 + local.get $26 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $26 + global.get $~lib/util/number/_frc_minus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $27 + local.get $27 + i64.const 2147483647 + i64.add + local.set $27 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $27 + i64.const 32 + i64.shr_u + local.set $27 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $27 + i64.add + i64.const 1 + i64.add + local.set $27 + local.get $25 + local.get $27 + i64.sub + local.set $23 + local.get $4 + local.get $24 + local.get $10 + local.get $25 + local.get $26 + local.get $23 + local.get $3 + call $~lib/util/number/genDigits + local.set $28 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $28 + local.get $2 + i32.sub + global.get $~lib/util/number/_K + call $~lib/util/number/prettify + local.set $28 + local.get $28 + local.get $2 + i32.add + ) + (func $~lib/string/String#substring (; 25 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $6 + local.get $2 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $7 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + i32.const 1 + i32.shl + local.set $8 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + i32.const 1 + i32.shl + local.set $9 + local.get $9 + local.get $8 + i32.sub + local.set $3 + local.get $3 + i32.eqz + if + i32.const 1856 + call $~lib/rt/stub/__retain + return + end + local.get $8 + i32.eqz + if (result i32) + local.get $9 + local.get $0 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + i32.eq + else + i32.const 0 + end + if + local.get $0 + call $~lib/rt/stub/__retain + return + end + local.get $3 + i32.const 1 + call $~lib/rt/stub/__alloc + local.set $10 + local.get $10 + local.get $0 + local.get $8 + i32.add + local.get $3 + call $~lib/memory/memory.copy + local.get $10 + call $~lib/rt/stub/__retain + ) + (func $~lib/rt/stub/__free (; 26 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 1872 + i32.const 71 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 16 + i32.sub + local.set $1 + local.get $1 + i32.load offset=4 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 1872 + i32.const 73 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + i32.load + i32.add + global.get $~lib/rt/stub/offset + i32.eq + if + local.get $1 + global.set $~lib/rt/stub/offset + end + ) + (func $~lib/util/number/dtoa (; 27 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + f64.const 0 + f64.eq + if + i32.const 680 + call $~lib/rt/stub/__retain + return + end + local.get $0 + call $~lib/number/isFinite + i32.eqz + if + local.get $0 + call $~lib/number/isNaN + if + i32.const 704 + call $~lib/rt/stub/__retain + return + end + i32.const 728 + i32.const 768 + local.get $0 + f64.const 0 + f64.lt + select + call $~lib/rt/stub/__retain + return + end + i32.const 28 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/stub/__alloc + local.set $1 + local.get $1 + local.get $0 + call $~lib/util/number/dtoa_core + local.set $2 + local.get $2 + i32.const 28 + i32.eq + if + local.get $1 + call $~lib/rt/stub/__retain + return + end + local.get $1 + i32.const 0 + local.get $2 + call $~lib/string/String#substring + local.set $3 + local.get $1 + call $~lib/rt/stub/__free + local.get $3 + ) + (func $~lib/number/F64#toString (; 28 ;) (type $FUNCSIG$idi) (param $0 f64) (param $1 i32) (result i32) + local.get $0 + call $~lib/util/number/dtoa + ) + (func $resolve-binary/Foo#constructor (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 6 + call $~lib/rt/stub/__alloc + call $~lib/rt/stub/__retain + local.set $0 + end + local.get $0 + ) + (func $resolve-binary/Foo#lt (; 30 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/stub/__retain + drop + i32.const 2016 + call $~lib/rt/stub/__retain + local.set $2 + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $~lib/string/String#toString (; 31 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/rt/stub/__retain + ) + (func $resolve-binary/Foo#gt (; 32 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/stub/__retain + drop + i32.const 2040 + call $~lib/rt/stub/__retain + local.set $2 + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $resolve-binary/Foo#le (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/stub/__retain + drop + i32.const 2064 + call $~lib/rt/stub/__retain + local.set $2 + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $resolve-binary/Foo#ge (; 34 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/stub/__retain + drop + i32.const 2088 + call $~lib/rt/stub/__retain + local.set $2 + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $resolve-binary/Foo#eq (; 35 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/stub/__retain + drop + i32.const 2112 + call $~lib/rt/stub/__retain + local.set $2 + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $resolve-binary/Foo#ne (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/stub/__retain + drop + i32.const 2136 + call $~lib/rt/stub/__retain + local.set $2 + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $resolve-binary/Foo#add (; 37 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/stub/__retain + drop + i32.const 2160 + call $~lib/rt/stub/__retain + local.set $2 + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $resolve-binary/Foo.sub (; 38 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + local.get $1 + call $~lib/rt/stub/__retain + drop + i32.const 2184 + call $~lib/rt/stub/__retain + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $resolve-binary/Foo#mul (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/stub/__retain + drop + i32.const 2208 + call $~lib/rt/stub/__retain + local.set $2 + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $resolve-binary/Foo#div (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/stub/__retain + drop + i32.const 2232 + call $~lib/rt/stub/__retain + local.set $2 + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $resolve-binary/Foo#rem (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/stub/__retain + drop + i32.const 2256 + call $~lib/rt/stub/__retain + local.set $2 + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $resolve-binary/Foo#pow (; 42 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/stub/__retain + drop + i32.const 2280 + call $~lib/rt/stub/__retain + local.set $2 + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $resolve-binary/Bar#constructor (; 43 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 7 + call $~lib/rt/stub/__alloc + call $~lib/rt/stub/__retain + local.set $0 + end + local.get $0 + ) + (func $resolve-binary/Bar#add (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $1 + call $~lib/rt/stub/__retain + drop + local.get $1 + ) + (func $resolve-binary/Bar#self (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/rt/stub/__retain + ) + (func $start:resolve-binary (; 46 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + (local $45 i32) + (local $46 i32) + (local $47 i32) + (local $48 i32) + (local $49 i32) + (local $50 i32) + (local $51 i32) + (local $52 i32) + (local $53 i32) + (local $54 i32) + (local $55 i32) + (local $56 i32) + (local $57 i32) + (local $58 i32) + (local $59 i32) + (local $60 i32) + (local $61 i32) + (local $62 i32) + (local $63 i32) + i32.const 1 + call $~lib/number/Bool#toString + local.tee $0 + i32.const 24 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 2 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/number/Bool#toString + local.tee $1 + i32.const 48 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 7 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + call $~lib/number/Bool#toString + local.tee $2 + i32.const 24 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 12 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/number/Bool#toString + local.tee $3 + i32.const 48 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 17 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/number/Bool#toString + local.tee $4 + i32.const 48 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 22 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + call $~lib/number/Bool#toString + local.tee $5 + i32.const 24 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 27 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + call $~lib/number/Bool#toString + local.tee $6 + i32.const 24 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 34 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/number/Bool#toString + local.tee $7 + i32.const 48 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 39 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/heap/__heap_base + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + global.set $~lib/rt/stub/startOffset + global.get $~lib/rt/stub/startOffset + global.set $~lib/rt/stub/offset + i32.const 1 + global.set $resolve-binary/a + global.get $resolve-binary/a + call $~lib/number/I32#toString + local.tee $8 + i32.const 632 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 48 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/a + i32.const 1 + i32.add + global.set $resolve-binary/a + global.get $resolve-binary/a + call $~lib/number/I32#toString + local.tee $9 + i32.const 656 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 53 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/a + i32.const 1 + i32.sub + global.set $resolve-binary/a + global.get $resolve-binary/a + call $~lib/number/I32#toString + local.tee $10 + i32.const 632 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 58 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/a + i32.const 2 + i32.mul + global.set $resolve-binary/a + global.get $resolve-binary/a + call $~lib/number/I32#toString + local.tee $11 + i32.const 656 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 63 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2 + global.set $resolve-binary/f + global.get $resolve-binary/f + f64.const 2 + call $~lib/math/NativeMath.pow + global.set $resolve-binary/f + global.get $resolve-binary/f + i32.const 0 + call $~lib/number/F64#toString + local.tee $12 + i32.const 1920 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 69 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4 + global.set $resolve-binary/a + global.get $resolve-binary/a + i32.const 2 + i32.div_s + global.set $resolve-binary/a + global.get $resolve-binary/a + call $~lib/number/I32#toString + local.tee $13 + i32.const 656 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 75 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/a + i32.const 3 + i32.rem_s + global.set $resolve-binary/a + global.get $resolve-binary/a + call $~lib/number/I32#toString + local.tee $14 + i32.const 656 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 80 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/a + i32.const 1 + i32.shl + global.set $resolve-binary/a + global.get $resolve-binary/a + call $~lib/number/I32#toString + local.tee $15 + i32.const 1944 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 85 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/a + i32.const 1 + i32.shr_s + global.set $resolve-binary/a + global.get $resolve-binary/a + call $~lib/number/I32#toString + local.tee $16 + i32.const 656 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 90 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/a + i32.const 1 + i32.shr_u + global.set $resolve-binary/a + global.get $resolve-binary/a + call $~lib/number/I32#toString + local.tee $17 + i32.const 632 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 95 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/a + i32.const 3 + i32.and + global.set $resolve-binary/a + global.get $resolve-binary/a + call $~lib/number/I32#toString + local.tee $18 + i32.const 632 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 100 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/a + i32.const 3 + i32.or + global.set $resolve-binary/a + global.get $resolve-binary/a + call $~lib/number/I32#toString + local.tee $19 + i32.const 1968 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 105 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/a + i32.const 2 + i32.xor + global.set $resolve-binary/a + global.get $resolve-binary/a + call $~lib/number/I32#toString + local.tee $20 + i32.const 632 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 110 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + call $~lib/number/I32#toString + local.tee $21 + i32.const 1968 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 117 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const -1 + call $~lib/number/I32#toString + local.tee $22 + i32.const 1992 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 122 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2 + call $~lib/number/I32#toString + local.tee $23 + i32.const 656 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 127 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2 + call $~lib/number/I32#toString + local.tee $24 + i32.const 656 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 132 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + call $~lib/number/I32#toString + local.tee $25 + i32.const 632 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 137 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2 + f64.const 2 + call $~lib/math/NativeMath.pow + i32.const 0 + call $~lib/number/F64#toString + local.tee $26 + i32.const 1920 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 144 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4 + call $~lib/number/I32#toString + local.tee $27 + i32.const 1944 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 151 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + call $~lib/number/I32#toString + local.tee $28 + i32.const 632 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 156 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + call $~lib/number/I32#toString + local.tee $29 + i32.const 1968 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 161 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + call $~lib/number/I32#toString + local.tee $30 + i32.const 632 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 168 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + call $~lib/number/I32#toString + local.tee $31 + i32.const 1968 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 173 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2 + call $~lib/number/I32#toString + local.tee $32 + i32.const 656 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 178 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2 + call $~lib/number/I32#toString + local.tee $33 + i32.const 656 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 185 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/number/I32#toString + local.tee $34 + i32.const 160 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 190 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + call $~lib/number/I32#toString + local.tee $35 + i32.const 632 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 195 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2 + call $~lib/number/I32#toString + local.tee $36 + i32.const 656 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 200 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $resolve-binary/Foo#constructor + global.set $resolve-binary/foo + global.get $resolve-binary/foo + global.get $resolve-binary/foo + call $resolve-binary/Foo#lt + local.tee $37 + call $~lib/string/String#toString + local.tee $38 + i32.const 2016 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 261 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/foo + global.get $resolve-binary/foo + call $resolve-binary/Foo#gt + local.tee $39 + call $~lib/string/String#toString + local.tee $40 + i32.const 2040 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 266 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/foo + global.get $resolve-binary/foo + call $resolve-binary/Foo#le + local.tee $41 + call $~lib/string/String#toString + local.tee $42 + i32.const 2064 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 271 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/foo + global.get $resolve-binary/foo + call $resolve-binary/Foo#ge + local.tee $43 + call $~lib/string/String#toString + local.tee $44 + i32.const 2088 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 276 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/foo + global.get $resolve-binary/foo + call $resolve-binary/Foo#eq + local.tee $45 + call $~lib/string/String#toString + local.tee $46 + i32.const 2112 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 281 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/foo + global.get $resolve-binary/foo + call $resolve-binary/Foo#ne + local.tee $47 + call $~lib/string/String#toString + local.tee $48 + i32.const 2136 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 286 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/foo + global.get $resolve-binary/foo + call $resolve-binary/Foo#add + local.tee $49 + call $~lib/string/String#toString + local.tee $50 + i32.const 2160 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 291 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/foo + global.get $resolve-binary/foo + call $resolve-binary/Foo.sub + local.tee $51 + call $~lib/string/String#toString + local.tee $52 + i32.const 2184 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 296 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/foo + global.get $resolve-binary/foo + call $resolve-binary/Foo#mul + local.tee $53 + call $~lib/string/String#toString + local.tee $54 + i32.const 2208 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 301 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/foo + global.get $resolve-binary/foo + call $resolve-binary/Foo#div + local.tee $55 + call $~lib/string/String#toString + local.tee $56 + i32.const 2232 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 306 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/foo + global.get $resolve-binary/foo + call $resolve-binary/Foo#rem + local.tee $57 + call $~lib/string/String#toString + local.tee $58 + i32.const 2256 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 311 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/foo + global.get $resolve-binary/foo + call $resolve-binary/Foo#pow + local.tee $59 + call $~lib/string/String#toString + local.tee $60 + i32.const 2280 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 316 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $resolve-binary/Bar#constructor + global.set $resolve-binary/bar + i32.const 0 + call $resolve-binary/Bar#constructor + global.set $resolve-binary/bar2 + global.get $resolve-binary/bar + global.get $resolve-binary/bar2 + call $resolve-binary/Bar#add + local.tee $61 + local.tee $62 + global.get $resolve-binary/bar + local.tee $63 + i32.ne + if + local.get $62 + call $~lib/rt/stub/__retain + drop + local.get $63 + call $~lib/rt/stub/__release + end + local.get $62 + global.set $resolve-binary/bar + global.get $resolve-binary/bar + call $resolve-binary/Bar#self + local.tee $62 + global.get $resolve-binary/bar2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 334 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-binary/bar + global.get $resolve-binary/bar2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 339 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + call $~lib/rt/stub/__release + local.get $3 + call $~lib/rt/stub/__release + local.get $4 + call $~lib/rt/stub/__release + local.get $5 + call $~lib/rt/stub/__release + local.get $6 + call $~lib/rt/stub/__release + local.get $7 + call $~lib/rt/stub/__release + local.get $8 + call $~lib/rt/stub/__release + local.get $9 + call $~lib/rt/stub/__release + local.get $10 + call $~lib/rt/stub/__release + local.get $11 + call $~lib/rt/stub/__release + local.get $12 + call $~lib/rt/stub/__release + local.get $13 + call $~lib/rt/stub/__release + local.get $14 + call $~lib/rt/stub/__release + local.get $15 + call $~lib/rt/stub/__release + local.get $16 + call $~lib/rt/stub/__release + local.get $17 + call $~lib/rt/stub/__release + local.get $18 + call $~lib/rt/stub/__release + local.get $19 + call $~lib/rt/stub/__release + local.get $20 + call $~lib/rt/stub/__release + local.get $21 + call $~lib/rt/stub/__release + local.get $22 + call $~lib/rt/stub/__release + local.get $23 + call $~lib/rt/stub/__release + local.get $24 + call $~lib/rt/stub/__release + local.get $25 + call $~lib/rt/stub/__release + local.get $26 + call $~lib/rt/stub/__release + local.get $27 + call $~lib/rt/stub/__release + local.get $28 + call $~lib/rt/stub/__release + local.get $29 + call $~lib/rt/stub/__release + local.get $30 + call $~lib/rt/stub/__release + local.get $31 + call $~lib/rt/stub/__release + local.get $32 + call $~lib/rt/stub/__release + local.get $33 + call $~lib/rt/stub/__release + local.get $34 + call $~lib/rt/stub/__release + local.get $35 + call $~lib/rt/stub/__release + local.get $36 + call $~lib/rt/stub/__release + local.get $37 + call $~lib/rt/stub/__release + local.get $38 + call $~lib/rt/stub/__release + local.get $39 + call $~lib/rt/stub/__release + local.get $40 + call $~lib/rt/stub/__release + local.get $41 + call $~lib/rt/stub/__release + local.get $42 + call $~lib/rt/stub/__release + local.get $43 + call $~lib/rt/stub/__release + local.get $44 + call $~lib/rt/stub/__release + local.get $45 + call $~lib/rt/stub/__release + local.get $46 + call $~lib/rt/stub/__release + local.get $47 + call $~lib/rt/stub/__release + local.get $48 + call $~lib/rt/stub/__release + local.get $49 + call $~lib/rt/stub/__release + local.get $50 + call $~lib/rt/stub/__release + local.get $51 + call $~lib/rt/stub/__release + local.get $52 + call $~lib/rt/stub/__release + local.get $53 + call $~lib/rt/stub/__release + local.get $54 + call $~lib/rt/stub/__release + local.get $55 + call $~lib/rt/stub/__release + local.get $56 + call $~lib/rt/stub/__release + local.get $57 + call $~lib/rt/stub/__release + local.get $58 + call $~lib/rt/stub/__release + local.get $59 + call $~lib/rt/stub/__release + local.get $60 + call $~lib/rt/stub/__release + local.get $61 + call $~lib/rt/stub/__release + local.get $62 + call $~lib/rt/stub/__release + ) + (func $start (; 47 ;) (type $FUNCSIG$v) + call $start:resolve-binary + ) + (func $null (; 48 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 07ec87fd69..0885bda4bc 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -224,7 +224,7 @@ if i32.const 128 i32.const 184 - i32.const 1191 + i32.const 1151 i32.const 63 call $~lib/builtins/abort unreachable @@ -248,7 +248,7 @@ if i32.const 128 i32.const 184 - i32.const 1180 + i32.const 1140 i32.const 63 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/resolve-elementaccess.untouched.wat b/tests/compiler/resolve-elementaccess.untouched.wat index e69de29bb2..ea13d8f935 100644 --- a/tests/compiler/resolve-elementaccess.untouched.wat +++ b/tests/compiler/resolve-elementaccess.untouched.wat @@ -0,0 +1,3787 @@ +(module + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$viif (func (param i32 i32 f32))) + (type $FUNCSIG$fii (func (param i32 i32) (result f32))) + (type $FUNCSIG$if (func (param f32) (result i32))) + (type $FUNCSIG$id (func (param f64) (result i32))) + (type $FUNCSIG$iid (func (param i32 f64) (result i32))) + (type $FUNCSIG$jii (func (param i32 i32) (result i64))) + (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) + (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$v (func)) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (memory $0 1) + (data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") + (data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") + (data (i32.const 112) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") + (data (i32.const 168) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00~\00l\00i\00b\00/\00t\00y\00p\00e\00d\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 224) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") + (data (i32.const 248) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") + (data (i32.const 272) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 312) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 344) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8 (; 10 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.eq + ) + (func $~lib/number/isNaN (; 11 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.ne + ) + (func $~lib/array/Array#__unchecked_get (; 12 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + i64.load + ) + (func $~lib/array/Array#__unchecked_get (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.load16_s + ) + (func $~lib/util/number/decimalCount32 (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + i32.const 100000 + i32.lt_u + if + local.get $0 + i32.const 100 + i32.lt_u + if + i32.const 1 + i32.const 2 + local.get $0 + i32.const 10 + i32.lt_u + select + return + else + i32.const 4 + i32.const 5 + local.get $0 + i32.const 10000 + i32.lt_u + select + local.set $1 + i32.const 3 + local.get $1 + local.get $0 + i32.const 1000 + i32.lt_u + select + return + end + unreachable + else + local.get $0 + i32.const 10000000 + i32.lt_u + if + i32.const 6 + i32.const 7 + local.get $0 + i32.const 1000000 + i32.lt_u + select + return + else + i32.const 9 + i32.const 10 + local.get $0 + i32.const 1000000000 + i32.lt_u + select + local.set $1 + i32.const 8 + local.get $1 + local.get $0 + i32.const 100000000 + i32.lt_u + select + return + end + unreachable + end + unreachable + ) + (func $~lib/util/number/genDigits (; 15 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i64) + (local $11 i32) + (local $12 i32) + (local $13 i64) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i32) + (local $25 i32) + (local $26 i32) + i32.const 0 + local.get $4 + i32.sub + local.set $7 + i64.const 1 + local.get $7 + i64.extend_i32_s + i64.shl + local.set $8 + local.get $8 + i64.const 1 + i64.sub + local.set $9 + local.get $3 + local.get $1 + i64.sub + local.set $10 + local.get $4 + local.set $11 + local.get $3 + local.get $7 + i64.extend_i32_s + i64.shr_u + i32.wrap_i64 + local.set $12 + local.get $3 + local.get $9 + i64.and + local.set $13 + local.get $12 + call $~lib/util/number/decimalCount32 + local.set $14 + local.get $6 + local.set $15 + i32.const 1384 + i32.load offset=4 + local.set $16 + block $break|0 + loop $continue|0 + local.get $14 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|0 + block $break|1 + block $case10|1 + block $case9|1 + block $case8|1 + block $case7|1 + block $case6|1 + block $case5|1 + block $case4|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $14 + local.set $18 + local.get $18 + i32.const 10 + i32.eq + br_if $case0|1 + local.get $18 + i32.const 9 + i32.eq + br_if $case1|1 + local.get $18 + i32.const 8 + i32.eq + br_if $case2|1 + local.get $18 + i32.const 7 + i32.eq + br_if $case3|1 + local.get $18 + i32.const 6 + i32.eq + br_if $case4|1 + local.get $18 + i32.const 5 + i32.eq + br_if $case5|1 + local.get $18 + i32.const 4 + i32.eq + br_if $case6|1 + local.get $18 + i32.const 3 + i32.eq + br_if $case7|1 + local.get $18 + i32.const 2 + i32.eq + br_if $case8|1 + local.get $18 + i32.const 1 + i32.eq + br_if $case9|1 + br $case10|1 + end + local.get $12 + i32.const 1000000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100 + i32.div_u + local.set $17 + local.get $12 + i32.const 100 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10 + i32.div_u + local.set $17 + local.get $12 + i32.const 10 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + local.set $17 + i32.const 0 + local.set $12 + br $break|1 + end + i32.const 0 + local.set $17 + br $break|1 + end + local.get $17 + local.get $15 + i32.or + if + local.get $0 + local.get $15 + local.tee $18 + i32.const 1 + i32.add + local.set $15 + local.get $18 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $17 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $12 + i64.extend_i32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.get $13 + i64.add + local.set $19 + local.get $19 + local.get $5 + i64.le_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $19 + local.set $22 + local.get $16 + local.get $14 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $25 + local.get $25 + i32.load16_u + local.set $26 + block $break|2 + loop $continue|2 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|2 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|2 + end + unreachable + end + local.get $25 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|0 + end + unreachable + end + loop $continue|3 + local.get $13 + i64.const 10 + i64.mul + local.set $13 + local.get $5 + i64.const 10 + i64.mul + local.set $5 + local.get $13 + local.get $7 + i64.extend_i32_s + i64.shr_u + local.set $19 + local.get $19 + local.get $15 + i64.extend_i32_s + i64.or + i64.const 0 + i64.ne + if + local.get $0 + local.get $15 + local.tee $17 + i32.const 1 + i32.add + local.set $15 + local.get $17 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $19 + i32.wrap_i64 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $13 + local.get $9 + i64.and + local.set $13 + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $13 + local.get $5 + i64.lt_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $10 + local.get $16 + i32.const 0 + local.get $14 + i32.sub + i32.const 2 + i32.shl + i32.add + i64.load32_u + i64.mul + local.set $10 + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $13 + local.set $22 + local.get $8 + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $17 + local.get $17 + i32.load16_u + local.set $26 + block $break|4 + loop $continue|4 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|4 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|4 + end + unreachable + end + local.get $17 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|3 + end + unreachable + ) + (func $~lib/util/memory/memcpy (; 16 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + loop $continue|0 + local.get $2 + if (result i32) + local.get $1 + i32.const 3 + i32.and + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $0 + i32.const 3 + i32.and + i32.const 0 + i32.eq + if + block $break|1 + loop $continue|1 + local.get $2 + i32.const 16 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 8 + i32.add + i32.load + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 12 + i32.add + i32.load + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|1 + end + unreachable + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.set $0 + local.get $1 + i32.const 4 + i32.add + local.set $1 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load16_u + i32.store16 + local.get $0 + i32.const 2 + i32.add + local.set $0 + local.get $1 + i32.const 2 + i32.add + local.set $1 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + return + end + local.get $2 + i32.const 32 + i32.ge_u + if + block $break|2 + block $case2|2 + block $case1|2 + block $case0|2 + local.get $0 + i32.const 3 + i32.and + local.set $5 + local.get $5 + i32.const 1 + i32.eq + br_if $case0|2 + local.get $5 + i32.const 2 + i32.eq + br_if $case1|2 + local.get $5 + i32.const 3 + i32.eq + br_if $case2|2 + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 3 + i32.sub + local.set $2 + block $break|3 + loop $continue|3 + local.get $2 + i32.const 17 + i32.ge_u + i32.eqz + br_if $break|3 + local.get $1 + i32.const 1 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 5 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 9 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 13 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|3 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + block $break|4 + loop $continue|4 + local.get $2 + i32.const 18 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $1 + i32.const 2 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 6 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 10 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 14 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|4 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + block $break|5 + loop $continue|5 + local.get $2 + i32.const 19 + i32.ge_u + i32.eqz + br_if $break|5 + local.get $1 + i32.const 3 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 7 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 11 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 15 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|5 + end + unreachable + end + br $break|2 + end + end + local.get $2 + i32.const 16 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + ) + (func $~lib/memory/memory.copy (; 17 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + local.get $4 + i32.eq + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $4 + local.get $3 + i32.add + local.get $5 + i32.le_u + if (result i32) + i32.const 1 + else + local.get $5 + local.get $3 + i32.add + local.get $4 + i32.le_u + end + if + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $4 + i32.lt_u + if + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|0 + loop $continue|0 + local.get $5 + i32.const 7 + i32.and + i32.eqz + br_if $break|0 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $3 + i32.const 1 + i32.sub + local.set $3 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + br $continue|0 + end + unreachable + end + block $break|1 + loop $continue|1 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $5 + local.get $4 + i64.load + i64.store + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + i32.const 8 + i32.add + local.set $5 + local.get $4 + i32.const 8 + i32.add + local.set $4 + br $continue|1 + end + unreachable + end + end + block $break|2 + loop $continue|2 + local.get $3 + i32.eqz + br_if $break|2 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + local.get $3 + i32.const 1 + i32.sub + local.set $3 + br $continue|2 + end + unreachable + end + else + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|3 + loop $continue|3 + local.get $5 + local.get $3 + i32.add + i32.const 7 + i32.and + i32.eqz + br_if $break|3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + local.get $3 + i32.add + local.get $4 + local.get $3 + i32.add + i64.load + i64.store + br $continue|4 + end + unreachable + end + end + block $break|5 + loop $continue|5 + local.get $3 + i32.eqz + br_if $break|5 + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|5 + end + unreachable + end + end + end + ) + (func $~lib/util/number/utoa32_lut (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + i32.const 1832 + i32.load offset=4 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i32.const 10000 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $1 + i32.const 10000 + i32.div_u + local.set $4 + local.get $1 + i32.const 10000 + i32.rem_u + local.set $5 + local.get $4 + local.set $1 + local.get $5 + i32.const 100 + i32.div_u + local.set $6 + local.get $5 + i32.const 100 + i32.rem_u + local.set $7 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $8 + local.get $3 + local.get $7 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $9 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $8 + local.get $9 + i64.const 32 + i64.shl + i64.or + i64.store + br $continue|0 + end + unreachable + end + local.get $1 + i32.const 100 + i32.ge_u + if + local.get $1 + i32.const 100 + i32.div_u + local.set $7 + local.get $1 + i32.const 100 + i32.rem_u + local.set $6 + local.get $7 + local.set $1 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + end + local.get $1 + i32.const 10 + i32.ge_u + if + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + else + local.get $2 + i32.const 1 + i32.sub + local.set $2 + i32.const 48 + local.get $1 + i32.add + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store16 + end + ) + (func $~lib/util/number/prettify (; 19 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $2 + i32.eqz + if + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 2 + i32.add + return + end + local.get $1 + local.get $2 + i32.add + local.set $3 + local.get $1 + local.get $3 + i32.le_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + block $break|0 + local.get $1 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $3 + i32.const 2 + i32.add + return + else + local.get $3 + i32.const 0 + i32.gt_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $4 + local.get $4 + i32.const 2 + i32.add + local.get $4 + i32.const 0 + local.get $2 + i32.sub + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.store16 + local.get $1 + i32.const 1 + i32.add + return + else + i32.const -6 + local.get $3 + i32.lt_s + if (result i32) + local.get $3 + i32.const 0 + i32.le_s + else + i32.const 0 + end + if + i32.const 2 + local.get $3 + i32.sub + local.set $4 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $1 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + i32.const 48 + i32.const 46 + i32.const 16 + i32.shl + i32.or + i32.store + block $break|1 + i32.const 2 + local.set $5 + loop $loop|1 + local.get $5 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|1 + end + unreachable + end + local.get $1 + local.get $4 + i32.add + return + else + local.get $1 + i32.const 1 + i32.eq + if + local.get $0 + i32.const 101 + i32.store16 offset=2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + local.get $5 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $5 + i32.sub + local.set $5 + end + local.get $5 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $7 + local.get $4 + local.set $10 + local.get $5 + local.set $9 + local.get $7 + local.set $8 + local.get $10 + local.get $9 + local.get $8 + call $~lib/util/number/utoa32_lut + local.get $4 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $7 + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + else + local.get $1 + i32.const 1 + i32.shl + local.set $7 + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.const 2 + i32.add + local.get $7 + i32.const 2 + i32.sub + call $~lib/memory/memory.copy + local.get $0 + i32.const 46 + i32.store16 offset=2 + local.get $0 + local.get $7 + i32.add + i32.const 101 + i32.store16 offset=2 + local.get $1 + local.get $0 + local.get $7 + i32.add + i32.const 4 + i32.add + local.set $9 + local.get $3 + i32.const 1 + i32.sub + local.set $8 + local.get $8 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $8 + i32.sub + local.set $8 + end + local.get $8 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $4 + local.get $9 + local.set $11 + local.get $8 + local.set $5 + local.get $4 + local.set $10 + local.get $11 + local.get $5 + local.get $10 + call $~lib/util/number/utoa32_lut + local.get $9 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $4 + i32.add + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + end + unreachable + end + unreachable + end + unreachable + end + unreachable + ) + (func $~lib/util/number/dtoa_core (; 20 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 i64) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i32) + (local $11 i64) + (local $12 i64) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 f64) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i64) + (local $25 i64) + (local $26 i32) + (local $27 i64) + (local $28 i32) + local.get $1 + f64.const 0 + f64.lt + local.set $2 + local.get $2 + if + local.get $1 + f64.neg + local.set $1 + local.get $0 + i32.const 45 + i32.store16 + end + local.get $1 + local.set $5 + local.get $0 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i64.reinterpret_f64 + local.set $6 + local.get $6 + i64.const 9218868437227405312 + i64.and + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.set $7 + local.get $6 + i64.const 4503599627370495 + i64.and + local.set $8 + local.get $7 + i32.const 0 + i32.ne + i64.extend_i32_u + i64.const 52 + i64.shl + local.get $8 + i64.add + local.set $9 + local.get $7 + i32.const 1 + local.get $7 + i32.const 0 + i32.ne + select + i32.const 1023 + i32.const 52 + i32.add + i32.sub + local.set $7 + local.get $9 + local.set $11 + local.get $7 + local.set $10 + local.get $11 + i64.const 1 + i64.shl + i64.const 1 + i64.add + local.set $12 + local.get $10 + i32.const 1 + i32.sub + local.set $13 + local.get $12 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $12 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $12 + local.get $13 + local.get $14 + i32.sub + local.set $13 + i32.const 1 + local.get $11 + i64.const 4503599627370496 + i64.eq + i32.add + local.set $15 + local.get $12 + global.set $~lib/util/number/_frc_plus + local.get $11 + local.get $15 + i64.extend_i32_s + i64.shl + i64.const 1 + i64.sub + local.get $10 + local.get $15 + i32.sub + local.get $13 + i32.sub + i64.extend_i32_s + i64.shl + global.set $~lib/util/number/_frc_minus + local.get $13 + global.set $~lib/util/number/_exp + global.get $~lib/util/number/_exp + local.set $10 + i32.const -61 + local.get $10 + i32.sub + f64.convert_i32_s + f64.const 0.30102999566398114 + f64.mul + f64.const 347 + f64.add + local.set $16 + local.get $16 + i32.trunc_f64_s + local.set $15 + local.get $15 + local.get $15 + f64.convert_i32_s + local.get $16 + f64.ne + i32.add + local.set $15 + local.get $15 + i32.const 3 + i32.shr_s + i32.const 1 + i32.add + local.set $14 + i32.const 348 + local.get $14 + i32.const 3 + i32.shl + i32.sub + global.set $~lib/util/number/_K + i32.const 1072 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_frc_pow + i32.const 1296 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_exp_pow + local.get $9 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $9 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $9 + local.get $7 + local.get $14 + i32.sub + local.set $7 + global.get $~lib/util/number/_frc_pow + local.set $12 + global.get $~lib/util/number/_exp_pow + local.set $15 + local.get $9 + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $24 + local.get $24 + i64.const 2147483647 + i64.add + local.set $24 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $24 + i64.const 32 + i64.shr_u + local.set $24 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $24 + i64.add + local.set $24 + local.get $7 + local.set $10 + local.get $15 + local.set $13 + local.get $10 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $10 + global.get $~lib/util/number/_frc_plus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $23 + local.get $11 + i64.const 4294967295 + i64.and + local.set $22 + local.get $17 + i64.const 32 + i64.shr_u + local.set $21 + local.get $11 + i64.const 32 + i64.shr_u + local.set $20 + local.get $23 + local.get $22 + i64.mul + local.set $19 + local.get $21 + local.get $22 + i64.mul + local.get $19 + i64.const 32 + i64.shr_u + i64.add + local.set $18 + local.get $23 + local.get $20 + i64.mul + local.get $18 + i64.const 4294967295 + i64.and + i64.add + local.set $25 + local.get $25 + i64.const 2147483647 + i64.add + local.set $25 + local.get $18 + i64.const 32 + i64.shr_u + local.set $18 + local.get $25 + i64.const 32 + i64.shr_u + local.set $25 + local.get $21 + local.get $20 + i64.mul + local.get $18 + i64.add + local.get $25 + i64.add + i64.const 1 + i64.sub + local.set $25 + global.get $~lib/util/number/_exp + local.set $26 + local.get $15 + local.set $13 + local.get $26 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $26 + global.get $~lib/util/number/_frc_minus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $27 + local.get $27 + i64.const 2147483647 + i64.add + local.set $27 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $27 + i64.const 32 + i64.shr_u + local.set $27 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $27 + i64.add + i64.const 1 + i64.add + local.set $27 + local.get $25 + local.get $27 + i64.sub + local.set $23 + local.get $4 + local.get $24 + local.get $10 + local.get $25 + local.get $26 + local.get $23 + local.get $3 + call $~lib/util/number/genDigits + local.set $28 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $28 + local.get $2 + i32.sub + global.get $~lib/util/number/_K + call $~lib/util/number/prettify + local.set $28 + local.get $28 + local.get $2 + i32.add + ) + (func $~lib/string/String#get:length (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 16 + i32.sub + i32.load offset=12 + i32.const 1 + i32.shr_u + ) + (func $~lib/string/String#substring (; 22 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $6 + local.get $2 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $7 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + i32.const 1 + i32.shl + local.set $8 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + i32.const 1 + i32.shl + local.set $9 + local.get $9 + local.get $8 + i32.sub + local.set $3 + local.get $3 + i32.eqz + if + i32.const 1864 + call $~lib/rt/stub/__retain + return + end + local.get $8 + i32.eqz + if (result i32) + local.get $9 + local.get $0 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + i32.eq + else + i32.const 0 + end + if + local.get $0 + call $~lib/rt/stub/__retain + return + end + local.get $3 + i32.const 1 + call $~lib/rt/stub/__alloc + local.set $10 + local.get $10 + local.get $0 + local.get $8 + i32.add + local.get $3 + call $~lib/memory/memory.copy + local.get $10 + call $~lib/rt/stub/__retain + ) + (func $~lib/rt/stub/__free (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 1880 + i32.const 71 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 16 + i32.sub + local.set $1 + local.get $1 + i32.load offset=4 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 1880 + i32.const 73 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + i32.load + i32.add + global.get $~lib/rt/stub/offset + i32.eq + if + local.get $1 + global.set $~lib/rt/stub/offset + end + ) + (func $~lib/util/number/dtoa (; 24 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + f64.const 0 + f64.eq + if + i32.const 240 + call $~lib/rt/stub/__retain + return + end + local.get $0 + call $~lib/number/isFinite + i32.eqz + if + local.get $0 + call $~lib/number/isNaN + if + i32.const 264 + call $~lib/rt/stub/__retain + return + end + i32.const 288 + i32.const 328 + local.get $0 + f64.const 0 + f64.lt + select + call $~lib/rt/stub/__retain + return + end + i32.const 28 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/stub/__alloc + local.set $1 + local.get $1 + local.get $0 + call $~lib/util/number/dtoa_core + local.set $2 + local.get $2 + i32.const 28 + i32.eq + if + local.get $1 + call $~lib/rt/stub/__retain + return + end + local.get $1 + i32.const 0 + local.get $2 + call $~lib/string/String#substring + local.set $3 + local.get $1 + call $~lib/rt/stub/__free + local.get $3 + ) + (func $~lib/number/F32#toString (; 25 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + local.get $0 + f64.promote_f32 + call $~lib/util/number/dtoa + ) + (func $~lib/util/string/compareImpl (; 26 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + local.get $2 + call $~lib/rt/stub/__retain + drop + i32.const 0 + local.set $5 + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $6 + local.get $2 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $7 + block $break|0 + loop $continue|0 + local.get $4 + if (result i32) + local.get $6 + i32.load16_u + local.get $7 + i32.load16_u + i32.sub + local.tee $5 + i32.eqz + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + local.get $6 + i32.const 2 + i32.add + local.set $6 + local.get $7 + i32.const 2 + i32.add + local.set $7 + br $continue|0 + end + unreachable + end + local.get $5 + local.set $8 + local.get $0 + call $~lib/rt/stub/__release + local.get $2 + call $~lib/rt/stub/__release + local.get $8 + ) + (func $~lib/string/String.__eq (; 27 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + local.get $1 + call $~lib/rt/stub/__retain + drop + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 0 + i32.eq + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + return + end + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $3 + local.get $1 + call $~lib/string/String#get:length + i32.ne + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + local.get $1 + i32.const 0 + local.get $3 + call $~lib/util/string/compareImpl + i32.eqz + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $start:resolve-elementaccess (; 28 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/heap/__heap_base + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + global.set $~lib/rt/stub/startOffset + global.get $~lib/rt/stub/startOffset + global.set $~lib/rt/stub/offset + i32.const 0 + i32.const 2 + call $~lib/typedarray/Float32Array#constructor + global.set $resolve-elementaccess/arr + global.get $resolve-elementaccess/arr + i32.const 0 + f32.const 1 + call $~lib/typedarray/Float32Array#__set + global.get $resolve-elementaccess/arr + i32.const 1 + f32.const 2 + call $~lib/typedarray/Float32Array#__set + global.get $resolve-elementaccess/arr + i32.const 0 + call $~lib/typedarray/Float32Array#__get + call $~lib/number/F32#toString + local.tee $0 + i32.const 1928 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1952 + i32.const 4 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-elementaccess/arr + i32.const 1 + call $~lib/typedarray/Float32Array#__get + call $~lib/number/F32#toString + local.tee $1 + i32.const 2016 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1952 + i32.const 9 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-elementaccess/arr + local.tee $2 + i32.const 0 + local.tee $3 + global.get $resolve-elementaccess/arr + i32.const 0 + call $~lib/typedarray/Float32Array#__get + f32.const 10 + f32.add + call $~lib/typedarray/Float32Array#__set + local.get $2 + local.get $3 + call $~lib/typedarray/Float32Array#__get + call $~lib/number/F32#toString + local.tee $2 + i32.const 2040 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 1952 + i32.const 14 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-elementaccess/arr + i32.const 0 + global.get $resolve-elementaccess/arr + i32.const 0 + call $~lib/typedarray/Float32Array#__get + f32.const 10 + f32.add + call $~lib/typedarray/Float32Array#__set + global.get $resolve-elementaccess/arr + i32.const 0 + call $~lib/typedarray/Float32Array#__get + f32.const 21 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 1952 + i32.const 20 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + call $~lib/rt/stub/__release + ) + (func $start (; 29 ;) (type $FUNCSIG$v) + call $start:resolve-elementaccess + ) + (func $null (; 30 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/resolve-function-expression.untouched.wat b/tests/compiler/resolve-function-expression.untouched.wat index e69de29bb2..975bb7a130 100644 --- a/tests/compiler/resolve-function-expression.untouched.wat +++ b/tests/compiler/resolve-function-expression.untouched.wat @@ -0,0 +1,641 @@ +(module + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$v (func)) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (memory $0 1) + (data (i32.const 8) "<\00\00\00\01\00\00\00\01\00\00\00<\00\00\00r\00e\00s\00o\00l\00v\00e\00-\00f\00u\00n\00c\00t\00i\00o\00n\00-\00e\00x\00p\00r\00e\00s\00s\00i\00o\00n\00.\00t\00s\00") + (data (i32.const 88) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") + (data (i32.const 112) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") + (data (i32.const 528) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\80\00\00\00\80\00\00\00\90\01\00\00d\00\00\00") + (data (i32.const 560) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\004\002\00") + (table $0 4 funcref) + (elem (i32.const 0) $null $start:resolve-function-expression~anonymous|0 $start:resolve-function-expression~anonymous|1 $start:resolve-function-expression~anonymous|2) + (global $~lib/argc (mut i32) (i32.const 0)) + (global $~lib/rt/stub/startOffset (mut i32) (i32.const 0)) + (global $~lib/rt/stub/offset (mut i32) (i32.const 0)) + (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) + (global $~lib/heap/__heap_base i32 (i32.const 580)) + (export "memory" (memory $0)) + (start $start) + (func $start:resolve-function-expression~anonymous|0 (; 1 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 40 + i32.add + ) + (func $start:resolve-function-expression~anonymous|1 (; 2 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 41 + i32.add + ) + (func $start:resolve-function-expression~anonymous|2 (; 3 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 42 + i32.add + ) + (func $~lib/rt/stub/__retain (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + ) + (func $~lib/util/number/decimalCount32 (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + i32.const 100000 + i32.lt_u + if + local.get $0 + i32.const 100 + i32.lt_u + if + i32.const 1 + i32.const 2 + local.get $0 + i32.const 10 + i32.lt_u + select + return + else + i32.const 4 + i32.const 5 + local.get $0 + i32.const 10000 + i32.lt_u + select + local.set $1 + i32.const 3 + local.get $1 + local.get $0 + i32.const 1000 + i32.lt_u + select + return + end + unreachable + else + local.get $0 + i32.const 10000000 + i32.lt_u + if + i32.const 6 + i32.const 7 + local.get $0 + i32.const 1000000 + i32.lt_u + select + return + else + i32.const 9 + i32.const 10 + local.get $0 + i32.const 1000000000 + i32.lt_u + select + local.set $1 + i32.const 8 + local.get $1 + local.get $0 + i32.const 100000000 + i32.lt_u + select + return + end + unreachable + end + unreachable + ) + (func $~lib/rt/stub/maybeGrowMemory (; 6 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + memory.size + local.set $1 + local.get $1 + i32.const 16 + i32.shl + local.set $2 + local.get $0 + local.get $2 + i32.gt_u + if + local.get $0 + local.get $2 + i32.sub + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $3 + local.get $1 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.set $4 + local.get $4 + memory.grow + i32.const 0 + i32.lt_s + if + local.get $3 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + end + local.get $0 + global.set $~lib/rt/stub/offset + ) + (func $~lib/rt/stub/__alloc (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.const 1073741808 + i32.gt_u + if + unreachable + end + global.get $~lib/rt/stub/offset + i32.const 16 + i32.add + local.set $2 + local.get $0 + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.tee $3 + i32.const 16 + local.tee $4 + local.get $3 + local.get $4 + i32.gt_u + select + local.set $5 + local.get $2 + local.get $5 + i32.add + call $~lib/rt/stub/maybeGrowMemory + local.get $2 + i32.const 16 + i32.sub + local.set $6 + local.get $6 + local.get $5 + i32.store + local.get $6 + i32.const -1 + i32.store offset=4 + local.get $6 + local.get $1 + i32.store offset=8 + local.get $6 + local.get $0 + i32.store offset=12 + local.get $2 + ) + (func $~lib/util/number/utoa32_lut (; 8 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + i32.const 544 + i32.load offset=4 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i32.const 10000 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $1 + i32.const 10000 + i32.div_u + local.set $4 + local.get $1 + i32.const 10000 + i32.rem_u + local.set $5 + local.get $4 + local.set $1 + local.get $5 + i32.const 100 + i32.div_u + local.set $6 + local.get $5 + i32.const 100 + i32.rem_u + local.set $7 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $8 + local.get $3 + local.get $7 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $9 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $8 + local.get $9 + i64.const 32 + i64.shl + i64.or + i64.store + br $continue|0 + end + unreachable + end + local.get $1 + i32.const 100 + i32.ge_u + if + local.get $1 + i32.const 100 + i32.div_u + local.set $7 + local.get $1 + i32.const 100 + i32.rem_u + local.set $6 + local.get $7 + local.set $1 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + end + local.get $1 + i32.const 10 + i32.ge_u + if + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + else + local.get $2 + i32.const 1 + i32.sub + local.set $2 + i32.const 48 + local.get $1 + i32.add + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store16 + end + ) + (func $~lib/util/number/itoa32 (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.eqz + if + i32.const 104 + call $~lib/rt/stub/__retain + return + end + local.get $0 + i32.const 0 + i32.lt_s + local.set $1 + local.get $1 + if + i32.const 0 + local.get $0 + i32.sub + local.set $0 + end + local.get $0 + call $~lib/util/number/decimalCount32 + local.get $1 + i32.add + local.set $2 + local.get $2 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/stub/__alloc + local.set $3 + local.get $3 + local.set $6 + local.get $0 + local.set $5 + local.get $2 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + local.get $1 + if + local.get $3 + i32.const 45 + i32.store16 + end + local.get $3 + call $~lib/rt/stub/__retain + ) + (func $~lib/util/number/itoa (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa32 + return + ) + (func $~lib/number/I32#toString (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa + ) + (func $~lib/rt/stub/__release (; 12 ;) (type $FUNCSIG$vi) (param $0 i32) + nop + ) + (func $~lib/string/String#get:length (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 16 + i32.sub + i32.load offset=12 + i32.const 1 + i32.shr_u + ) + (func $~lib/util/string/compareImpl (; 14 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + local.get $2 + call $~lib/rt/stub/__retain + drop + i32.const 0 + local.set $5 + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $6 + local.get $2 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $7 + block $break|0 + loop $continue|0 + local.get $4 + if (result i32) + local.get $6 + i32.load16_u + local.get $7 + i32.load16_u + i32.sub + local.tee $5 + i32.eqz + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + local.get $6 + i32.const 2 + i32.add + local.set $6 + local.get $7 + i32.const 2 + i32.add + local.set $7 + br $continue|0 + end + unreachable + end + local.get $5 + local.set $8 + local.get $0 + call $~lib/rt/stub/__release + local.get $2 + call $~lib/rt/stub/__release + local.get $8 + ) + (func $~lib/string/String.__eq (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + local.get $1 + call $~lib/rt/stub/__retain + drop + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 0 + i32.eq + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + return + end + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $3 + local.get $1 + call $~lib/string/String#get:length + i32.ne + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + local.get $1 + i32.const 0 + local.get $3 + call $~lib/util/string/compareImpl + i32.eqz + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $start:resolve-function-expression (; 16 ;) (type $FUNCSIG$v) + (local $0 i32) + i32.const 1 + global.set $~lib/argc + i32.const 2 + i32.const 1 + call_indirect (type $FUNCSIG$ii) + i32.const 42 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + i32.const 1 + i32.const 2 + call_indirect (type $FUNCSIG$ii) + i32.const 42 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 6 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/heap/__heap_base + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + global.set $~lib/rt/stub/startOffset + global.get $~lib/rt/stub/startOffset + global.set $~lib/rt/stub/offset + i32.const 1 + global.set $~lib/argc + i32.const 0 + i32.const 3 + call_indirect (type $FUNCSIG$ii) + call $~lib/number/I32#toString + local.tee $0 + i32.const 576 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 11 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/stub/__release + ) + (func $start (; 17 ;) (type $FUNCSIG$v) + call $start:resolve-function-expression + ) + (func $null (; 18 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/resolve-ternary.untouched.wat b/tests/compiler/resolve-ternary.untouched.wat index e69de29bb2..7e7773a649 100644 --- a/tests/compiler/resolve-ternary.untouched.wat +++ b/tests/compiler/resolve-ternary.untouched.wat @@ -0,0 +1,5465 @@ +(module + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$v (func)) + (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$vii (func (param i32 i32))) + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$idi (func (param f64 i32) (result i32))) + (type $FUNCSIG$id (func (param f64) (result i32))) + (type $FUNCSIG$iid (func (param i32 f64) (result i32))) + (type $FUNCSIG$jii (func (param i32 i32) (result i64))) + (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (memory $0 1) + (data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") + (data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") + (data (i32.const 112) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") + (data (i32.const 160) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") + (data (i32.const 216) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") + (data (i32.const 256) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") + (data (i32.const 280) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") + (data (i32.const 696) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00(\01\00\00(\01\00\00\90\01\00\00d\00\00\00") + (data (i32.const 728) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\001\00") + (data (i32.const 752) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00r\00e\00s\00o\00l\00v\00e\00-\00t\00e\00r\00n\00a\00r\00y\00.\00t\00s\00") + (data (i32.const 808) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") + (data (i32.const 832) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") + (data (i32.const 856) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 896) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 928) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8 (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa32 + return + ) + (func $~lib/number/I32#toString (; 31 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa + ) + (func $~lib/string/String#get:length (; 32 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 16 + i32.sub + i32.load offset=12 + i32.const 1 + i32.shr_u + ) + (func $~lib/util/string/compareImpl (; 33 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/rt/pure/__retain + drop + i32.const 0 + local.set $5 + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $6 + local.get $2 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $7 + block $break|0 + loop $continue|0 + local.get $4 + if (result i32) + local.get $6 + i32.load16_u + local.get $7 + i32.load16_u + i32.sub + local.tee $5 + i32.eqz + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + local.get $6 + i32.const 2 + i32.add + local.set $6 + local.get $7 + i32.const 2 + i32.add + local.set $7 + br $continue|0 + end + unreachable + end + local.get $5 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/string/String.__eq (; 34 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 0 + i32.eq + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $3 + local.get $1 + call $~lib/string/String#get:length + i32.ne + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + local.get $1 + i32.const 0 + local.get $3 + call $~lib/util/string/compareImpl + i32.eqz + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/number/isFinite (; 35 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.eq + ) + (func $~lib/number/isNaN (; 36 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.ne + ) + (func $~lib/array/Array#__unchecked_get (; 37 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + i64.load + ) + (func $~lib/array/Array#__unchecked_get (; 38 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.load16_s + ) + (func $~lib/util/number/genDigits (; 39 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i64) + (local $11 i32) + (local $12 i32) + (local $13 i64) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i32) + (local $25 i32) + (local $26 i32) + i32.const 0 + local.get $4 + i32.sub + local.set $7 + i64.const 1 + local.get $7 + i64.extend_i32_s + i64.shl + local.set $8 + local.get $8 + i64.const 1 + i64.sub + local.set $9 + local.get $3 + local.get $1 + i64.sub + local.set $10 + local.get $4 + local.set $11 + local.get $3 + local.get $7 + i64.extend_i32_s + i64.shr_u + i32.wrap_i64 + local.set $12 + local.get $3 + local.get $9 + i64.and + local.set $13 + local.get $12 + call $~lib/util/number/decimalCount32 + local.set $14 + local.get $6 + local.set $15 + i32.const 1968 + i32.load offset=4 + local.set $16 + block $break|0 + loop $continue|0 + local.get $14 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|0 + block $break|1 + block $case10|1 + block $case9|1 + block $case8|1 + block $case7|1 + block $case6|1 + block $case5|1 + block $case4|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $14 + local.set $18 + local.get $18 + i32.const 10 + i32.eq + br_if $case0|1 + local.get $18 + i32.const 9 + i32.eq + br_if $case1|1 + local.get $18 + i32.const 8 + i32.eq + br_if $case2|1 + local.get $18 + i32.const 7 + i32.eq + br_if $case3|1 + local.get $18 + i32.const 6 + i32.eq + br_if $case4|1 + local.get $18 + i32.const 5 + i32.eq + br_if $case5|1 + local.get $18 + i32.const 4 + i32.eq + br_if $case6|1 + local.get $18 + i32.const 3 + i32.eq + br_if $case7|1 + local.get $18 + i32.const 2 + i32.eq + br_if $case8|1 + local.get $18 + i32.const 1 + i32.eq + br_if $case9|1 + br $case10|1 + end + local.get $12 + i32.const 1000000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100 + i32.div_u + local.set $17 + local.get $12 + i32.const 100 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10 + i32.div_u + local.set $17 + local.get $12 + i32.const 10 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + local.set $17 + i32.const 0 + local.set $12 + br $break|1 + end + i32.const 0 + local.set $17 + br $break|1 + end + local.get $17 + local.get $15 + i32.or + if + local.get $0 + local.get $15 + local.tee $18 + i32.const 1 + i32.add + local.set $15 + local.get $18 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $17 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $12 + i64.extend_i32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.get $13 + i64.add + local.set $19 + local.get $19 + local.get $5 + i64.le_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $19 + local.set $22 + local.get $16 + local.get $14 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $25 + local.get $25 + i32.load16_u + local.set $26 + block $break|2 + loop $continue|2 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|2 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|2 + end + unreachable + end + local.get $25 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|0 + end + unreachable + end + loop $continue|3 + local.get $13 + i64.const 10 + i64.mul + local.set $13 + local.get $5 + i64.const 10 + i64.mul + local.set $5 + local.get $13 + local.get $7 + i64.extend_i32_s + i64.shr_u + local.set $19 + local.get $19 + local.get $15 + i64.extend_i32_s + i64.or + i64.const 0 + i64.ne + if + local.get $0 + local.get $15 + local.tee $17 + i32.const 1 + i32.add + local.set $15 + local.get $17 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $19 + i32.wrap_i64 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $13 + local.get $9 + i64.and + local.set $13 + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $13 + local.get $5 + i64.lt_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $10 + local.get $16 + i32.const 0 + local.get $14 + i32.sub + i32.const 2 + i32.shl + i32.add + i64.load32_u + i64.mul + local.set $10 + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $13 + local.set $22 + local.get $8 + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $17 + local.get $17 + i32.load16_u + local.set $26 + block $break|4 + loop $continue|4 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|4 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|4 + end + unreachable + end + local.get $17 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|3 + end + unreachable + ) + (func $~lib/util/number/prettify (; 40 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $2 + i32.eqz + if + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 2 + i32.add + return + end + local.get $1 + local.get $2 + i32.add + local.set $3 + local.get $1 + local.get $3 + i32.le_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + block $break|0 + local.get $1 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $3 + i32.const 2 + i32.add + return + else + local.get $3 + i32.const 0 + i32.gt_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $4 + local.get $4 + i32.const 2 + i32.add + local.get $4 + i32.const 0 + local.get $2 + i32.sub + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.store16 + local.get $1 + i32.const 1 + i32.add + return + else + i32.const -6 + local.get $3 + i32.lt_s + if (result i32) + local.get $3 + i32.const 0 + i32.le_s + else + i32.const 0 + end + if + i32.const 2 + local.get $3 + i32.sub + local.set $4 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $1 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + i32.const 48 + i32.const 46 + i32.const 16 + i32.shl + i32.or + i32.store + block $break|1 + i32.const 2 + local.set $5 + loop $loop|1 + local.get $5 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|1 + end + unreachable + end + local.get $1 + local.get $4 + i32.add + return + else + local.get $1 + i32.const 1 + i32.eq + if + local.get $0 + i32.const 101 + i32.store16 offset=2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + local.get $5 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $5 + i32.sub + local.set $5 + end + local.get $5 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $7 + local.get $4 + local.set $10 + local.get $5 + local.set $9 + local.get $7 + local.set $8 + local.get $10 + local.get $9 + local.get $8 + call $~lib/util/number/utoa32_lut + local.get $4 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $7 + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + else + local.get $1 + i32.const 1 + i32.shl + local.set $7 + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.const 2 + i32.add + local.get $7 + i32.const 2 + i32.sub + call $~lib/memory/memory.copy + local.get $0 + i32.const 46 + i32.store16 offset=2 + local.get $0 + local.get $7 + i32.add + i32.const 101 + i32.store16 offset=2 + local.get $1 + local.get $0 + local.get $7 + i32.add + i32.const 4 + i32.add + local.set $9 + local.get $3 + i32.const 1 + i32.sub + local.set $8 + local.get $8 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $8 + i32.sub + local.set $8 + end + local.get $8 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $4 + local.get $9 + local.set $11 + local.get $8 + local.set $5 + local.get $4 + local.set $10 + local.get $11 + local.get $5 + local.get $10 + call $~lib/util/number/utoa32_lut + local.get $9 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $4 + i32.add + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + end + unreachable + end + unreachable + end + unreachable + end + unreachable + ) + (func $~lib/util/number/dtoa_core (; 41 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 i64) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i32) + (local $11 i64) + (local $12 i64) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 f64) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i64) + (local $25 i64) + (local $26 i32) + (local $27 i64) + (local $28 i32) + local.get $1 + f64.const 0 + f64.lt + local.set $2 + local.get $2 + if + local.get $1 + f64.neg + local.set $1 + local.get $0 + i32.const 45 + i32.store16 + end + local.get $1 + local.set $5 + local.get $0 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i64.reinterpret_f64 + local.set $6 + local.get $6 + i64.const 9218868437227405312 + i64.and + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.set $7 + local.get $6 + i64.const 4503599627370495 + i64.and + local.set $8 + local.get $7 + i32.const 0 + i32.ne + i64.extend_i32_u + i64.const 52 + i64.shl + local.get $8 + i64.add + local.set $9 + local.get $7 + i32.const 1 + local.get $7 + i32.const 0 + i32.ne + select + i32.const 1023 + i32.const 52 + i32.add + i32.sub + local.set $7 + local.get $9 + local.set $11 + local.get $7 + local.set $10 + local.get $11 + i64.const 1 + i64.shl + i64.const 1 + i64.add + local.set $12 + local.get $10 + i32.const 1 + i32.sub + local.set $13 + local.get $12 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $12 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $12 + local.get $13 + local.get $14 + i32.sub + local.set $13 + i32.const 1 + local.get $11 + i64.const 4503599627370496 + i64.eq + i32.add + local.set $15 + local.get $12 + global.set $~lib/util/number/_frc_plus + local.get $11 + local.get $15 + i64.extend_i32_s + i64.shl + i64.const 1 + i64.sub + local.get $10 + local.get $15 + i32.sub + local.get $13 + i32.sub + i64.extend_i32_s + i64.shl + global.set $~lib/util/number/_frc_minus + local.get $13 + global.set $~lib/util/number/_exp + global.get $~lib/util/number/_exp + local.set $10 + i32.const -61 + local.get $10 + i32.sub + f64.convert_i32_s + f64.const 0.30102999566398114 + f64.mul + f64.const 347 + f64.add + local.set $16 + local.get $16 + i32.trunc_f64_s + local.set $15 + local.get $15 + local.get $15 + f64.convert_i32_s + local.get $16 + f64.ne + i32.add + local.set $15 + local.get $15 + i32.const 3 + i32.shr_s + i32.const 1 + i32.add + local.set $14 + i32.const 348 + local.get $14 + i32.const 3 + i32.shl + i32.sub + global.set $~lib/util/number/_K + i32.const 1656 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_frc_pow + i32.const 1880 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_exp_pow + local.get $9 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $9 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $9 + local.get $7 + local.get $14 + i32.sub + local.set $7 + global.get $~lib/util/number/_frc_pow + local.set $12 + global.get $~lib/util/number/_exp_pow + local.set $15 + local.get $9 + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $24 + local.get $24 + i64.const 2147483647 + i64.add + local.set $24 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $24 + i64.const 32 + i64.shr_u + local.set $24 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $24 + i64.add + local.set $24 + local.get $7 + local.set $10 + local.get $15 + local.set $13 + local.get $10 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $10 + global.get $~lib/util/number/_frc_plus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $23 + local.get $11 + i64.const 4294967295 + i64.and + local.set $22 + local.get $17 + i64.const 32 + i64.shr_u + local.set $21 + local.get $11 + i64.const 32 + i64.shr_u + local.set $20 + local.get $23 + local.get $22 + i64.mul + local.set $19 + local.get $21 + local.get $22 + i64.mul + local.get $19 + i64.const 32 + i64.shr_u + i64.add + local.set $18 + local.get $23 + local.get $20 + i64.mul + local.get $18 + i64.const 4294967295 + i64.and + i64.add + local.set $25 + local.get $25 + i64.const 2147483647 + i64.add + local.set $25 + local.get $18 + i64.const 32 + i64.shr_u + local.set $18 + local.get $25 + i64.const 32 + i64.shr_u + local.set $25 + local.get $21 + local.get $20 + i64.mul + local.get $18 + i64.add + local.get $25 + i64.add + i64.const 1 + i64.sub + local.set $25 + global.get $~lib/util/number/_exp + local.set $26 + local.get $15 + local.set $13 + local.get $26 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $26 + global.get $~lib/util/number/_frc_minus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $27 + local.get $27 + i64.const 2147483647 + i64.add + local.set $27 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $27 + i64.const 32 + i64.shr_u + local.set $27 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $27 + i64.add + i64.const 1 + i64.add + local.set $27 + local.get $25 + local.get $27 + i64.sub + local.set $23 + local.get $4 + local.get $24 + local.get $10 + local.get $25 + local.get $26 + local.get $23 + local.get $3 + call $~lib/util/number/genDigits + local.set $28 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $28 + local.get $2 + i32.sub + global.get $~lib/util/number/_K + call $~lib/util/number/prettify + local.set $28 + local.get $28 + local.get $2 + i32.add + ) + (func $~lib/string/String#substring (; 42 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $6 + local.get $2 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $7 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + i32.const 1 + i32.shl + local.set $8 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + i32.const 1 + i32.shl + local.set $9 + local.get $9 + local.get $8 + i32.sub + local.set $3 + local.get $3 + i32.eqz + if + i32.const 2000 + call $~lib/rt/pure/__retain + return + end + local.get $8 + i32.eqz + if (result i32) + local.get $9 + local.get $0 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + i32.eq + else + i32.const 0 + end + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $3 + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $10 + local.get $10 + local.get $0 + local.get $8 + i32.add + local.get $3 + call $~lib/memory/memory.copy + local.get $10 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/dtoa (; 43 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + f64.const 0 + f64.eq + if + i32.const 824 + call $~lib/rt/pure/__retain + return + end + local.get $0 + call $~lib/number/isFinite + i32.eqz + if + local.get $0 + call $~lib/number/isNaN + if + i32.const 848 + call $~lib/rt/pure/__retain + return + end + i32.const 872 + i32.const 912 + local.get $0 + f64.const 0 + f64.lt + select + call $~lib/rt/pure/__retain + return + end + i32.const 28 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $1 + local.get $1 + local.get $0 + call $~lib/util/number/dtoa_core + local.set $2 + local.get $2 + i32.const 28 + i32.eq + if + local.get $1 + call $~lib/rt/pure/__retain + return + end + local.get $1 + i32.const 0 + local.get $2 + call $~lib/string/String#substring + local.set $3 + local.get $1 + call $~lib/rt/tlsf/__free + local.get $3 + ) + (func $~lib/number/F64#toString (; 44 ;) (type $FUNCSIG$idi) (param $0 f64) (param $1 i32) (result i32) + local.get $0 + call $~lib/util/number/dtoa + ) + (func $start:resolve-ternary~anonymous|0 (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 1 + i32.add + ) + (func $start:resolve-ternary~anonymous|1 (; 46 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 2 + i32.add + ) + (func $resolve-ternary/g1 (; 47 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 3 + i32.add + ) + (func $resolve-ternary/g2 (; 48 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 4 + i32.add + ) + (func $start:resolve-ternary (; 49 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + global.get $resolve-ternary/b + if (result i32) + i32.const 1 + else + i32.const 2 + end + call $~lib/number/I32#toString + local.tee $0 + i32.const 744 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 768 + i32.const 5 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-ternary/b + if (result f64) + f64.const 1 + else + f64.const 2 + end + i32.const 0 + call $~lib/number/F64#toString + local.tee $1 + i32.const 2016 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 768 + i32.const 13 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + i32.const 1 + global.get $resolve-ternary/b + if (result i32) + i32.const 1 + else + i32.const 2 + end + call_indirect (type $FUNCSIG$ii) + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 768 + i32.const 24 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + i32.const 1 + global.get $resolve-ternary/b + if (result i32) + i32.const 3 + else + i32.const 4 + end + call_indirect (type $FUNCSIG$ii) + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 768 + i32.const 35 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + i32.const 1 + global.get $resolve-ternary/b + if (result i32) + i32.const 2 + else + i32.const 4 + end + call_indirect (type $FUNCSIG$ii) + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 768 + i32.const 43 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $start (; 50 ;) (type $FUNCSIG$v) + call $start:resolve-ternary + ) + (func $~lib/array/Array#__visit_impl (; 51 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 53 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/rt/pure/__visit (; 54 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.lt_u + if + return + end + local.get $0 + i32.const 16 + i32.sub + local.set $2 + block $break|0 + block $case5|0 + block $case4|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $1 + local.set $3 + local.get $3 + i32.const 1 + i32.eq + br_if $case0|0 + local.get $3 + i32.const 2 + i32.eq + br_if $case1|0 + local.get $3 + i32.const 3 + i32.eq + br_if $case2|0 + local.get $3 + i32.const 4 + i32.eq + br_if $case3|0 + local.get $3 + i32.const 5 + i32.eq + br_if $case4|0 + br $case5|0 + end + local.get $2 + call $~lib/rt/pure/decrement + br $break|0 + end + local.get $2 + i32.load offset=4 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 75 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 1 + i32.sub + i32.store offset=4 + local.get $2 + call $~lib/rt/pure/markGray + br $break|0 + end + local.get $2 + call $~lib/rt/pure/scan + br $break|0 + end + local.get $2 + i32.load offset=4 + local.set $3 + local.get $3 + i32.const -268435456 + i32.and + local.get $3 + i32.const 1 + i32.add + i32.const -268435456 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 86 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $3 + i32.const 1 + i32.add + i32.store offset=4 + local.get $3 + i32.const 1879048192 + i32.and + i32.const 0 + i32.ne + if + local.get $2 + call $~lib/rt/pure/scanBlack + end + br $break|0 + end + local.get $2 + call $~lib/rt/pure/collectWhite + br $break|0 + end + i32.const 0 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 97 + i32.const 24 + call $~lib/builtins/abort + unreachable + end + end + ) + (func $~lib/rt/__visit_members (; 55 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + block $block$4$break + block $switch$1$default + block $switch$1$case$7 + block $switch$1$case$6 + block $switch$1$case$5 + block $switch$1$case$4 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$6 $switch$1$case$7 $switch$1$default + end + return + end + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + unreachable + end + local.get $0 + i32.load + local.tee $2 + if + local.get $2 + local.get $1 + call $~lib/rt/pure/__visit + end + return + ) + (func $null (; 56 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/resolve-unary.untouched.wat b/tests/compiler/resolve-unary.untouched.wat index e69de29bb2..189238ada3 100644 --- a/tests/compiler/resolve-unary.untouched.wat +++ b/tests/compiler/resolve-unary.untouched.wat @@ -0,0 +1,1220 @@ +(module + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$v (func)) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (memory $0 1) + (data (i32.const 8) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") + (data (i32.const 32) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") + (data (i32.const 448) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\000\00\00\000\00\00\00\90\01\00\00d\00\00\00") + (data (i32.const 480) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00-\001\00") + (data (i32.const 504) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00r\00e\00s\00o\00l\00v\00e\00-\00u\00n\00a\00r\00y\00.\00t\00s\00") + (data (i32.const 552) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\001\00") + (data (i32.const 576) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\002\00") + (data (i32.const 600) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00t\00r\00u\00e\00") + (data (i32.const 624) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00f\00a\00l\00s\00e\00") + (data (i32.const 656) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00-\002\00") + (data (i32.const 680) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00+\00") + (data (i32.const 704) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00-\00") + (data (i32.const 728) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00!\00") + (data (i32.const 752) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00~\00") + (data (i32.const 776) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00+\00+\00i\00") + (data (i32.const 800) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00-\00-\00i\00") + (data (i32.const 824) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00i\00+\00+\00") + (data (i32.const 848) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00i\00-\00-\00") + (table $0 1 funcref) + (elem (i32.const 0) $null) + (global $~lib/rt/stub/startOffset (mut i32) (i32.const 0)) + (global $~lib/rt/stub/offset (mut i32) (i32.const 0)) + (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) + (global $resolve-unary/a (mut i32) (i32.const 1)) + (global $resolve-unary/b (mut i32) (i32.const 1)) + (global $resolve-unary/foo (mut i32) (i32.const 0)) + (global $resolve-unary/bar (mut i32) (i32.const 0)) + (global $~lib/heap/__heap_base i32 (i32.const 872)) + (export "memory" (memory $0)) + (start $start) + (func $~lib/rt/stub/__retain (; 1 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + ) + (func $~lib/util/number/decimalCount32 (; 2 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + i32.const 100000 + i32.lt_u + if + local.get $0 + i32.const 100 + i32.lt_u + if + i32.const 1 + i32.const 2 + local.get $0 + i32.const 10 + i32.lt_u + select + return + else + i32.const 4 + i32.const 5 + local.get $0 + i32.const 10000 + i32.lt_u + select + local.set $1 + i32.const 3 + local.get $1 + local.get $0 + i32.const 1000 + i32.lt_u + select + return + end + unreachable + else + local.get $0 + i32.const 10000000 + i32.lt_u + if + i32.const 6 + i32.const 7 + local.get $0 + i32.const 1000000 + i32.lt_u + select + return + else + i32.const 9 + i32.const 10 + local.get $0 + i32.const 1000000000 + i32.lt_u + select + local.set $1 + i32.const 8 + local.get $1 + local.get $0 + i32.const 100000000 + i32.lt_u + select + return + end + unreachable + end + unreachable + ) + (func $~lib/rt/stub/maybeGrowMemory (; 3 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + memory.size + local.set $1 + local.get $1 + i32.const 16 + i32.shl + local.set $2 + local.get $0 + local.get $2 + i32.gt_u + if + local.get $0 + local.get $2 + i32.sub + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $3 + local.get $1 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.set $4 + local.get $4 + memory.grow + i32.const 0 + i32.lt_s + if + local.get $3 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + end + local.get $0 + global.set $~lib/rt/stub/offset + ) + (func $~lib/rt/stub/__alloc (; 4 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.const 1073741808 + i32.gt_u + if + unreachable + end + global.get $~lib/rt/stub/offset + i32.const 16 + i32.add + local.set $2 + local.get $0 + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.tee $3 + i32.const 16 + local.tee $4 + local.get $3 + local.get $4 + i32.gt_u + select + local.set $5 + local.get $2 + local.get $5 + i32.add + call $~lib/rt/stub/maybeGrowMemory + local.get $2 + i32.const 16 + i32.sub + local.set $6 + local.get $6 + local.get $5 + i32.store + local.get $6 + i32.const -1 + i32.store offset=4 + local.get $6 + local.get $1 + i32.store offset=8 + local.get $6 + local.get $0 + i32.store offset=12 + local.get $2 + ) + (func $~lib/util/number/utoa32_lut (; 5 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + i32.const 464 + i32.load offset=4 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i32.const 10000 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $1 + i32.const 10000 + i32.div_u + local.set $4 + local.get $1 + i32.const 10000 + i32.rem_u + local.set $5 + local.get $4 + local.set $1 + local.get $5 + i32.const 100 + i32.div_u + local.set $6 + local.get $5 + i32.const 100 + i32.rem_u + local.set $7 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $8 + local.get $3 + local.get $7 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $9 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $8 + local.get $9 + i64.const 32 + i64.shl + i64.or + i64.store + br $continue|0 + end + unreachable + end + local.get $1 + i32.const 100 + i32.ge_u + if + local.get $1 + i32.const 100 + i32.div_u + local.set $7 + local.get $1 + i32.const 100 + i32.rem_u + local.set $6 + local.get $7 + local.set $1 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + end + local.get $1 + i32.const 10 + i32.ge_u + if + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + else + local.get $2 + i32.const 1 + i32.sub + local.set $2 + i32.const 48 + local.get $1 + i32.add + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store16 + end + ) + (func $~lib/util/number/itoa32 (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.eqz + if + i32.const 24 + call $~lib/rt/stub/__retain + return + end + local.get $0 + i32.const 0 + i32.lt_s + local.set $1 + local.get $1 + if + i32.const 0 + local.get $0 + i32.sub + local.set $0 + end + local.get $0 + call $~lib/util/number/decimalCount32 + local.get $1 + i32.add + local.set $2 + local.get $2 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/stub/__alloc + local.set $3 + local.get $3 + local.set $6 + local.get $0 + local.set $5 + local.get $2 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + local.get $1 + if + local.get $3 + i32.const 45 + i32.store16 + end + local.get $3 + call $~lib/rt/stub/__retain + ) + (func $~lib/util/number/itoa (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa32 + return + ) + (func $~lib/number/I32#toString (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa + ) + (func $~lib/rt/stub/__release (; 9 ;) (type $FUNCSIG$vi) (param $0 i32) + nop + ) + (func $~lib/string/String#get:length (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 16 + i32.sub + i32.load offset=12 + i32.const 1 + i32.shr_u + ) + (func $~lib/util/string/compareImpl (; 11 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + local.get $2 + call $~lib/rt/stub/__retain + drop + i32.const 0 + local.set $5 + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $6 + local.get $2 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $7 + block $break|0 + loop $continue|0 + local.get $4 + if (result i32) + local.get $6 + i32.load16_u + local.get $7 + i32.load16_u + i32.sub + local.tee $5 + i32.eqz + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + local.get $6 + i32.const 2 + i32.add + local.set $6 + local.get $7 + i32.const 2 + i32.add + local.set $7 + br $continue|0 + end + unreachable + end + local.get $5 + local.set $8 + local.get $0 + call $~lib/rt/stub/__release + local.get $2 + call $~lib/rt/stub/__release + local.get $8 + ) + (func $~lib/string/String.__eq (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + local.get $1 + call $~lib/rt/stub/__retain + drop + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 0 + i32.eq + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + return + end + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $3 + local.get $1 + call $~lib/string/String#get:length + i32.ne + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + local.get $1 + i32.const 0 + local.get $3 + call $~lib/util/string/compareImpl + i32.eqz + local.set $2 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + ) + (func $~lib/number/Bool#toString (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + local.get $0 + if (result i32) + i32.const 616 + call $~lib/rt/stub/__retain + local.tee $1 + else + i32.const 640 + call $~lib/rt/stub/__retain + local.tee $2 + end + call $~lib/rt/stub/__retain + ) + (func $resolve-unary/Foo#constructor (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 4 + call $~lib/rt/stub/__alloc + call $~lib/rt/stub/__retain + local.set $0 + end + local.get $0 + ) + (func $resolve-unary/Foo#plus (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + i32.const 696 + call $~lib/rt/stub/__retain + ) + (func $~lib/string/String#toString (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/rt/stub/__retain + ) + (func $resolve-unary/Foo#minus (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + i32.const 720 + call $~lib/rt/stub/__retain + ) + (func $resolve-unary/Foo#prefix_inc (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/rt/stub/__retain + ) + (func $resolve-unary/Foo#self (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/rt/stub/__retain + ) + (func $resolve-unary/Foo#prefix_dec (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/rt/stub/__retain + ) + (func $resolve-unary/Foo#not (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + i32.const 744 + call $~lib/rt/stub/__retain + ) + (func $resolve-unary/Foo#bitwise_not (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + i32.const 768 + call $~lib/rt/stub/__retain + ) + (func $resolve-unary/Foo#postfix_inc (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/rt/stub/__retain + ) + (func $resolve-unary/Foo#postfix_dec (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/rt/stub/__retain + ) + (func $resolve-unary/Bar#constructor (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 5 + call $~lib/rt/stub/__alloc + call $~lib/rt/stub/__retain + local.set $0 + end + local.get $0 + ) + (func $resolve-unary/Bar.prefix_inc (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + i32.const 792 + call $~lib/rt/stub/__retain + local.set $1 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + ) + (func $resolve-unary/Bar.prefix_dec (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + i32.const 816 + call $~lib/rt/stub/__retain + local.set $1 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + ) + (func $resolve-unary/Bar.postfix_inc (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + i32.const 840 + call $~lib/rt/stub/__retain + local.set $1 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + ) + (func $resolve-unary/Bar.postfix_dec (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/stub/__retain + drop + i32.const 864 + call $~lib/rt/stub/__retain + local.set $1 + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + ) + (func $start:resolve-unary (; 30 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + global.get $~lib/heap/__heap_base + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + global.set $~lib/rt/stub/startOffset + global.get $~lib/rt/stub/startOffset + global.set $~lib/rt/stub/offset + i32.const -1 + call $~lib/number/I32#toString + local.tee $0 + i32.const 496 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 2 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + call $~lib/number/I32#toString + local.tee $1 + i32.const 568 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 7 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/a + i32.const 1 + i32.add + global.set $resolve-unary/a + global.get $resolve-unary/a + call $~lib/number/I32#toString + local.tee $2 + i32.const 592 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 13 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/a + i32.const 1 + i32.sub + global.set $resolve-unary/a + global.get $resolve-unary/a + call $~lib/number/I32#toString + local.tee $3 + i32.const 568 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 18 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/a + i32.eqz + call $~lib/number/Bool#toString + local.tee $4 + i32.const 640 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 23 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/a + i32.eqz + i32.eqz + call $~lib/number/Bool#toString + local.tee $5 + i32.const 616 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 28 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/a + i32.const -1 + i32.xor + call $~lib/number/I32#toString + local.tee $6 + i32.const 672 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 33 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/b + local.tee $7 + i32.const 1 + i32.add + global.set $resolve-unary/b + local.get $7 + call $~lib/number/I32#toString + local.tee $7 + i32.const 568 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 41 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/b + local.tee $8 + i32.const 1 + i32.sub + global.set $resolve-unary/b + local.get $8 + call $~lib/number/I32#toString + local.tee $8 + i32.const 592 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 46 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $resolve-unary/Foo#constructor + global.set $resolve-unary/foo + global.get $resolve-unary/foo + call $resolve-unary/Foo#plus + local.tee $9 + call $~lib/string/String#toString + local.tee $10 + i32.const 696 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 91 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/foo + call $resolve-unary/Foo#minus + local.tee $11 + call $~lib/string/String#toString + local.tee $12 + i32.const 720 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 96 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/foo + call $resolve-unary/Foo#prefix_inc + local.tee $13 + local.tee $14 + global.get $resolve-unary/foo + local.tee $15 + i32.ne + if + local.get $14 + call $~lib/rt/stub/__retain + drop + local.get $15 + call $~lib/rt/stub/__release + end + local.get $14 + global.set $resolve-unary/foo + global.get $resolve-unary/foo + call $resolve-unary/Foo#self + local.tee $14 + global.get $resolve-unary/foo + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 101 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/foo + call $resolve-unary/Foo#prefix_dec + local.tee $15 + local.tee $16 + global.get $resolve-unary/foo + local.tee $17 + i32.ne + if + local.get $16 + call $~lib/rt/stub/__retain + drop + local.get $17 + call $~lib/rt/stub/__release + end + local.get $16 + global.set $resolve-unary/foo + global.get $resolve-unary/foo + call $resolve-unary/Foo#self + local.tee $16 + global.get $resolve-unary/foo + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 106 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/foo + call $resolve-unary/Foo#not + local.tee $17 + call $~lib/string/String#toString + local.tee $18 + i32.const 744 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 111 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/foo + call $resolve-unary/Foo#bitwise_not + local.tee $19 + call $~lib/string/String#toString + local.tee $20 + i32.const 768 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 116 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/foo + local.tee $21 + call $resolve-unary/Foo#postfix_inc + local.tee $22 + local.tee $23 + global.get $resolve-unary/foo + local.tee $24 + i32.ne + if + local.get $23 + call $~lib/rt/stub/__retain + drop + local.get $24 + call $~lib/rt/stub/__release + end + local.get $23 + global.set $resolve-unary/foo + local.get $21 + call $resolve-unary/Foo#self + local.tee $21 + global.get $resolve-unary/foo + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 121 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/foo + local.tee $23 + call $resolve-unary/Foo#postfix_dec + local.tee $24 + local.tee $25 + global.get $resolve-unary/foo + local.tee $26 + i32.ne + if + local.get $25 + call $~lib/rt/stub/__retain + drop + local.get $26 + call $~lib/rt/stub/__release + end + local.get $25 + global.set $resolve-unary/foo + local.get $23 + call $resolve-unary/Foo#self + local.tee $23 + global.get $resolve-unary/foo + i32.eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 126 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $resolve-unary/Bar#constructor + global.set $resolve-unary/bar + global.get $resolve-unary/bar + call $resolve-unary/Bar.prefix_inc + local.tee $25 + call $~lib/string/String#toString + local.tee $26 + i32.const 792 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 151 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/bar + call $resolve-unary/Bar.prefix_dec + local.tee $27 + call $~lib/string/String#toString + local.tee $28 + i32.const 816 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 156 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/bar + call $resolve-unary/Bar.postfix_inc + local.tee $29 + call $~lib/string/String#toString + local.tee $30 + i32.const 840 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 161 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $resolve-unary/bar + call $resolve-unary/Bar.postfix_dec + local.tee $31 + call $~lib/string/String#toString + local.tee $32 + i32.const 864 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 520 + i32.const 166 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/stub/__release + local.get $1 + call $~lib/rt/stub/__release + local.get $2 + call $~lib/rt/stub/__release + local.get $3 + call $~lib/rt/stub/__release + local.get $4 + call $~lib/rt/stub/__release + local.get $5 + call $~lib/rt/stub/__release + local.get $6 + call $~lib/rt/stub/__release + local.get $7 + call $~lib/rt/stub/__release + local.get $8 + call $~lib/rt/stub/__release + local.get $9 + call $~lib/rt/stub/__release + local.get $10 + call $~lib/rt/stub/__release + local.get $11 + call $~lib/rt/stub/__release + local.get $12 + call $~lib/rt/stub/__release + local.get $13 + call $~lib/rt/stub/__release + local.get $14 + call $~lib/rt/stub/__release + local.get $15 + call $~lib/rt/stub/__release + local.get $16 + call $~lib/rt/stub/__release + local.get $17 + call $~lib/rt/stub/__release + local.get $18 + call $~lib/rt/stub/__release + local.get $19 + call $~lib/rt/stub/__release + local.get $20 + call $~lib/rt/stub/__release + local.get $21 + call $~lib/rt/stub/__release + local.get $22 + call $~lib/rt/stub/__release + local.get $23 + call $~lib/rt/stub/__release + local.get $24 + call $~lib/rt/stub/__release + local.get $25 + call $~lib/rt/stub/__release + local.get $26 + call $~lib/rt/stub/__release + local.get $27 + call $~lib/rt/stub/__release + local.get $28 + call $~lib/rt/stub/__release + local.get $29 + call $~lib/rt/stub/__release + local.get $30 + call $~lib/rt/stub/__release + local.get $31 + call $~lib/rt/stub/__release + local.get $32 + call $~lib/rt/stub/__release + ) + (func $start (; 31 ;) (type $FUNCSIG$v) + call $start:resolve-unary + ) + (func $null (; 32 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/retain-release-sanity.optimized.wat b/tests/compiler/retain-release-sanity.optimized.wat index 84556e2e72..c0d7fb5aaa 100644 --- a/tests/compiler/retain-release-sanity.optimized.wat +++ b/tests/compiler/retain-release-sanity.optimized.wat @@ -1997,7 +1997,7 @@ if i32.const 24 i32.const 72 - i32.const 14 + i32.const 22 i32.const 56 call $~lib/builtins/abort unreachable @@ -2298,7 +2298,7 @@ if i32.const 424 i32.const 376 - i32.const 274 + i32.const 270 i32.const 20 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/retain-release-sanity.untouched.wat b/tests/compiler/retain-release-sanity.untouched.wat index e69de29bb2..9df5bb0b43 100644 --- a/tests/compiler/retain-release-sanity.untouched.wat +++ b/tests/compiler/retain-release-sanity.untouched.wat @@ -0,0 +1,4620 @@ +(module + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$v (func)) + (type $FUNCSIG$vii (func (param i32 i32))) + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32))) + (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32))) + (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32))) + (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32))) + (memory $0 1) + (data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") + (data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") + (data (i32.const 112) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") + (data (i32.const 160) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") + (data (i32.const 216) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") + (data (i32.const 264) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") + (data (i32.const 320) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") + (data (i32.const 360) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 408) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00A\00r\00r\00a\00y\00 \00i\00s\00 \00e\00m\00p\00t\00y\00") + (data (i32.const 456) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00") + (data (i32.const 472) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00a\00") + (data (i32.const 496) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00b\00") + (data (i32.const 520) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00n\00u\00l\00l\00") + (data (i32.const 544) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00d\00") + (data (i32.const 568) "\08\00\00\00\10\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\93\04\00\00\02\00\00\00\93 \00\00\02\00\00\00\93 \00\00\02\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") + (table $0 1 funcref) + (elem (i32.const 0) $null) + (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) + (global $~lib/rt/tlsf/collectLock (mut i32) (i32.const 0)) + (global $~lib/gc/gc.auto (mut i32) (i32.const 1)) + (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) + (global $~lib/rt/pure/CUR (mut i32) (i32.const 0)) + (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) + (global $~lib/rt/pure/END (mut i32) (i32.const 0)) + (global $~lib/rt/__rtti_base i32 (i32.const 568)) + (global $~lib/heap/__heap_base i32 (i32.const 636)) + (export "memory" (memory $0)) + (start $start) + (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 277 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.set $3 + local.get $3 + i32.const 16 + i32.ge_u + if (result i32) + local.get $3 + i32.const 1073741808 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 279 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $4 + local.get $3 + i32.const 4 + i32.shr_u + local.set $5 + else + i32.const 31 + local.get $3 + i32.clz + i32.sub + local.set $4 + local.get $3 + local.get $4 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $5 + local.get $4 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $4 + end + local.get $4 + i32.const 23 + i32.lt_u + if (result i32) + local.get $5 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 292 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.load offset=16 + local.set $6 + local.get $1 + i32.load offset=20 + local.set $7 + local.get $6 + if + local.get $6 + local.get $7 + i32.store offset=20 + end + local.get $7 + if + local.get $7 + local.get $6 + i32.store offset=16 + end + local.get $1 + local.get $0 + local.set $10 + local.get $4 + local.set $9 + local.get $5 + local.set $8 + local.get $10 + local.get $9 + i32.const 4 + i32.shl + local.get $8 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + i32.eq + if + local.get $0 + local.set $11 + local.get $4 + local.set $10 + local.get $5 + local.set $9 + local.get $7 + local.set $8 + local.get $11 + local.get $10 + i32.const 4 + i32.shl + local.get $9 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $8 + i32.store offset=96 + local.get $7 + i32.eqz + if + local.get $0 + local.set $9 + local.get $4 + local.set $8 + local.get $9 + local.get $8 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + local.set $9 + local.get $0 + local.set $8 + local.get $4 + local.set $11 + local.get $9 + i32.const 1 + local.get $5 + i32.shl + i32.const -1 + i32.xor + i32.and + local.tee $9 + local.set $10 + local.get $8 + local.get $11 + i32.const 2 + i32.shl + i32.add + local.get $10 + i32.store offset=4 + local.get $9 + i32.eqz + if + local.get $0 + local.get $0 + i32.load + i32.const 1 + local.get $4 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + end + end + end + ) + (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + local.get $1 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 205 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 207 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.set $3 + local.get $3 + i32.const 16 + i32.add + local.get $3 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $4 + local.get $4 + i32.load + local.set $5 + local.get $5 + i32.const 1 + i32.and + if + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $5 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $3 + local.get $3 + i32.const 1073741808 + i32.lt_u + if + local.get $0 + local.get $4 + call $~lib/rt/tlsf/removeBlock + local.get $1 + local.get $2 + i32.const 3 + i32.and + local.get $3 + i32.or + local.tee $2 + i32.store + local.get $1 + local.set $6 + local.get $6 + i32.const 16 + i32.add + local.get $6 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $4 + local.get $4 + i32.load + local.set $5 + end + end + local.get $2 + i32.const 2 + i32.and + if + local.get $1 + local.set $6 + local.get $6 + i32.const 4 + i32.sub + i32.load + local.set $6 + local.get $6 + i32.load + local.set $3 + local.get $3 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 228 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $7 + local.get $7 + i32.const 1073741808 + i32.lt_u + if + local.get $0 + local.get $6 + call $~lib/rt/tlsf/removeBlock + local.get $6 + local.get $3 + i32.const 3 + i32.and + local.get $7 + i32.or + local.tee $2 + i32.store + local.get $6 + local.set $1 + end + end + local.get $4 + local.get $5 + i32.const 2 + i32.or + i32.store + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.set $8 + local.get $8 + i32.const 16 + i32.ge_u + if (result i32) + local.get $8 + i32.const 1073741808 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 243 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 16 + i32.add + local.get $8 + i32.add + local.get $4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 244 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 4 + i32.sub + local.get $1 + i32.store + local.get $8 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $9 + local.get $8 + i32.const 4 + i32.shr_u + local.set $10 + else + i32.const 31 + local.get $8 + i32.clz + i32.sub + local.set $9 + local.get $8 + local.get $9 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $10 + local.get $9 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $9 + end + local.get $9 + i32.const 23 + i32.lt_u + if (result i32) + local.get $10 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 260 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $7 + local.get $9 + local.set $3 + local.get $10 + local.set $6 + local.get $7 + local.get $3 + i32.const 4 + i32.shl + local.get $6 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $11 + local.get $1 + i32.const 0 + i32.store offset=16 + local.get $1 + local.get $11 + i32.store offset=20 + local.get $11 + if + local.get $11 + local.get $1 + i32.store offset=16 + end + local.get $0 + local.set $12 + local.get $9 + local.set $7 + local.get $10 + local.set $3 + local.get $1 + local.set $6 + local.get $12 + local.get $7 + i32.const 4 + i32.shl + local.get $3 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store offset=96 + local.get $0 + local.get $0 + i32.load + i32.const 1 + local.get $9 + i32.shl + i32.or + i32.store + local.get $0 + local.set $13 + local.get $9 + local.set $12 + local.get $0 + local.set $3 + local.get $9 + local.set $6 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + i32.const 1 + local.get $10 + i32.shl + i32.or + local.set $7 + local.get $13 + local.get $12 + i32.const 2 + i32.shl + i32.add + local.get $7 + i32.store offset=4 + ) + (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $1 + local.get $2 + i32.le_u + if (result i32) + local.get $1 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + if (result i32) + local.get $2 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 386 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $3 + local.get $3 + i32.load offset=1568 + local.set $4 + i32.const 0 + local.set $5 + local.get $4 + if + local.get $1 + local.get $4 + i32.const 16 + i32.add + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 396 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 16 + i32.sub + local.get $4 + i32.eq + if + local.get $1 + i32.const 16 + i32.sub + local.set $1 + local.get $4 + i32.load + local.set $5 + else + nop + end + else + local.get $1 + local.get $0 + i32.const 1572 + i32.add + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 408 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + end + local.get $2 + local.get $1 + i32.sub + local.set $6 + local.get $6 + i32.const 48 + i32.lt_u + if + i32.const 0 + return + end + local.get $6 + i32.const 16 + i32.const 1 + i32.shl + i32.sub + local.set $7 + local.get $1 + local.set $8 + local.get $8 + local.get $7 + i32.const 1 + i32.or + local.get $5 + i32.const 2 + i32.and + i32.or + i32.store + local.get $8 + i32.const 0 + i32.store offset=16 + local.get $8 + i32.const 0 + i32.store offset=20 + local.get $1 + local.get $6 + i32.add + i32.const 16 + i32.sub + local.set $4 + local.get $4 + i32.const 0 + i32.const 2 + i32.or + i32.store + local.get $0 + local.set $9 + local.get $4 + local.set $3 + local.get $9 + local.get $3 + i32.store offset=1568 + local.get $0 + local.get $8 + call $~lib/rt/tlsf/insertBlock + i32.const 1 + ) + (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $~lib/heap/__heap_base + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.set $0 + memory.size + local.set $1 + local.get $0 + i32.const 1572 + i32.add + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $2 + local.get $2 + local.get $1 + i32.gt_s + if (result i32) + local.get $2 + local.get $1 + i32.sub + memory.grow + i32.const 0 + i32.lt_s + else + i32.const 0 + end + if + unreachable + end + local.get $0 + local.set $3 + local.get $3 + i32.const 0 + i32.store + local.get $3 + local.set $5 + i32.const 0 + local.set $4 + local.get $5 + local.get $4 + i32.store offset=1568 + block $break|0 + i32.const 0 + local.set $5 + loop $loop|0 + local.get $5 + i32.const 23 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $3 + local.set $7 + local.get $5 + local.set $6 + i32.const 0 + local.set $4 + local.get $7 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store offset=4 + block $break|1 + i32.const 0 + local.set $7 + loop $loop|1 + local.get $7 + i32.const 16 + i32.lt_u + i32.eqz + br_if $break|1 + local.get $3 + local.set $9 + local.get $5 + local.set $8 + local.get $7 + local.set $6 + i32.const 0 + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $6 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store offset=96 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + local.get $0 + i32.const 1572 + i32.add + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + memory.size + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + drop + local.get $3 + global.set $~lib/rt/tlsf/ROOT + ) + (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 1073741808 + i32.ge_u + if + i32.const 176 + i32.const 128 + i32.const 457 + i32.const 29 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.tee $1 + i32.const 16 + local.tee $2 + local.get $1 + local.get $2 + i32.gt_u + select + ) + (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $1 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $2 + local.get $1 + i32.const 4 + i32.shr_u + local.set $3 + else + local.get $1 + i32.const 536870904 + i32.lt_u + if (result i32) + local.get $1 + i32.const 1 + i32.const 27 + local.get $1 + i32.clz + i32.sub + i32.shl + i32.add + i32.const 1 + i32.sub + else + local.get $1 + end + local.set $4 + i32.const 31 + local.get $4 + i32.clz + i32.sub + local.set $2 + local.get $4 + local.get $2 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $3 + local.get $2 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $2 + end + local.get $2 + i32.const 23 + i32.lt_u + if (result i32) + local.get $3 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 338 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $5 + local.get $2 + local.set $4 + local.get $5 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + i32.const 0 + i32.const -1 + i32.xor + local.get $3 + i32.shl + i32.and + local.set $6 + i32.const 0 + local.set $7 + local.get $6 + i32.eqz + if + local.get $0 + i32.load + i32.const 0 + i32.const -1 + i32.xor + local.get $2 + i32.const 1 + i32.add + i32.shl + i32.and + local.set $5 + local.get $5 + i32.eqz + if + i32.const 0 + local.set $7 + else + local.get $5 + i32.ctz + local.set $2 + local.get $0 + local.set $8 + local.get $2 + local.set $4 + local.get $8 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + local.set $6 + local.get $6 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 351 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $9 + local.get $2 + local.set $8 + local.get $6 + i32.ctz + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $4 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $7 + end + else + local.get $0 + local.set $9 + local.get $2 + local.set $8 + local.get $6 + i32.ctz + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $4 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $7 + end + local.get $7 + ) + (func $~lib/rt/pure/markGray (; 11 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 268435456 + i32.ne + if + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 268435456 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 2 + call $~lib/rt/__visit_members + end + ) + (func $~lib/rt/tlsf/freeBlock (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $2 + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $1 + call $~lib/rt/tlsf/insertBlock + local.get $1 + call $~lib/rt/rtrace/onfree + ) + (func $~lib/rt/pure/scanBlack (; 13 ;) (type $FUNCSIG$vi) (param $0 i32) + local.get $0 + local.get $0 + i32.load offset=4 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 0 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 4 + call $~lib/rt/__visit_members + ) + (func $~lib/rt/pure/scan (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 268435456 + i32.eq + if + local.get $1 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + if + local.get $0 + call $~lib/rt/pure/scanBlack + else + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 536870912 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 3 + call $~lib/rt/__visit_members + end + end + ) + (func $~lib/rt/pure/collectWhite (; 15 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 536870912 + i32.eq + if (result i32) + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + else + i32.const 0 + end + if + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 0 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 5 + call $~lib/rt/__visit_members + global.get $~lib/rt/tlsf/ROOT + local.get $0 + call $~lib/rt/tlsf/freeBlock + end + ) + (func $~lib/rt/pure/__collect (; 16 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $~lib/rt/pure/ROOTS + local.set $0 + local.get $0 + local.set $1 + block $break|0 + local.get $1 + local.set $2 + global.get $~lib/rt/pure/CUR + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + i32.load offset=4 + local.set $5 + local.get $5 + i32.const 1879048192 + i32.and + i32.const 805306368 + i32.eq + if (result i32) + local.get $5 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + else + i32.const 0 + end + if + local.get $4 + call $~lib/rt/pure/markGray + local.get $1 + local.get $4 + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $1 + else + local.get $5 + i32.const 1879048192 + i32.and + i32.const 0 + i32.eq + if (result i32) + local.get $5 + i32.const 268435455 + i32.and + i32.eqz + else + i32.const 0 + end + if + global.get $~lib/rt/tlsf/ROOT + local.get $4 + call $~lib/rt/tlsf/freeBlock + else + local.get $4 + local.get $5 + i32.const -2147483648 + i32.const -1 + i32.xor + i32.and + i32.store offset=4 + end + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + local.get $1 + global.set $~lib/rt/pure/CUR + block $break|1 + local.get $0 + local.set $5 + loop $loop|1 + local.get $5 + local.get $1 + i32.lt_u + i32.eqz + br_if $break|1 + local.get $5 + i32.load + call $~lib/rt/pure/scan + local.get $5 + i32.const 4 + i32.add + local.set $5 + br $loop|1 + end + unreachable + end + block $break|2 + local.get $0 + local.set $5 + loop $loop|2 + local.get $5 + local.get $1 + i32.lt_u + i32.eqz + br_if $break|2 + local.get $5 + i32.load + local.set $4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const -2147483648 + i32.const -1 + i32.xor + i32.and + i32.store offset=4 + local.get $4 + call $~lib/rt/pure/collectWhite + local.get $5 + i32.const 4 + i32.add + local.set $5 + br $loop|2 + end + unreachable + end + local.get $0 + global.set $~lib/rt/pure/CUR + ) + (func $~lib/rt/tlsf/growMemory (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $1 + i32.const 536870904 + i32.lt_u + if + local.get $1 + i32.const 1 + i32.const 27 + local.get $1 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + i32.add + local.set $1 + end + memory.size + local.set $2 + local.get $1 + i32.const 16 + local.get $2 + i32.const 16 + i32.shl + i32.const 16 + i32.sub + local.get $0 + local.set $3 + local.get $3 + i32.load offset=1568 + i32.ne + i32.shl + i32.add + local.set $1 + local.get $1 + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $4 + local.get $2 + local.tee $3 + local.get $4 + local.tee $5 + local.get $3 + local.get $5 + i32.gt_s + select + local.set $6 + local.get $6 + memory.grow + i32.const 0 + i32.lt_s + if + local.get $4 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + memory.size + local.set $7 + local.get $0 + local.get $2 + i32.const 16 + i32.shl + local.get $7 + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + drop + ) + (func $~lib/rt/tlsf/prepareBlock (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + i32.const 15 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 365 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.get $2 + i32.sub + local.set $4 + local.get $4 + i32.const 32 + i32.ge_u + if + local.get $1 + local.get $2 + local.get $3 + i32.const 2 + i32.and + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.get $2 + i32.add + local.set $5 + local.get $5 + local.get $4 + i32.const 16 + i32.sub + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $5 + call $~lib/rt/tlsf/insertBlock + else + local.get $1 + local.get $3 + i32.const 1 + i32.const -1 + i32.xor + i32.and + i32.store + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + i32.load + i32.const 2 + i32.const -1 + i32.xor + i32.and + i32.store + end + ) + (func $~lib/rt/tlsf/allocateBlock (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/tlsf/collectLock + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 486 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/rt/tlsf/prepareSize + local.set $2 + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + global.get $~lib/gc/gc.auto + if + i32.const 1 + global.set $~lib/rt/tlsf/collectLock + call $~lib/rt/pure/__collect + i32.const 0 + global.set $~lib/rt/tlsf/collectLock + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + local.get $0 + local.get $2 + call $~lib/rt/tlsf/growMemory + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 498 + i32.const 19 + call $~lib/builtins/abort + unreachable + end + end + else + local.get $0 + local.get $2 + call $~lib/rt/tlsf/growMemory + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 503 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + end + end + local.get $3 + i32.load + i32.const -4 + i32.and + local.get $2 + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 506 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $0 + local.get $3 + call $~lib/rt/tlsf/removeBlock + local.get $0 + local.get $3 + local.get $2 + call $~lib/rt/tlsf/prepareBlock + local.get $3 + call $~lib/rt/rtrace/onalloc + local.get $3 + ) + (func $~lib/rt/tlsf/__alloc (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/tlsf/ROOT + local.set $2 + local.get $2 + i32.eqz + if + call $~lib/rt/tlsf/initializeRoot + global.get $~lib/rt/tlsf/ROOT + local.set $2 + end + local.get $2 + local.get $0 + call $~lib/rt/tlsf/allocateBlock + local.set $3 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 16 + i32.add + ) + (func $~lib/memory/memory.fill (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + block $~lib/util/memory/memset|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 1 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 2 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.get $4 + i32.store8 + local.get $5 + i32.const 2 + i32.add + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 2 + i32.sub + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 3 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 6 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 3 + i32.add + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 8 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + i32.const 0 + local.get $5 + i32.sub + i32.const 3 + i32.and + local.set $6 + local.get $5 + local.get $6 + i32.add + local.set $5 + local.get $3 + local.get $6 + i32.sub + local.set $3 + local.get $3 + i32.const -4 + i32.and + local.set $3 + i32.const -1 + i32.const 255 + i32.div_u + local.get $4 + i32.const 255 + i32.and + i32.mul + local.set $7 + local.get $5 + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.get $7 + i32.store + local.get $3 + i32.const 8 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 4 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 8 + i32.add + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 12 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 8 + i32.sub + local.get $7 + i32.store + local.get $3 + i32.const 24 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 12 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 16 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 20 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 24 + i32.add + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 28 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 24 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 20 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 16 + i32.sub + local.get $7 + i32.store + i32.const 24 + local.get $5 + i32.const 4 + i32.and + i32.add + local.set $6 + local.get $5 + local.get $6 + i32.add + local.set $5 + local.get $3 + local.get $6 + i32.sub + local.set $3 + local.get $7 + i64.extend_i32_u + local.get $7 + i64.extend_i32_u + i64.const 32 + i64.shl + i64.or + local.set $8 + block $break|0 + loop $continue|0 + local.get $3 + i32.const 32 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $5 + local.get $8 + i64.store + local.get $5 + i32.const 8 + i32.add + local.get $8 + i64.store + local.get $5 + i32.const 16 + i32.add + local.get $8 + i64.store + local.get $5 + i32.const 24 + i32.add + local.get $8 + i64.store + local.get $3 + i32.const 32 + i32.sub + local.set $3 + local.get $5 + i32.const 32 + i32.add + local.set $5 + br $continue|0 + end + unreachable + end + end + ) + (func $~lib/rt/pure/increment (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const -268435456 + i32.and + local.get $1 + i32.const 1 + i32.add + i32.const -268435456 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 104 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + call $~lib/rt/rtrace/onincrement + local.get $0 + i32.load + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 107 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/rt/pure/__retain (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.gt_u + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/pure/increment + end + local.get $0 + ) + (func $~lib/rt/__typeinfo (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + global.get $~lib/rt/__rtti_base + local.set $1 + local.get $0 + local.get $1 + i32.load + i32.gt_u + if + i32.const 280 + i32.const 336 + i32.const 22 + i32.const 27 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 4 + i32.add + local.get $0 + i32.const 8 + i32.mul + i32.add + i32.load + ) + (func $~lib/util/memory/memcpy (; 25 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + loop $continue|0 + local.get $2 + if (result i32) + local.get $1 + i32.const 3 + i32.and + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $0 + i32.const 3 + i32.and + i32.const 0 + i32.eq + if + block $break|1 + loop $continue|1 + local.get $2 + i32.const 16 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 8 + i32.add + i32.load + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 12 + i32.add + i32.load + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|1 + end + unreachable + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.set $0 + local.get $1 + i32.const 4 + i32.add + local.set $1 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load16_u + i32.store16 + local.get $0 + i32.const 2 + i32.add + local.set $0 + local.get $1 + i32.const 2 + i32.add + local.set $1 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + return + end + local.get $2 + i32.const 32 + i32.ge_u + if + block $break|2 + block $case2|2 + block $case1|2 + block $case0|2 + local.get $0 + i32.const 3 + i32.and + local.set $5 + local.get $5 + i32.const 1 + i32.eq + br_if $case0|2 + local.get $5 + i32.const 2 + i32.eq + br_if $case1|2 + local.get $5 + i32.const 3 + i32.eq + br_if $case2|2 + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 3 + i32.sub + local.set $2 + block $break|3 + loop $continue|3 + local.get $2 + i32.const 17 + i32.ge_u + i32.eqz + br_if $break|3 + local.get $1 + i32.const 1 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 5 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 9 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 13 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|3 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + block $break|4 + loop $continue|4 + local.get $2 + i32.const 18 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $1 + i32.const 2 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 6 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 10 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 14 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|4 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + block $break|5 + loop $continue|5 + local.get $2 + i32.const 19 + i32.ge_u + i32.eqz + br_if $break|5 + local.get $1 + i32.const 3 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 7 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 11 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 15 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|5 + end + unreachable + end + br $break|2 + end + end + local.get $2 + i32.const 16 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + ) + (func $~lib/memory/memory.copy (; 26 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + local.get $4 + i32.eq + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $4 + local.get $3 + i32.add + local.get $5 + i32.le_u + if (result i32) + i32.const 1 + else + local.get $5 + local.get $3 + i32.add + local.get $4 + i32.le_u + end + if + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $4 + i32.lt_u + if + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|0 + loop $continue|0 + local.get $5 + i32.const 7 + i32.and + i32.eqz + br_if $break|0 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $3 + i32.const 1 + i32.sub + local.set $3 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + br $continue|0 + end + unreachable + end + block $break|1 + loop $continue|1 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $5 + local.get $4 + i64.load + i64.store + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + i32.const 8 + i32.add + local.set $5 + local.get $4 + i32.const 8 + i32.add + local.set $4 + br $continue|1 + end + unreachable + end + end + block $break|2 + loop $continue|2 + local.get $3 + i32.eqz + br_if $break|2 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + local.get $3 + i32.const 1 + i32.sub + local.set $3 + br $continue|2 + end + unreachable + end + else + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|3 + loop $continue|3 + local.get $5 + local.get $3 + i32.add + i32.const 7 + i32.and + i32.eqz + br_if $break|3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + local.get $3 + i32.add + local.get $4 + local.get $3 + i32.add + i64.load + i64.store + br $continue|4 + end + unreachable + end + end + block $break|5 + loop $continue|5 + local.get $3 + i32.eqz + br_if $break|5 + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|5 + end + unreachable + end + end + end + ) + (func $~lib/rt/tlsf/__free (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 593 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 594 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/tlsf/ROOT + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/tlsf/freeBlock + ) + (func $~lib/rt/pure/growRoots (; 28 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $~lib/rt/pure/ROOTS + local.set $0 + global.get $~lib/rt/pure/CUR + local.get $0 + i32.sub + local.set $1 + local.get $1 + i32.const 2 + i32.mul + local.tee $2 + i32.const 64 + i32.const 2 + i32.shl + local.tee $3 + local.get $2 + local.get $3 + i32.gt_u + select + local.set $4 + local.get $4 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $5 + i32.const 16 + i32.sub + call $~lib/rt/rtrace/onfree + local.get $5 + local.get $0 + local.get $1 + call $~lib/memory/memory.copy + local.get $0 + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/rtrace/onalloc + local.get $0 + call $~lib/rt/tlsf/__free + end + local.get $5 + global.set $~lib/rt/pure/ROOTS + local.get $5 + local.get $1 + i32.add + global.set $~lib/rt/pure/CUR + local.get $5 + local.get $4 + i32.add + global.set $~lib/rt/pure/END + ) + (func $~lib/rt/pure/appendRoot (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + global.get $~lib/rt/pure/CUR + local.set $1 + local.get $1 + global.get $~lib/rt/pure/END + i32.ge_u + if + call $~lib/rt/pure/growRoots + global.get $~lib/rt/pure/CUR + local.set $1 + end + local.get $1 + local.get $0 + i32.store + local.get $1 + i32.const 4 + i32.add + global.set $~lib/rt/pure/CUR + ) + (func $~lib/rt/pure/decrement (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 268435455 + i32.and + local.set $2 + local.get $0 + call $~lib/rt/rtrace/ondecrement + local.get $0 + i32.load + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 115 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + i32.eq + if + local.get $0 + i32.const 16 + i32.add + i32.const 1 + call $~lib/rt/__visit_members + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + if + global.get $~lib/rt/tlsf/ROOT + local.get $0 + call $~lib/rt/tlsf/freeBlock + else + local.get $0 + i32.const -2147483648 + i32.const 0 + i32.or + i32.const 0 + i32.or + i32.store offset=4 + end + else + local.get $2 + i32.const 0 + i32.gt_u + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 124 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=8 + call $~lib/rt/__typeinfo + i32.const 16 + i32.and + i32.eqz + if + local.get $0 + i32.const -2147483648 + i32.const 805306368 + i32.or + local.get $2 + i32.const 1 + i32.sub + i32.or + i32.store offset=4 + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + if + local.get $0 + call $~lib/rt/pure/appendRoot + end + else + local.get $0 + local.get $1 + i32.const 268435455 + i32.const -1 + i32.xor + i32.and + local.get $2 + i32.const 1 + i32.sub + i32.or + i32.store offset=4 + end + end + ) + (func $~lib/rt/pure/__release (; 31 ;) (type $FUNCSIG$vi) (param $0 i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.gt_u + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/pure/decrement + end + ) + (func $~lib/arraybuffer/ArrayBufferView#constructor (; 32 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.const 1073741808 + local.get $2 + i32.shr_u + i32.gt_u + if + i32.const 24 + i32.const 72 + i32.const 22 + i32.const 56 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $2 + i32.shl + local.tee $1 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $3 + local.get $3 + i32.const 0 + local.get $1 + call $~lib/memory/memory.fill + local.get $0 + i32.eqz + if + i32.const 12 + i32.const 2 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $0 + end + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + i32.load + local.tee $4 + i32.ne + if + local.get $5 + call $~lib/rt/pure/__retain + drop + local.get $4 + call $~lib/rt/pure/__release + end + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + ) + (func $~lib/array/Array#constructor (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 16 + i32.const 3 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 2 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=12 + local.get $0 + ) + (func $~lib/rt/tlsf/reallocateBlock (; 34 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $2 + call $~lib/rt/tlsf/prepareSize + local.set $3 + local.get $1 + i32.load + local.set $4 + local.get $4 + i32.const 1 + i32.and + i32.eqz + if (result i32) + local.get $1 + i32.load offset=4 + i32.const -268435456 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 521 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + local.get $4 + i32.const -4 + i32.and + i32.le_u + if + local.get $0 + local.get $1 + local.get $3 + call $~lib/rt/tlsf/prepareBlock + local.get $1 + local.get $2 + i32.store offset=12 + local.get $1 + return + end + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $6 + local.get $6 + i32.load + local.set $7 + local.get $7 + i32.const 1 + i32.and + if + local.get $4 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $7 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $5 + local.get $5 + local.get $3 + i32.ge_u + if + local.get $0 + local.get $6 + call $~lib/rt/tlsf/removeBlock + local.get $1 + local.get $4 + i32.const 3 + i32.and + local.get $5 + i32.or + i32.store + local.get $1 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $1 + local.get $3 + call $~lib/rt/tlsf/prepareBlock + local.get $1 + return + end + end + local.get $0 + local.get $2 + call $~lib/rt/tlsf/allocateBlock + local.set $8 + local.get $8 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $8 + i32.const 16 + i32.add + local.get $1 + i32.const 16 + i32.add + local.get $2 + call $~lib/memory/memory.copy + local.get $1 + local.get $4 + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $1 + call $~lib/rt/tlsf/insertBlock + local.get $1 + call $~lib/rt/rtrace/onfree + local.get $8 + ) + (func $~lib/rt/tlsf/__realloc (; 35 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 585 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/tlsf/ROOT + local.get $0 + i32.const 16 + i32.sub + local.get $1 + call $~lib/rt/tlsf/reallocateBlock + i32.const 16 + i32.add + ) + (func $~lib/array/ensureSize (; 36 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=8 + local.set $3 + local.get $1 + local.get $3 + local.get $2 + i32.shr_u + i32.gt_u + if + local.get $1 + i32.const 1073741808 + local.get $2 + i32.shr_u + i32.gt_u + if + i32.const 24 + i32.const 376 + i32.const 14 + i32.const 47 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load + local.set $4 + local.get $1 + local.get $2 + i32.shl + local.set $5 + local.get $4 + local.get $5 + call $~lib/rt/tlsf/__realloc + local.set $6 + local.get $6 + local.get $3 + i32.add + i32.const 0 + local.get $5 + local.get $3 + i32.sub + call $~lib/memory/memory.fill + local.get $6 + local.get $4 + i32.ne + if + local.get $0 + local.get $6 + call $~lib/rt/pure/__retain + i32.store + local.get $0 + local.get $6 + i32.store offset=4 + end + local.get $0 + local.get $5 + i32.store offset=8 + end + ) + (func $~lib/array/Array#push (; 37 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 1 + i32.add + local.set $3 + local.get $0 + local.get $3 + i32.const 2 + call $~lib/array/ensureSize + local.get $0 + i32.load offset=4 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $1 + i32.store + local.get $0 + local.get $3 + i32.store offset=12 + local.get $3 + ) + (func $~lib/array/Array#pop (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=12 + local.set $1 + local.get $1 + i32.const 1 + i32.lt_s + if + i32.const 424 + i32.const 376 + i32.const 270 + i32.const 20 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.sub + local.tee $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 + local.get $0 + local.get $1 + i32.store offset=12 + local.get $2 + ) + (func $~lib/array/Array<~lib/array/Array<~lib/string/String>>#constructor (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 16 + i32.const 5 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 2 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=12 + local.get $0 + ) + (func $~lib/array/Array<~lib/string/String>#constructor (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 16 + i32.const 4 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 2 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=12 + local.get $0 + ) + (func $~lib/array/Array<~lib/string/String>#push (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 1 + i32.add + local.set $3 + local.get $0 + local.get $3 + i32.const 2 + call $~lib/array/ensureSize + local.get $0 + i32.load offset=4 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $1 + call $~lib/rt/pure/__retain + i32.store + local.get $0 + local.get $3 + i32.store offset=12 + local.get $3 + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/string/String#get:length (; 42 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 16 + i32.sub + i32.load offset=12 + i32.const 1 + i32.shr_u + ) + (func $~lib/string/String#concat (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 0 + i32.eq + if + i32.const 536 + local.tee $2 + local.get $1 + local.tee $3 + i32.ne + if + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $3 + call $~lib/rt/pure/__release + end + local.get $2 + local.set $1 + end + local.get $0 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + local.set $4 + local.get $1 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + local.set $5 + local.get $4 + local.get $5 + i32.add + local.set $6 + local.get $6 + i32.const 0 + i32.eq + if + i32.const 472 + call $~lib/rt/pure/__retain + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $6 + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $7 + local.get $7 + local.get $0 + local.get $4 + call $~lib/memory/memory.copy + local.get $7 + local.get $4 + i32.add + local.get $1 + local.get $5 + call $~lib/memory/memory.copy + local.get $7 + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/string/String.__concat (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 536 + local.get $0 + i32.const 0 + i32.ne + select + local.get $1 + call $~lib/string/String#concat + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $retain-release-sanity/A#constructor (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.eqz + if + i32.const 4 + i32.const 6 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $0 + end + local.get $0 + i32.const 0 + i32.store + local.get $0 + ) + (func $retain-release-sanity/B#constructor (; 46 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.eqz + if + i32.const 4 + i32.const 7 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $0 + end + local.get $0 + i32.const 0 + i32.store + local.get $0 + ) + (func $start:retain-release-sanity (; 47 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/array/Array#constructor + local.set $0 + local.get $0 + i32.const 123 + call $~lib/array/Array#push + drop + local.get $0 + i32.const 123 + call $~lib/array/Array#push + drop + local.get $0 + call $~lib/array/Array#pop + drop + local.get $0 + call $~lib/rt/pure/__release + i32.const 0 + i32.const 0 + call $~lib/array/Array<~lib/array/Array<~lib/string/String>>#constructor + local.set $0 + block $break|0 + i32.const 0 + local.set $1 + loop $loop|0 + local.get $1 + i32.const 10 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 0 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#constructor + local.set $2 + block $break|1 + i32.const 0 + local.set $3 + loop $loop|1 + local.get $3 + i32.const 10 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $2 + i32.const 472 + call $~lib/array/Array<~lib/string/String>#push + drop + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|1 + end + unreachable + end + local.get $1 + i32.const 1 + i32.add + local.set $1 + local.get $2 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + i32.const 488 + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + i32.const 512 + call $~lib/string/String.__concat + local.tee $2 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 560 + call $~lib/string/String.__concat + local.tee $3 + drop + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + i32.const 0 + call $retain-release-sanity/A#constructor + local.set $3 + i32.const 0 + call $retain-release-sanity/B#constructor + local.set $1 + local.get $3 + local.tee $2 + local.get $1 + local.tee $0 + local.get $2 + i32.load + local.tee $2 + i32.ne + if + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/rt/pure/__release + end + local.get $0 + i32.store + local.get $3 + local.tee $0 + local.get $1 + local.tee $2 + local.get $0 + i32.load + local.tee $0 + i32.ne + if + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__release + end + local.get $2 + i32.store + local.get $1 + local.tee $2 + local.get $3 + local.tee $0 + local.get $2 + i32.load + local.tee $2 + i32.ne + if + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/rt/pure/__release + end + local.get $0 + i32.store + local.get $1 + local.tee $0 + local.get $3 + local.tee $2 + local.get $0 + i32.load + local.tee $0 + i32.ne + if + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__release + end + local.get $2 + i32.store + local.get $3 + local.tee $2 + local.get $1 + local.tee $0 + local.get $2 + i32.load + local.tee $2 + i32.ne + if + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/rt/pure/__release + end + local.get $0 + i32.store + local.get $1 + local.tee $0 + local.get $3 + local.tee $2 + local.get $0 + i32.load + local.tee $0 + i32.ne + if + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__release + end + local.get $2 + i32.store + local.get $3 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + call $~lib/rt/pure/__collect + ) + (func $start (; 48 ;) (type $FUNCSIG$v) + call $start:retain-release-sanity + ) + (func $~lib/array/Array#__visit_impl (; 49 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/rt/pure/__visit (; 50 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.lt_u + if + return + end + local.get $0 + i32.const 16 + i32.sub + local.set $2 + block $break|0 + block $case5|0 + block $case4|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $1 + local.set $3 + local.get $3 + i32.const 1 + i32.eq + br_if $case0|0 + local.get $3 + i32.const 2 + i32.eq + br_if $case1|0 + local.get $3 + i32.const 3 + i32.eq + br_if $case2|0 + local.get $3 + i32.const 4 + i32.eq + br_if $case3|0 + local.get $3 + i32.const 5 + i32.eq + br_if $case4|0 + br $case5|0 + end + local.get $2 + call $~lib/rt/pure/decrement + br $break|0 + end + local.get $2 + i32.load offset=4 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 75 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 1 + i32.sub + i32.store offset=4 + local.get $2 + call $~lib/rt/pure/markGray + br $break|0 + end + local.get $2 + call $~lib/rt/pure/scan + br $break|0 + end + local.get $2 + i32.load offset=4 + local.set $3 + local.get $3 + i32.const -268435456 + i32.and + local.get $3 + i32.const 1 + i32.add + i32.const -268435456 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 86 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $3 + i32.const 1 + i32.add + i32.store offset=4 + local.get $3 + i32.const 1879048192 + i32.and + i32.const 0 + i32.ne + if + local.get $2 + call $~lib/rt/pure/scanBlack + end + br $break|0 + end + local.get $2 + call $~lib/rt/pure/collectWhite + br $break|0 + end + i32.const 0 + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 97 + i32.const 24 + call $~lib/builtins/abort + unreachable + end + end + ) + (func $~lib/array/Array<~lib/string/String>#__visit_impl (; 51 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/array/Array<~lib/array/Array<~lib/string/String>>#__visit_impl (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/rt/__visit_members (; 53 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + block $block$4$break + block $switch$1$default + block $switch$1$case$7 + block $switch$1$case$6 + block $switch$1$case$5 + block $switch$1$case$4 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$6 $switch$1$case$7 $switch$1$case$4 $switch$1$case$4 $switch$1$default + end + return + end + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/string/String>#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/array/Array<~lib/string/String>>#__visit_impl + br $block$4$break + end + unreachable + end + local.get $0 + i32.load + local.tee $2 + if + local.get $2 + local.get $1 + call $~lib/rt/pure/__visit + end + return + ) + (func $null (; 54 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 516e9e2df6..6cdac6da41 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -47,7 +47,7 @@ if i32.const 136 i32.const 192 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -66,7 +66,7 @@ if i32.const 136 i32.const 192 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/array-literal.untouched.wat b/tests/compiler/std/array-literal.untouched.wat index e69de29bb2..ce577611f0 100644 --- a/tests/compiler/std/array-literal.untouched.wat +++ b/tests/compiler/std/array-literal.untouched.wat @@ -0,0 +1,4101 @@ +(module + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$v (func)) + (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) + (type $FUNCSIG$vii (func (param i32 i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32))) + (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32))) + (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32))) + (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32))) + (memory $0 1) + (data (i32.const 8) "\03\00\00\00\01\00\00\00\00\00\00\00\03\00\00\00\00\01\02") + (data (i32.const 32) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\18\00\00\00\18\00\00\00\03\00\00\00\03\00\00\00") + (data (i32.const 64) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00s\00t\00d\00/\00a\00r\00r\00a\00y\00-\00l\00i\00t\00e\00r\00a\00l\00.\00t\00s\00") + (data (i32.const 120) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") + (data (i32.const 176) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 224) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00") + (data (i32.const 256) "\10\00\00\00\01\00\00\00\04\00\00\00\10\00\00\00\f0\00\00\00\f0\00\00\00\0c\00\00\00\03\00\00\00") + (data (i32.const 288) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 304) "\10\00\00\00\01\00\00\00\04\00\00\00\10\00\00\000\01\00\000\01\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 336) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") + (data (i32.const 384) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") + (data (i32.const 440) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") + (data (i32.const 488) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") + (data (i32.const 528) "\t\00\00\00\10\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\10\00\00\00\00\00\00\003\04\00\00\02\00\00\00\93\04\00\00\02\00\00\00\10\00\00\00\00\00\00\00\93 \00\00\02\00\00\00\10\00\00\00\00\00\00\00\93 \00\00\02\00\00\00") + (table $0 1 funcref) + (elem (i32.const 0) $null) + (global $std/array-literal/staticArrayI8 i32 (i32.const 48)) + (global $std/array-literal/staticArrayI32 i32 (i32.const 272)) + (global $std/array-literal/emptyArrayI32 (mut i32) (i32.const 320)) + (global $std/array-literal/i (mut i32) (i32.const 0)) + (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) + (global $~lib/rt/tlsf/collectLock (mut i32) (i32.const 0)) + (global $~lib/gc/gc.auto (mut i32) (i32.const 1)) + (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) + (global $~lib/rt/pure/CUR (mut i32) (i32.const 0)) + (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) + (global $std/array-literal/dynamicArrayI8 (mut i32) (i32.const 0)) + (global $std/array-literal/dynamicArrayI32 (mut i32) (i32.const 0)) + (global $std/array-literal/dynamicArrayRef (mut i32) (i32.const 0)) + (global $std/array-literal/dynamicArrayRefWithCtor (mut i32) (i32.const 0)) + (global $~lib/rt/pure/END (mut i32) (i32.const 0)) + (global $~lib/rt/__rtti_base i32 (i32.const 528)) + (global $~lib/heap/__heap_base i32 (i32.const 604)) + (export "memory" (memory $0)) + (start $start) + (func $~lib/array/Array#get:length (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array#__unchecked_get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 0 + i32.shl + i32.add + i32.load8_s + ) + (func $~lib/array/Array#__get (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 136 + i32.const 192 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $~lib/array/Array#get:length (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array#__unchecked_get (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + ) + (func $~lib/array/Array#__get (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 136 + i32.const 192 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $~lib/rt/tlsf/removeBlock (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 277 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.set $3 + local.get $3 + i32.const 16 + i32.ge_u + if (result i32) + local.get $3 + i32.const 1073741808 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 279 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $4 + local.get $3 + i32.const 4 + i32.shr_u + local.set $5 + else + i32.const 31 + local.get $3 + i32.clz + i32.sub + local.set $4 + local.get $3 + local.get $4 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $5 + local.get $4 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $4 + end + local.get $4 + i32.const 23 + i32.lt_u + if (result i32) + local.get $5 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 292 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.load offset=16 + local.set $6 + local.get $1 + i32.load offset=20 + local.set $7 + local.get $6 + if + local.get $6 + local.get $7 + i32.store offset=20 + end + local.get $7 + if + local.get $7 + local.get $6 + i32.store offset=16 + end + local.get $1 + local.get $0 + local.set $10 + local.get $4 + local.set $9 + local.get $5 + local.set $8 + local.get $10 + local.get $9 + i32.const 4 + i32.shl + local.get $8 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + i32.eq + if + local.get $0 + local.set $11 + local.get $4 + local.set $10 + local.get $5 + local.set $9 + local.get $7 + local.set $8 + local.get $11 + local.get $10 + i32.const 4 + i32.shl + local.get $9 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $8 + i32.store offset=96 + local.get $7 + i32.eqz + if + local.get $0 + local.set $9 + local.get $4 + local.set $8 + local.get $9 + local.get $8 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + local.set $9 + local.get $0 + local.set $8 + local.get $4 + local.set $11 + local.get $9 + i32.const 1 + local.get $5 + i32.shl + i32.const -1 + i32.xor + i32.and + local.tee $9 + local.set $10 + local.get $8 + local.get $11 + i32.const 2 + i32.shl + i32.add + local.get $10 + i32.store offset=4 + local.get $9 + i32.eqz + if + local.get $0 + local.get $0 + i32.load + i32.const 1 + local.get $4 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + end + end + end + ) + (func $~lib/rt/tlsf/insertBlock (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + local.get $1 + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 205 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 207 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.set $3 + local.get $3 + i32.const 16 + i32.add + local.get $3 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $4 + local.get $4 + i32.load + local.set $5 + local.get $5 + i32.const 1 + i32.and + if + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $5 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $3 + local.get $3 + i32.const 1073741808 + i32.lt_u + if + local.get $0 + local.get $4 + call $~lib/rt/tlsf/removeBlock + local.get $1 + local.get $2 + i32.const 3 + i32.and + local.get $3 + i32.or + local.tee $2 + i32.store + local.get $1 + local.set $6 + local.get $6 + i32.const 16 + i32.add + local.get $6 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $4 + local.get $4 + i32.load + local.set $5 + end + end + local.get $2 + i32.const 2 + i32.and + if + local.get $1 + local.set $6 + local.get $6 + i32.const 4 + i32.sub + i32.load + local.set $6 + local.get $6 + i32.load + local.set $3 + local.get $3 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 228 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $7 + local.get $7 + i32.const 1073741808 + i32.lt_u + if + local.get $0 + local.get $6 + call $~lib/rt/tlsf/removeBlock + local.get $6 + local.get $3 + i32.const 3 + i32.and + local.get $7 + i32.or + local.tee $2 + i32.store + local.get $6 + local.set $1 + end + end + local.get $4 + local.get $5 + i32.const 2 + i32.or + i32.store + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.set $8 + local.get $8 + i32.const 16 + i32.ge_u + if (result i32) + local.get $8 + i32.const 1073741808 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 243 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 16 + i32.add + local.get $8 + i32.add + local.get $4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 244 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 4 + i32.sub + local.get $1 + i32.store + local.get $8 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $9 + local.get $8 + i32.const 4 + i32.shr_u + local.set $10 + else + i32.const 31 + local.get $8 + i32.clz + i32.sub + local.set $9 + local.get $8 + local.get $9 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $10 + local.get $9 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $9 + end + local.get $9 + i32.const 23 + i32.lt_u + if (result i32) + local.get $10 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 260 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $7 + local.get $9 + local.set $3 + local.get $10 + local.set $6 + local.get $7 + local.get $3 + i32.const 4 + i32.shl + local.get $6 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $11 + local.get $1 + i32.const 0 + i32.store offset=16 + local.get $1 + local.get $11 + i32.store offset=20 + local.get $11 + if + local.get $11 + local.get $1 + i32.store offset=16 + end + local.get $0 + local.set $12 + local.get $9 + local.set $7 + local.get $10 + local.set $3 + local.get $1 + local.set $6 + local.get $12 + local.get $7 + i32.const 4 + i32.shl + local.get $3 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store offset=96 + local.get $0 + local.get $0 + i32.load + i32.const 1 + local.get $9 + i32.shl + i32.or + i32.store + local.get $0 + local.set $13 + local.get $9 + local.set $12 + local.get $0 + local.set $3 + local.get $9 + local.set $6 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + i32.const 1 + local.get $10 + i32.shl + i32.or + local.set $7 + local.get $13 + local.get $12 + i32.const 2 + i32.shl + i32.add + local.get $7 + i32.store offset=4 + ) + (func $~lib/rt/tlsf/addMemory (; 13 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $1 + local.get $2 + i32.le_u + if (result i32) + local.get $1 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + if (result i32) + local.get $2 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 386 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $3 + local.get $3 + i32.load offset=1568 + local.set $4 + i32.const 0 + local.set $5 + local.get $4 + if + local.get $1 + local.get $4 + i32.const 16 + i32.add + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 396 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 16 + i32.sub + local.get $4 + i32.eq + if + local.get $1 + i32.const 16 + i32.sub + local.set $1 + local.get $4 + i32.load + local.set $5 + else + nop + end + else + local.get $1 + local.get $0 + i32.const 1572 + i32.add + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 408 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + end + local.get $2 + local.get $1 + i32.sub + local.set $6 + local.get $6 + i32.const 48 + i32.lt_u + if + i32.const 0 + return + end + local.get $6 + i32.const 16 + i32.const 1 + i32.shl + i32.sub + local.set $7 + local.get $1 + local.set $8 + local.get $8 + local.get $7 + i32.const 1 + i32.or + local.get $5 + i32.const 2 + i32.and + i32.or + i32.store + local.get $8 + i32.const 0 + i32.store offset=16 + local.get $8 + i32.const 0 + i32.store offset=20 + local.get $1 + local.get $6 + i32.add + i32.const 16 + i32.sub + local.set $4 + local.get $4 + i32.const 0 + i32.const 2 + i32.or + i32.store + local.get $0 + local.set $9 + local.get $4 + local.set $3 + local.get $9 + local.get $3 + i32.store offset=1568 + local.get $0 + local.get $8 + call $~lib/rt/tlsf/insertBlock + i32.const 1 + ) + (func $~lib/rt/tlsf/initializeRoot (; 14 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $~lib/heap/__heap_base + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.set $0 + memory.size + local.set $1 + local.get $0 + i32.const 1572 + i32.add + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $2 + local.get $2 + local.get $1 + i32.gt_s + if (result i32) + local.get $2 + local.get $1 + i32.sub + memory.grow + i32.const 0 + i32.lt_s + else + i32.const 0 + end + if + unreachable + end + local.get $0 + local.set $3 + local.get $3 + i32.const 0 + i32.store + local.get $3 + local.set $5 + i32.const 0 + local.set $4 + local.get $5 + local.get $4 + i32.store offset=1568 + block $break|0 + i32.const 0 + local.set $5 + loop $loop|0 + local.get $5 + i32.const 23 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $3 + local.set $7 + local.get $5 + local.set $6 + i32.const 0 + local.set $4 + local.get $7 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store offset=4 + block $break|1 + i32.const 0 + local.set $7 + loop $loop|1 + local.get $7 + i32.const 16 + i32.lt_u + i32.eqz + br_if $break|1 + local.get $3 + local.set $9 + local.get $5 + local.set $8 + local.get $7 + local.set $6 + i32.const 0 + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $6 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store offset=96 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + local.get $0 + i32.const 1572 + i32.add + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + memory.size + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + drop + local.get $3 + global.set $~lib/rt/tlsf/ROOT + ) + (func $~lib/rt/tlsf/prepareSize (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 1073741808 + i32.ge_u + if + i32.const 400 + i32.const 352 + i32.const 457 + i32.const 29 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.tee $1 + i32.const 16 + local.tee $2 + local.get $1 + local.get $2 + i32.gt_u + select + ) + (func $~lib/rt/tlsf/searchBlock (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $1 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $2 + local.get $1 + i32.const 4 + i32.shr_u + local.set $3 + else + local.get $1 + i32.const 536870904 + i32.lt_u + if (result i32) + local.get $1 + i32.const 1 + i32.const 27 + local.get $1 + i32.clz + i32.sub + i32.shl + i32.add + i32.const 1 + i32.sub + else + local.get $1 + end + local.set $4 + i32.const 31 + local.get $4 + i32.clz + i32.sub + local.set $2 + local.get $4 + local.get $2 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $3 + local.get $2 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $2 + end + local.get $2 + i32.const 23 + i32.lt_u + if (result i32) + local.get $3 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 338 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $5 + local.get $2 + local.set $4 + local.get $5 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + i32.const 0 + i32.const -1 + i32.xor + local.get $3 + i32.shl + i32.and + local.set $6 + i32.const 0 + local.set $7 + local.get $6 + i32.eqz + if + local.get $0 + i32.load + i32.const 0 + i32.const -1 + i32.xor + local.get $2 + i32.const 1 + i32.add + i32.shl + i32.and + local.set $5 + local.get $5 + i32.eqz + if + i32.const 0 + local.set $7 + else + local.get $5 + i32.ctz + local.set $2 + local.get $0 + local.set $8 + local.get $2 + local.set $4 + local.get $8 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + local.set $6 + local.get $6 + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 351 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $9 + local.get $2 + local.set $8 + local.get $6 + i32.ctz + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $4 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $7 + end + else + local.get $0 + local.set $9 + local.get $2 + local.set $8 + local.get $6 + i32.ctz + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $4 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $7 + end + local.get $7 + ) + (func $~lib/rt/pure/markGray (; 17 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 268435456 + i32.ne + if + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 268435456 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 2 + call $~lib/rt/__visit_members + end + ) + (func $~lib/rt/tlsf/freeBlock (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $2 + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $1 + call $~lib/rt/tlsf/insertBlock + local.get $1 + call $~lib/rt/rtrace/onfree + ) + (func $~lib/rt/pure/scanBlack (; 19 ;) (type $FUNCSIG$vi) (param $0 i32) + local.get $0 + local.get $0 + i32.load offset=4 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 0 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 4 + call $~lib/rt/__visit_members + ) + (func $~lib/rt/pure/scan (; 20 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 268435456 + i32.eq + if + local.get $1 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + if + local.get $0 + call $~lib/rt/pure/scanBlack + else + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 536870912 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 3 + call $~lib/rt/__visit_members + end + end + ) + (func $~lib/rt/pure/collectWhite (; 21 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 536870912 + i32.eq + if (result i32) + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + else + i32.const 0 + end + if + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 0 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 5 + call $~lib/rt/__visit_members + global.get $~lib/rt/tlsf/ROOT + local.get $0 + call $~lib/rt/tlsf/freeBlock + end + ) + (func $~lib/rt/pure/__collect (; 22 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $~lib/rt/pure/ROOTS + local.set $0 + local.get $0 + local.set $1 + block $break|0 + local.get $1 + local.set $2 + global.get $~lib/rt/pure/CUR + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + i32.load offset=4 + local.set $5 + local.get $5 + i32.const 1879048192 + i32.and + i32.const 805306368 + i32.eq + if (result i32) + local.get $5 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + else + i32.const 0 + end + if + local.get $4 + call $~lib/rt/pure/markGray + local.get $1 + local.get $4 + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $1 + else + local.get $5 + i32.const 1879048192 + i32.and + i32.const 0 + i32.eq + if (result i32) + local.get $5 + i32.const 268435455 + i32.and + i32.eqz + else + i32.const 0 + end + if + global.get $~lib/rt/tlsf/ROOT + local.get $4 + call $~lib/rt/tlsf/freeBlock + else + local.get $4 + local.get $5 + i32.const -2147483648 + i32.const -1 + i32.xor + i32.and + i32.store offset=4 + end + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + local.get $1 + global.set $~lib/rt/pure/CUR + block $break|1 + local.get $0 + local.set $5 + loop $loop|1 + local.get $5 + local.get $1 + i32.lt_u + i32.eqz + br_if $break|1 + local.get $5 + i32.load + call $~lib/rt/pure/scan + local.get $5 + i32.const 4 + i32.add + local.set $5 + br $loop|1 + end + unreachable + end + block $break|2 + local.get $0 + local.set $5 + loop $loop|2 + local.get $5 + local.get $1 + i32.lt_u + i32.eqz + br_if $break|2 + local.get $5 + i32.load + local.set $4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const -2147483648 + i32.const -1 + i32.xor + i32.and + i32.store offset=4 + local.get $4 + call $~lib/rt/pure/collectWhite + local.get $5 + i32.const 4 + i32.add + local.set $5 + br $loop|2 + end + unreachable + end + local.get $0 + global.set $~lib/rt/pure/CUR + ) + (func $~lib/rt/tlsf/growMemory (; 23 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $1 + i32.const 536870904 + i32.lt_u + if + local.get $1 + i32.const 1 + i32.const 27 + local.get $1 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + i32.add + local.set $1 + end + memory.size + local.set $2 + local.get $1 + i32.const 16 + local.get $2 + i32.const 16 + i32.shl + i32.const 16 + i32.sub + local.get $0 + local.set $3 + local.get $3 + i32.load offset=1568 + i32.ne + i32.shl + i32.add + local.set $1 + local.get $1 + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $4 + local.get $2 + local.tee $3 + local.get $4 + local.tee $5 + local.get $3 + local.get $5 + i32.gt_s + select + local.set $6 + local.get $6 + memory.grow + i32.const 0 + i32.lt_s + if + local.get $4 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + memory.size + local.set $7 + local.get $0 + local.get $2 + i32.const 16 + i32.shl + local.get $7 + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + drop + ) + (func $~lib/rt/tlsf/prepareBlock (; 24 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + i32.const 15 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 365 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.get $2 + i32.sub + local.set $4 + local.get $4 + i32.const 32 + i32.ge_u + if + local.get $1 + local.get $2 + local.get $3 + i32.const 2 + i32.and + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.get $2 + i32.add + local.set $5 + local.get $5 + local.get $4 + i32.const 16 + i32.sub + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $5 + call $~lib/rt/tlsf/insertBlock + else + local.get $1 + local.get $3 + i32.const 1 + i32.const -1 + i32.xor + i32.and + i32.store + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + i32.load + i32.const 2 + i32.const -1 + i32.xor + i32.and + i32.store + end + ) + (func $~lib/rt/tlsf/allocateBlock (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/tlsf/collectLock + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 486 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/rt/tlsf/prepareSize + local.set $2 + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + global.get $~lib/gc/gc.auto + if + i32.const 1 + global.set $~lib/rt/tlsf/collectLock + call $~lib/rt/pure/__collect + i32.const 0 + global.set $~lib/rt/tlsf/collectLock + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + local.get $0 + local.get $2 + call $~lib/rt/tlsf/growMemory + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 498 + i32.const 19 + call $~lib/builtins/abort + unreachable + end + end + else + local.get $0 + local.get $2 + call $~lib/rt/tlsf/growMemory + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 503 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + end + end + local.get $3 + i32.load + i32.const -4 + i32.and + local.get $2 + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 506 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $0 + local.get $3 + call $~lib/rt/tlsf/removeBlock + local.get $0 + local.get $3 + local.get $2 + call $~lib/rt/tlsf/prepareBlock + local.get $3 + call $~lib/rt/rtrace/onalloc + local.get $3 + ) + (func $~lib/rt/tlsf/__alloc (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/tlsf/ROOT + local.set $2 + local.get $2 + i32.eqz + if + call $~lib/rt/tlsf/initializeRoot + global.get $~lib/rt/tlsf/ROOT + local.set $2 + end + local.get $2 + local.get $0 + call $~lib/rt/tlsf/allocateBlock + local.set $3 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 16 + i32.add + ) + (func $~lib/rt/pure/increment (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const -268435456 + i32.and + local.get $1 + i32.const 1 + i32.add + i32.const -268435456 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 456 + i32.const 104 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + call $~lib/rt/rtrace/onincrement + local.get $0 + i32.load + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 456 + i32.const 107 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/rt/pure/__retain (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.gt_u + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/pure/increment + end + local.get $0 + ) + (func $~lib/util/memory/memcpy (; 29 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + loop $continue|0 + local.get $2 + if (result i32) + local.get $1 + i32.const 3 + i32.and + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $0 + i32.const 3 + i32.and + i32.const 0 + i32.eq + if + block $break|1 + loop $continue|1 + local.get $2 + i32.const 16 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 8 + i32.add + i32.load + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 12 + i32.add + i32.load + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|1 + end + unreachable + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.set $0 + local.get $1 + i32.const 4 + i32.add + local.set $1 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load16_u + i32.store16 + local.get $0 + i32.const 2 + i32.add + local.set $0 + local.get $1 + i32.const 2 + i32.add + local.set $1 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + return + end + local.get $2 + i32.const 32 + i32.ge_u + if + block $break|2 + block $case2|2 + block $case1|2 + block $case0|2 + local.get $0 + i32.const 3 + i32.and + local.set $5 + local.get $5 + i32.const 1 + i32.eq + br_if $case0|2 + local.get $5 + i32.const 2 + i32.eq + br_if $case1|2 + local.get $5 + i32.const 3 + i32.eq + br_if $case2|2 + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 3 + i32.sub + local.set $2 + block $break|3 + loop $continue|3 + local.get $2 + i32.const 17 + i32.ge_u + i32.eqz + br_if $break|3 + local.get $1 + i32.const 1 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 5 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 9 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 13 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|3 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + block $break|4 + loop $continue|4 + local.get $2 + i32.const 18 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $1 + i32.const 2 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 6 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 10 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 14 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|4 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + block $break|5 + loop $continue|5 + local.get $2 + i32.const 19 + i32.ge_u + i32.eqz + br_if $break|5 + local.get $1 + i32.const 3 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 7 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 11 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 15 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|5 + end + unreachable + end + br $break|2 + end + end + local.get $2 + i32.const 16 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + ) + (func $~lib/memory/memory.copy (; 30 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + local.get $4 + i32.eq + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $4 + local.get $3 + i32.add + local.get $5 + i32.le_u + if (result i32) + i32.const 1 + else + local.get $5 + local.get $3 + i32.add + local.get $4 + i32.le_u + end + if + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $4 + i32.lt_u + if + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|0 + loop $continue|0 + local.get $5 + i32.const 7 + i32.and + i32.eqz + br_if $break|0 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $3 + i32.const 1 + i32.sub + local.set $3 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + br $continue|0 + end + unreachable + end + block $break|1 + loop $continue|1 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $5 + local.get $4 + i64.load + i64.store + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + i32.const 8 + i32.add + local.set $5 + local.get $4 + i32.const 8 + i32.add + local.set $4 + br $continue|1 + end + unreachable + end + end + block $break|2 + loop $continue|2 + local.get $3 + i32.eqz + br_if $break|2 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + local.get $3 + i32.const 1 + i32.sub + local.set $3 + br $continue|2 + end + unreachable + end + else + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|3 + loop $continue|3 + local.get $5 + local.get $3 + i32.add + i32.const 7 + i32.and + i32.eqz + br_if $break|3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + local.get $3 + i32.add + local.get $4 + local.get $3 + i32.add + i64.load + i64.store + br $continue|4 + end + unreachable + end + end + block $break|5 + loop $continue|5 + local.get $3 + i32.eqz + br_if $break|5 + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|5 + end + unreachable + end + end + end + ) + (func $~lib/rt/__allocArray (; 31 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + i32.const 16 + local.get $2 + call $~lib/rt/tlsf/__alloc + local.set $4 + local.get $0 + local.get $1 + i32.shl + local.set $5 + local.get $5 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $4 + local.get $6 + call $~lib/rt/pure/__retain + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $4 + local.get $5 + i32.store offset=8 + local.get $4 + local.get $0 + i32.store offset=12 + local.get $3 + if + local.get $6 + local.get $3 + local.get $5 + call $~lib/memory/memory.copy + end + local.get $4 + ) + (func $std/array-literal/Ref#constructor (; 32 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 5 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $0 + end + local.get $0 + ) + (func $~lib/array/Array#get:length (; 33 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $std/array-literal/RefWithCtor#constructor (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 7 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $0 + end + local.get $0 + ) + (func $~lib/array/Array#get:length (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/rt/__typeinfo (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + global.get $~lib/rt/__rtti_base + local.set $1 + local.get $0 + local.get $1 + i32.load + i32.gt_u + if + i32.const 136 + i32.const 504 + i32.const 22 + i32.const 27 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 4 + i32.add + local.get $0 + i32.const 8 + i32.mul + i32.add + i32.load + ) + (func $~lib/rt/tlsf/__free (; 37 ;) (type $FUNCSIG$vi) (param $0 i32) + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 593 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 352 + i32.const 594 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/tlsf/ROOT + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/tlsf/freeBlock + ) + (func $~lib/rt/pure/growRoots (; 38 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $~lib/rt/pure/ROOTS + local.set $0 + global.get $~lib/rt/pure/CUR + local.get $0 + i32.sub + local.set $1 + local.get $1 + i32.const 2 + i32.mul + local.tee $2 + i32.const 64 + i32.const 2 + i32.shl + local.tee $3 + local.get $2 + local.get $3 + i32.gt_u + select + local.set $4 + local.get $4 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $5 + i32.const 16 + i32.sub + call $~lib/rt/rtrace/onfree + local.get $5 + local.get $0 + local.get $1 + call $~lib/memory/memory.copy + local.get $0 + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/rtrace/onalloc + local.get $0 + call $~lib/rt/tlsf/__free + end + local.get $5 + global.set $~lib/rt/pure/ROOTS + local.get $5 + local.get $1 + i32.add + global.set $~lib/rt/pure/CUR + local.get $5 + local.get $4 + i32.add + global.set $~lib/rt/pure/END + ) + (func $~lib/rt/pure/appendRoot (; 39 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + global.get $~lib/rt/pure/CUR + local.set $1 + local.get $1 + global.get $~lib/rt/pure/END + i32.ge_u + if + call $~lib/rt/pure/growRoots + global.get $~lib/rt/pure/CUR + local.set $1 + end + local.get $1 + local.get $0 + i32.store + local.get $1 + i32.const 4 + i32.add + global.set $~lib/rt/pure/CUR + ) + (func $~lib/rt/pure/decrement (; 40 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 268435455 + i32.and + local.set $2 + local.get $0 + call $~lib/rt/rtrace/ondecrement + local.get $0 + i32.load + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 456 + i32.const 115 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + i32.eq + if + local.get $0 + i32.const 16 + i32.add + i32.const 1 + call $~lib/rt/__visit_members + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + if + global.get $~lib/rt/tlsf/ROOT + local.get $0 + call $~lib/rt/tlsf/freeBlock + else + local.get $0 + i32.const -2147483648 + i32.const 0 + i32.or + i32.const 0 + i32.or + i32.store offset=4 + end + else + local.get $2 + i32.const 0 + i32.gt_u + i32.eqz + if + i32.const 0 + i32.const 456 + i32.const 124 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=8 + call $~lib/rt/__typeinfo + i32.const 16 + i32.and + i32.eqz + if + local.get $0 + i32.const -2147483648 + i32.const 805306368 + i32.or + local.get $2 + i32.const 1 + i32.sub + i32.or + i32.store offset=4 + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + if + local.get $0 + call $~lib/rt/pure/appendRoot + end + else + local.get $0 + local.get $1 + i32.const 268435455 + i32.const -1 + i32.xor + i32.and + local.get $2 + i32.const 1 + i32.sub + i32.or + i32.store offset=4 + end + end + ) + (func $~lib/rt/pure/__release (; 41 ;) (type $FUNCSIG$vi) (param $0 i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.gt_u + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/pure/decrement + end + ) + (func $start:std/array-literal (; 42 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + i32.const 48 + call $~lib/array/Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 2 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 48 + i32.const 0 + call $~lib/array/Array#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 3 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 48 + i32.const 1 + call $~lib/array/Array#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 4 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 48 + i32.const 2 + call $~lib/array/Array#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 5 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 272 + call $~lib/array/Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 8 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 272 + i32.const 0 + call $~lib/array/Array#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 9 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 272 + i32.const 1 + call $~lib/array/Array#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 10 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 272 + i32.const 2 + call $~lib/array/Array#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 11 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/array-literal/emptyArrayI32 + call $~lib/array/Array#get:length + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 14 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 0 + i32.const 3 + i32.const 0 + call $~lib/rt/__allocArray + local.set $1 + local.get $1 + i32.load offset=4 + local.set $0 + local.get $0 + global.get $std/array-literal/i + i32.store8 + local.get $0 + global.get $std/array-literal/i + i32.const 1 + i32.add + global.set $std/array-literal/i + global.get $std/array-literal/i + i32.store8 offset=1 + local.get $0 + global.get $std/array-literal/i + i32.const 1 + i32.add + global.set $std/array-literal/i + global.get $std/array-literal/i + i32.store8 offset=2 + local.get $1 + call $~lib/rt/pure/__retain + global.set $std/array-literal/dynamicArrayI8 + global.get $std/array-literal/dynamicArrayI8 + call $~lib/array/Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 19 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/array-literal/dynamicArrayI8 + i32.const 0 + call $~lib/array/Array#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 20 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/array-literal/dynamicArrayI8 + i32.const 1 + call $~lib/array/Array#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 21 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/array-literal/dynamicArrayI8 + i32.const 2 + call $~lib/array/Array#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 22 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + global.set $std/array-literal/i + i32.const 3 + i32.const 2 + i32.const 4 + i32.const 0 + call $~lib/rt/__allocArray + local.set $0 + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + global.get $std/array-literal/i + i32.store + local.get $1 + global.get $std/array-literal/i + i32.const 1 + i32.add + global.set $std/array-literal/i + global.get $std/array-literal/i + i32.store offset=4 + local.get $1 + global.get $std/array-literal/i + i32.const 1 + i32.add + global.set $std/array-literal/i + global.get $std/array-literal/i + i32.store offset=8 + local.get $0 + call $~lib/rt/pure/__retain + global.set $std/array-literal/dynamicArrayI32 + global.get $std/array-literal/dynamicArrayI32 + call $~lib/array/Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 27 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/array-literal/dynamicArrayI32 + i32.const 0 + call $~lib/array/Array#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 28 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/array-literal/dynamicArrayI32 + i32.const 1 + call $~lib/array/Array#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 29 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/array-literal/dynamicArrayI32 + i32.const 2 + call $~lib/array/Array#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 30 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 2 + i32.const 6 + i32.const 0 + call $~lib/rt/__allocArray + local.set $1 + local.get $1 + i32.load offset=4 + local.set $0 + local.get $0 + i32.const 0 + call $std/array-literal/Ref#constructor + local.tee $2 + call $~lib/rt/pure/__retain + i32.store + local.get $0 + i32.const 0 + call $std/array-literal/Ref#constructor + local.tee $3 + call $~lib/rt/pure/__retain + i32.store offset=4 + local.get $0 + i32.const 0 + call $std/array-literal/Ref#constructor + local.tee $4 + call $~lib/rt/pure/__retain + i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__retain + global.set $std/array-literal/dynamicArrayRef + global.get $std/array-literal/dynamicArrayRef + call $~lib/array/Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 34 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 2 + i32.const 8 + i32.const 0 + call $~lib/rt/__allocArray + local.set $0 + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 0 + call $std/array-literal/RefWithCtor#constructor + local.tee $5 + call $~lib/rt/pure/__retain + i32.store + local.get $1 + i32.const 0 + call $std/array-literal/RefWithCtor#constructor + local.tee $6 + call $~lib/rt/pure/__retain + i32.store offset=4 + local.get $1 + i32.const 0 + call $std/array-literal/RefWithCtor#constructor + local.tee $7 + call $~lib/rt/pure/__retain + i32.store offset=8 + local.get $0 + call $~lib/rt/pure/__retain + global.set $std/array-literal/dynamicArrayRefWithCtor + global.get $std/array-literal/dynamicArrayRefWithCtor + call $~lib/array/Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 38 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/array-literal/emptyArrayI32 + call $~lib/rt/pure/__release + global.get $std/array-literal/dynamicArrayI8 + call $~lib/rt/pure/__release + global.get $std/array-literal/dynamicArrayI32 + call $~lib/rt/pure/__release + global.get $std/array-literal/dynamicArrayRef + call $~lib/rt/pure/__release + global.get $std/array-literal/dynamicArrayRefWithCtor + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + ) + (func $start (; 43 ;) (type $FUNCSIG$v) + call $start:std/array-literal + ) + (func $~lib/array/Array#__visit_impl (; 44 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 45 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/rt/pure/__visit (; 46 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.lt_u + if + return + end + local.get $0 + i32.const 16 + i32.sub + local.set $2 + block $break|0 + block $case5|0 + block $case4|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $1 + local.set $3 + local.get $3 + i32.const 1 + i32.eq + br_if $case0|0 + local.get $3 + i32.const 2 + i32.eq + br_if $case1|0 + local.get $3 + i32.const 3 + i32.eq + br_if $case2|0 + local.get $3 + i32.const 4 + i32.eq + br_if $case3|0 + local.get $3 + i32.const 5 + i32.eq + br_if $case4|0 + br $case5|0 + end + local.get $2 + call $~lib/rt/pure/decrement + br $break|0 + end + local.get $2 + i32.load offset=4 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + i32.eqz + if + i32.const 0 + i32.const 456 + i32.const 75 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 1 + i32.sub + i32.store offset=4 + local.get $2 + call $~lib/rt/pure/markGray + br $break|0 + end + local.get $2 + call $~lib/rt/pure/scan + br $break|0 + end + local.get $2 + i32.load offset=4 + local.set $3 + local.get $3 + i32.const -268435456 + i32.and + local.get $3 + i32.const 1 + i32.add + i32.const -268435456 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 456 + i32.const 86 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $3 + i32.const 1 + i32.add + i32.store offset=4 + local.get $3 + i32.const 1879048192 + i32.and + i32.const 0 + i32.ne + if + local.get $2 + call $~lib/rt/pure/scanBlack + end + br $break|0 + end + local.get $2 + call $~lib/rt/pure/collectWhite + br $break|0 + end + i32.const 0 + i32.eqz + if + i32.const 0 + i32.const 456 + i32.const 97 + i32.const 24 + call $~lib/builtins/abort + unreachable + end + end + ) + (func $~lib/array/Array#__visit_impl (; 47 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/array/Array#__visit_impl (; 48 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/rt/__visit_members (; 49 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + block $block$4$break + block $switch$1$default + block $switch$1$case$10 + block $switch$1$case$8 + block $switch$1$case$6 + block $switch$1$case$5 + block $switch$1$case$4 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$6 $switch$1$case$2 $switch$1$case$8 $switch$1$case$2 $switch$1$case$10 $switch$1$default + end + return + end + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + unreachable + end + local.get $0 + i32.load + local.tee $2 + if + local.get $2 + local.get $1 + call $~lib/rt/pure/__visit + end + return + ) + (func $null (; 50 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 17f3638e63..0605ab2113 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -2212,7 +2212,7 @@ if i32.const 24 i32.const 72 - i32.const 14 + i32.const 22 i32.const 56 call $~lib/builtins/abort unreachable @@ -2411,7 +2411,7 @@ if i32.const 280 i32.const 488 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -2563,7 +2563,7 @@ if i32.const 280 i32.const 488 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -2906,7 +2906,7 @@ if i32.const 872 i32.const 488 - i32.const 274 + i32.const 270 i32.const 20 call $~lib/builtins/abort unreachable @@ -2951,7 +2951,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 488 - i32.const 204 + i32.const 200 i32.const 59 call $~lib/builtins/abort unreachable @@ -3131,7 +3131,7 @@ if i32.const 872 i32.const 488 - i32.const 335 + i32.const 331 i32.const 20 call $~lib/builtins/abort unreachable @@ -3967,7 +3967,7 @@ if i32.const 280 i32.const 488 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -5392,7 +5392,7 @@ if i32.const 280 i32.const 488 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -6375,7 +6375,7 @@ if i32.const 280 i32.const 488 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -6390,7 +6390,7 @@ call $~lib/rt/pure/__release i32.const 4040 i32.const 488 - i32.const 100 + i32.const 96 i32.const 39 call $~lib/builtins/abort unreachable @@ -6555,7 +6555,7 @@ if i32.const 280 i32.const 488 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/array.ts b/tests/compiler/std/array.ts index 61af5d4868..b4dc0e812a 100644 --- a/tests/compiler/std/array.ts +++ b/tests/compiler/std/array.ts @@ -5,7 +5,7 @@ import { COMPARATOR } from "util/sort"; function internalCapacity(array: Array): i32 { // the memory region used by the backing buffer might still be larger in that the ArrayBuffer // pre-allocates a power of 2 sized buffer itself and reuses it as long as it isn't exceeded. - var buffer: ArrayBuffer = array.data; + var buffer: ArrayBuffer = array.buffer; return buffer.byteLength >> alignof(); } diff --git a/tests/compiler/std/array.untouched.wat b/tests/compiler/std/array.untouched.wat index e69de29bb2..4095a701b1 100644 --- a/tests/compiler/std/array.untouched.wat +++ b/tests/compiler/std/array.untouched.wat @@ -0,0 +1,23605 @@ +(module + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$v (func)) + (type $FUNCSIG$vii (func (param i32 i32))) + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$fiii (func (param i32 i32 i32) (result f32))) + (type $FUNCSIG$fii (func (param i32 i32) (result f32))) + (type $FUNCSIG$d (func (result f64))) + (type $FUNCSIG$vj (func (param i64))) + (type $FUNCSIG$jj (func (param i64) (result i64))) + (type $FUNCSIG$iff (func (param f32 f32) (result i32))) + (type $FUNCSIG$if (func (param f32) (result i32))) + (type $FUNCSIG$idd (func (param f64 f64) (result i32))) + (type $FUNCSIG$dii (func (param i32 i32) (result f64))) + (type $FUNCSIG$id (func (param f64) (result i32))) + (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$iid (func (param i32 f64) (result i32))) + (type $FUNCSIG$jii (func (param i32 i32) (result i64))) + (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) + (type $FUNCSIG$iiid (func (param i32 i32 f64) (result i32))) + (type $FUNCSIG$ij (func (param i64) (result i32))) + (type $FUNCSIG$viji (func (param i32 i64 i32))) + (type $FUNCSIG$iiij (func (param i32 i32 i64) (result i32))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32))) + (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32))) + (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32))) + (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32))) + (import "Math" "random" (func $~lib/bindings/Math/random (result f64))) + (memory $0 1) + (data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") + (data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") + (data (i32.const 112) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") + (data (i32.const 160) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") + (data (i32.const 216) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") + (data (i32.const 264) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") + (data (i32.const 320) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") + (data (i32.const 360) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00s\00t\00d\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 400) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00a\00b\00c\00") + (data (i32.const 424) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\02\03\04\05") + (data (i32.const 448) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\01\04\05") + (data (i32.const 472) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 520) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\00\00\00\00\00") + (data (i32.const 544) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\00\00\00") + (data (i32.const 568) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\00\02\02") + (data (i32.const 592) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\00\02\02") + (data (i32.const 616) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 656) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 696) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 736) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 776) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\02\00\00\00") + (data (i32.const 816) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\02\00\00\00") + (data (i32.const 856) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00A\00r\00r\00a\00y\00 \00i\00s\00 \00e\00m\00p\00t\00y\00") + (data (i32.const 904) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 920) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 936) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 976) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1016) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1056) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1096) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1136) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00") + (data (i32.const 1176) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1216) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1256) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1296) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1336) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1376) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\04\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1416) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1456) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1496) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1536) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1576) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1616) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1656) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1696) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1736) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1776) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1816) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1856) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00") + (data (i32.const 1896) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1936) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1976) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 1992) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2032) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2064) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") + (data (i32.const 2088) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2128) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\03\00\00\00\04\00\00\00") + (data (i32.const 2152) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\05\00\00\00") + (data (i32.const 2184) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2224) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") + (data (i32.const 2248) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2280) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2320) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2344) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00") + (data (i32.const 2376) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2416) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2440) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00") + (data (i32.const 2472) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2512) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\04\00\00\00") + (data (i32.const 2536) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\05\00\00\00") + (data (i32.const 2568) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2608) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") + (data (i32.const 2632) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2664) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2704) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 2720) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2760) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2800) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 2816) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2856) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2896) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 2912) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2952) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 2992) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 3008) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 3048) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 3088) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 3104) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 3144) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s\00") + (data (i32.const 3184) "\ac\00\00\00\01\00\00\00\01\00\00\00\ac\00\00\00A\00B\00C\00D\00E\00F\00G\00H\00I\00J\00K\00L\00M\00N\00O\00P\00Q\00R\00S\00T\00U\00V\00W\00X\00Y\00Z\00a\00b\00c\00d\00e\00f\00g\00h\00i\00j\00k\00l\00m\00n\00o\00p\00q\00r\00s\00t\00u\00v\00w\00x\00y\00z\000\001\002\003\004\005\006\007\008\009\00_\00-\00,\00.\00+\00/\00\\\00[\00]\00{\00}\00(\00)\00<\00>\00*\00&\00$\00%\00^\00@\00#\00!\00?\00") + (data (i32.const 3376) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\00\00\80?\00\00\c0\7f\00\00\80\ff\00\00\80?\00\00\00\00\00\00\80\bf\00\00\00\c0\00\00\80\7f") + (data (i32.const 3424) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\00\00\80\ff\00\00\00\c0\00\00\80\bf\00\00\00\00\00\00\80?\00\00\80?\00\00\80\7f\00\00\c0\7f") + (data (i32.const 3472) "@\00\00\00\01\00\00\00\00\00\00\00@\00\00\00\00\00\00\00\00\00\f0?\00\00\00\00\00\00\f8\7f\00\00\00\00\00\00\f0\ff\05\00\00\00\00\00\f0?\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0\bf\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f0\7f") + (data (i32.const 3552) "@\00\00\00\01\00\00\00\00\00\00\00@\00\00\00\00\00\00\00\00\00\f0\ff\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f0\bf\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0?\05\00\00\00\00\00\f0?\00\00\00\00\00\00\f0\7f\00\00\00\00\00\00\f8\7f") + (data (i32.const 3632) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\02\00\00\00") + (data (i32.const 3672) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\01\00\00\00\02\00\00\00") + (data (i32.const 3712) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\ff\ff\ff\ff\fe\ff\ff\ff\00\00\00\00\02\00\00\00") + (data (i32.const 3752) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff") + (data (i32.const 3792) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 3808) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") + (data (i32.const 3832) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\02\00\00\00\01\00\00\00") + (data (i32.const 3856) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\03\00\00\00\02\00\00\00\01\00\00\00\00\00\00\00") + (data (i32.const 3888) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00") + (data (i32.const 3920) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00P\00R\00N\00G\00 \00m\00u\00s\00t\00 \00b\00e\00 \00s\00e\00e\00d\00e\00d\00.\00") + (data (i32.const 3976) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") + (data (i32.const 4000) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") + (data (i32.const 4024) "^\00\00\00\01\00\00\00\01\00\00\00^\00\00\00E\00l\00e\00m\00e\00n\00t\00 \00t\00y\00p\00e\00 \00m\00u\00s\00t\00 \00b\00e\00 \00n\00u\00l\00l\00a\00b\00l\00e\00 \00i\00f\00 \00a\00r\00r\00a\00y\00 \00i\00s\00 \00h\00o\00l\00e\00y\00") + (data (i32.const 4136) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00a\00") + (data (i32.const 4160) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00b\00") + (data (i32.const 4184) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00a\00b\00") + (data (i32.const 4208) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00b\00a\00") + (data (i32.const 4232) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00") + (data (i32.const 4248) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\008\10\00\00P\10\00\008\10\00\00h\10\00\00\80\10\00\00\98\10\00\00\00\00\00\00") + (data (i32.const 4296) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00\98\10\00\008\10\00\008\10\00\00h\10\00\00P\10\00\00\80\10\00\00\00\00\00\00") + (data (i32.const 4344) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00n\00u\00l\00l\00") + (data (i32.const 4368) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\01\00") + (data (i32.const 4392) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00t\00r\00u\00e\00") + (data (i32.const 4416) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00f\00a\00l\00s\00e\00") + (data (i32.const 4448) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00,\00") + (data (i32.const 4472) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00t\00r\00u\00e\00,\00f\00a\00l\00s\00e\00") + (data (i32.const 4512) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\fe\ff\ff\ff\fd\ff\ff\ff") + (data (i32.const 4544) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") + (data (i32.const 4568) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") + (data (i32.const 4984) "\10\00\00\00\01\00\00\00\07\00\00\00\10\00\00\00\e8\11\00\00\e8\11\00\00\90\01\00\00d\00\00\00") + (data (i32.const 5016) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\00-\002\00-\003\00") + (data (i32.const 5048) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00") + (data (i32.const 5080) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00-\00") + (data (i32.const 5104) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\00\00\00\80\00\00\00\80") + (data (i32.const 5128) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00_\00_\00") + (data (i32.const 5152) "0\00\00\00\01\00\00\00\01\00\00\000\00\00\00-\002\001\004\007\004\008\003\006\004\008\00_\00_\00-\002\001\004\007\004\008\003\006\004\008\00") + (data (i32.const 5216) "0\00\00\00\01\00\00\00\00\00\00\000\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0?\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f8\7f\00\00\00\00\00\00\f0\ff\00\00\00\00\00\00\f0\7f") + (data (i32.const 5280) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00,\00 \00") + (data (i32.const 5304) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") + (data (i32.const 5328) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") + (data (i32.const 5352) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 5392) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 5424) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|1 $start:std/array~anonymous|43 $start:std/array~anonymous|44 $start:std/array~anonymous|45 $start:std/array~anonymous|46 $start:std/array~anonymous|47 $start:std/array~anonymous|48 $~lib/util/sort/COMPARATOR<~lib/string/String | null>~anonymous|0 $~lib/util/sort/COMPARATOR<~lib/string/String>~anonymous|0) + (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) + (global $~lib/rt/tlsf/collectLock (mut i32) (i32.const 0)) + (global $~lib/gc/gc.auto (mut i32) (i32.const 1)) + (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) + (global $~lib/rt/pure/CUR (mut i32) (i32.const 0)) + (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) + (global $~lib/rt/pure/END (mut i32) (i32.const 0)) + (global $std/array/arr (mut i32) (i32.const 0)) + (global $~lib/builtins/i32.MAX_VALUE i32 (i32.const 2147483647)) + (global $std/array/i (mut i32) (i32.const 0)) + (global $~lib/argc (mut i32) (i32.const 0)) + (global $~lib/math/random_seeded (mut i32) (i32.const 0)) + (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) + (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) + (global $std/array/charset i32 (i32.const 3200)) + (global $~lib/builtins/i32.MIN_VALUE i32 (i32.const -2147483648)) + (global $~lib/util/number/_frc_plus (mut i64) (i64.const 0)) + (global $~lib/util/number/_frc_minus (mut i64) (i64.const 0)) + (global $~lib/util/number/_exp (mut i32) (i32.const 0)) + (global $~lib/util/number/_K (mut i32) (i32.const 0)) + (global $~lib/util/number/_frc_pow (mut i64) (i64.const 0)) + (global $~lib/util/number/_exp_pow (mut i32) (i32.const 0)) + (global $~lib/builtins/u32.MAX_VALUE i32 (i32.const -1)) + (global $~lib/builtins/i64.MAX_VALUE i64 (i64.const 9223372036854775807)) + (global $~lib/started (mut i32) (i32.const 0)) + (global $~lib/rt/__rtti_base i32 (i32.const 7648)) + (global $~lib/heap/__heap_base i32 (i32.const 7860)) + (export "__start" (func $start)) + (export "memory" (memory $0)) + (func $~lib/rt/tlsf/removeBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 277 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.set $3 + local.get $3 + i32.const 16 + i32.ge_u + if (result i32) + local.get $3 + i32.const 1073741808 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 279 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $4 + local.get $3 + i32.const 4 + i32.shr_u + local.set $5 + else + i32.const 31 + local.get $3 + i32.clz + i32.sub + local.set $4 + local.get $3 + local.get $4 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $5 + local.get $4 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $4 + end + local.get $4 + i32.const 23 + i32.lt_u + if (result i32) + local.get $5 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 292 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.load offset=16 + local.set $6 + local.get $1 + i32.load offset=20 + local.set $7 + local.get $6 + if + local.get $6 + local.get $7 + i32.store offset=20 + end + local.get $7 + if + local.get $7 + local.get $6 + i32.store offset=16 + end + local.get $1 + local.get $0 + local.set $10 + local.get $4 + local.set $9 + local.get $5 + local.set $8 + local.get $10 + local.get $9 + i32.const 4 + i32.shl + local.get $8 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + i32.eq + if + local.get $0 + local.set $11 + local.get $4 + local.set $10 + local.get $5 + local.set $9 + local.get $7 + local.set $8 + local.get $11 + local.get $10 + i32.const 4 + i32.shl + local.get $9 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $8 + i32.store offset=96 + local.get $7 + i32.eqz + if + local.get $0 + local.set $9 + local.get $4 + local.set $8 + local.get $9 + local.get $8 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + local.set $9 + local.get $0 + local.set $8 + local.get $4 + local.set $11 + local.get $9 + i32.const 1 + local.get $5 + i32.shl + i32.const -1 + i32.xor + i32.and + local.tee $9 + local.set $10 + local.get $8 + local.get $11 + i32.const 2 + i32.shl + i32.add + local.get $10 + i32.store offset=4 + local.get $9 + i32.eqz + if + local.get $0 + local.get $0 + i32.load + i32.const 1 + local.get $4 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + end + end + end + ) + (func $~lib/rt/tlsf/insertBlock (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + local.get $1 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 205 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 207 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.set $3 + local.get $3 + i32.const 16 + i32.add + local.get $3 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $4 + local.get $4 + i32.load + local.set $5 + local.get $5 + i32.const 1 + i32.and + if + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $5 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $3 + local.get $3 + i32.const 1073741808 + i32.lt_u + if + local.get $0 + local.get $4 + call $~lib/rt/tlsf/removeBlock + local.get $1 + local.get $2 + i32.const 3 + i32.and + local.get $3 + i32.or + local.tee $2 + i32.store + local.get $1 + local.set $6 + local.get $6 + i32.const 16 + i32.add + local.get $6 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $4 + local.get $4 + i32.load + local.set $5 + end + end + local.get $2 + i32.const 2 + i32.and + if + local.get $1 + local.set $6 + local.get $6 + i32.const 4 + i32.sub + i32.load + local.set $6 + local.get $6 + i32.load + local.set $3 + local.get $3 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 228 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $7 + local.get $7 + i32.const 1073741808 + i32.lt_u + if + local.get $0 + local.get $6 + call $~lib/rt/tlsf/removeBlock + local.get $6 + local.get $3 + i32.const 3 + i32.and + local.get $7 + i32.or + local.tee $2 + i32.store + local.get $6 + local.set $1 + end + end + local.get $4 + local.get $5 + i32.const 2 + i32.or + i32.store + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.set $8 + local.get $8 + i32.const 16 + i32.ge_u + if (result i32) + local.get $8 + i32.const 1073741808 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 243 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 16 + i32.add + local.get $8 + i32.add + local.get $4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 244 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 4 + i32.sub + local.get $1 + i32.store + local.get $8 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $9 + local.get $8 + i32.const 4 + i32.shr_u + local.set $10 + else + i32.const 31 + local.get $8 + i32.clz + i32.sub + local.set $9 + local.get $8 + local.get $9 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $10 + local.get $9 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $9 + end + local.get $9 + i32.const 23 + i32.lt_u + if (result i32) + local.get $10 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 260 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $7 + local.get $9 + local.set $3 + local.get $10 + local.set $6 + local.get $7 + local.get $3 + i32.const 4 + i32.shl + local.get $6 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $11 + local.get $1 + i32.const 0 + i32.store offset=16 + local.get $1 + local.get $11 + i32.store offset=20 + local.get $11 + if + local.get $11 + local.get $1 + i32.store offset=16 + end + local.get $0 + local.set $12 + local.get $9 + local.set $7 + local.get $10 + local.set $3 + local.get $1 + local.set $6 + local.get $12 + local.get $7 + i32.const 4 + i32.shl + local.get $3 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store offset=96 + local.get $0 + local.get $0 + i32.load + i32.const 1 + local.get $9 + i32.shl + i32.or + i32.store + local.get $0 + local.set $13 + local.get $9 + local.set $12 + local.get $0 + local.set $3 + local.get $9 + local.set $6 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + i32.const 1 + local.get $10 + i32.shl + i32.or + local.set $7 + local.get $13 + local.get $12 + i32.const 2 + i32.shl + i32.add + local.get $7 + i32.store offset=4 + ) + (func $~lib/rt/tlsf/addMemory (; 8 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $1 + local.get $2 + i32.le_u + if (result i32) + local.get $1 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + if (result i32) + local.get $2 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 386 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $3 + local.get $3 + i32.load offset=1568 + local.set $4 + i32.const 0 + local.set $5 + local.get $4 + if + local.get $1 + local.get $4 + i32.const 16 + i32.add + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 396 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 16 + i32.sub + local.get $4 + i32.eq + if + local.get $1 + i32.const 16 + i32.sub + local.set $1 + local.get $4 + i32.load + local.set $5 + else + nop + end + else + local.get $1 + local.get $0 + i32.const 1572 + i32.add + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 408 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + end + local.get $2 + local.get $1 + i32.sub + local.set $6 + local.get $6 + i32.const 48 + i32.lt_u + if + i32.const 0 + return + end + local.get $6 + i32.const 16 + i32.const 1 + i32.shl + i32.sub + local.set $7 + local.get $1 + local.set $8 + local.get $8 + local.get $7 + i32.const 1 + i32.or + local.get $5 + i32.const 2 + i32.and + i32.or + i32.store + local.get $8 + i32.const 0 + i32.store offset=16 + local.get $8 + i32.const 0 + i32.store offset=20 + local.get $1 + local.get $6 + i32.add + i32.const 16 + i32.sub + local.set $4 + local.get $4 + i32.const 0 + i32.const 2 + i32.or + i32.store + local.get $0 + local.set $9 + local.get $4 + local.set $3 + local.get $9 + local.get $3 + i32.store offset=1568 + local.get $0 + local.get $8 + call $~lib/rt/tlsf/insertBlock + i32.const 1 + ) + (func $~lib/rt/tlsf/initializeRoot (; 9 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $~lib/heap/__heap_base + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.set $0 + memory.size + local.set $1 + local.get $0 + i32.const 1572 + i32.add + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $2 + local.get $2 + local.get $1 + i32.gt_s + if (result i32) + local.get $2 + local.get $1 + i32.sub + memory.grow + i32.const 0 + i32.lt_s + else + i32.const 0 + end + if + unreachable + end + local.get $0 + local.set $3 + local.get $3 + i32.const 0 + i32.store + local.get $3 + local.set $5 + i32.const 0 + local.set $4 + local.get $5 + local.get $4 + i32.store offset=1568 + block $break|0 + i32.const 0 + local.set $5 + loop $loop|0 + local.get $5 + i32.const 23 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $3 + local.set $7 + local.get $5 + local.set $6 + i32.const 0 + local.set $4 + local.get $7 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store offset=4 + block $break|1 + i32.const 0 + local.set $7 + loop $loop|1 + local.get $7 + i32.const 16 + i32.lt_u + i32.eqz + br_if $break|1 + local.get $3 + local.set $9 + local.get $5 + local.set $8 + local.get $7 + local.set $6 + i32.const 0 + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $6 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store offset=96 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + local.get $0 + i32.const 1572 + i32.add + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + memory.size + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + drop + local.get $3 + global.set $~lib/rt/tlsf/ROOT + ) + (func $~lib/rt/tlsf/prepareSize (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 1073741808 + i32.ge_u + if + i32.const 176 + i32.const 128 + i32.const 457 + i32.const 29 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.tee $1 + i32.const 16 + local.tee $2 + local.get $1 + local.get $2 + i32.gt_u + select + ) + (func $~lib/rt/tlsf/searchBlock (; 11 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $1 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $2 + local.get $1 + i32.const 4 + i32.shr_u + local.set $3 + else + local.get $1 + i32.const 536870904 + i32.lt_u + if (result i32) + local.get $1 + i32.const 1 + i32.const 27 + local.get $1 + i32.clz + i32.sub + i32.shl + i32.add + i32.const 1 + i32.sub + else + local.get $1 + end + local.set $4 + i32.const 31 + local.get $4 + i32.clz + i32.sub + local.set $2 + local.get $4 + local.get $2 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $3 + local.get $2 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $2 + end + local.get $2 + i32.const 23 + i32.lt_u + if (result i32) + local.get $3 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 338 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $5 + local.get $2 + local.set $4 + local.get $5 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + i32.const 0 + i32.const -1 + i32.xor + local.get $3 + i32.shl + i32.and + local.set $6 + i32.const 0 + local.set $7 + local.get $6 + i32.eqz + if + local.get $0 + i32.load + i32.const 0 + i32.const -1 + i32.xor + local.get $2 + i32.const 1 + i32.add + i32.shl + i32.and + local.set $5 + local.get $5 + i32.eqz + if + i32.const 0 + local.set $7 + else + local.get $5 + i32.ctz + local.set $2 + local.get $0 + local.set $8 + local.get $2 + local.set $4 + local.get $8 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + local.set $6 + local.get $6 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 351 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $9 + local.get $2 + local.set $8 + local.get $6 + i32.ctz + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $4 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $7 + end + else + local.get $0 + local.set $9 + local.get $2 + local.set $8 + local.get $6 + i32.ctz + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $4 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $7 + end + local.get $7 + ) + (func $~lib/rt/pure/markGray (; 12 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 268435456 + i32.ne + if + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 268435456 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 2 + call $~lib/rt/__visit_members + end + ) + (func $~lib/rt/tlsf/freeBlock (; 13 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $2 + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $1 + call $~lib/rt/tlsf/insertBlock + local.get $1 + call $~lib/rt/rtrace/onfree + ) + (func $~lib/rt/pure/scanBlack (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) + local.get $0 + local.get $0 + i32.load offset=4 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 0 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 4 + call $~lib/rt/__visit_members + ) + (func $~lib/rt/pure/scan (; 15 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 268435456 + i32.eq + if + local.get $1 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + if + local.get $0 + call $~lib/rt/pure/scanBlack + else + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 536870912 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 3 + call $~lib/rt/__visit_members + end + end + ) + (func $~lib/rt/pure/collectWhite (; 16 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 536870912 + i32.eq + if (result i32) + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + else + i32.const 0 + end + if + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 0 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 5 + call $~lib/rt/__visit_members + global.get $~lib/rt/tlsf/ROOT + local.get $0 + call $~lib/rt/tlsf/freeBlock + end + ) + (func $~lib/rt/pure/__collect (; 17 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $~lib/rt/pure/ROOTS + local.set $0 + local.get $0 + local.set $1 + block $break|0 + local.get $1 + local.set $2 + global.get $~lib/rt/pure/CUR + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + i32.load offset=4 + local.set $5 + local.get $5 + i32.const 1879048192 + i32.and + i32.const 805306368 + i32.eq + if (result i32) + local.get $5 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + else + i32.const 0 + end + if + local.get $4 + call $~lib/rt/pure/markGray + local.get $1 + local.get $4 + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $1 + else + local.get $5 + i32.const 1879048192 + i32.and + i32.const 0 + i32.eq + if (result i32) + local.get $5 + i32.const 268435455 + i32.and + i32.eqz + else + i32.const 0 + end + if + global.get $~lib/rt/tlsf/ROOT + local.get $4 + call $~lib/rt/tlsf/freeBlock + else + local.get $4 + local.get $5 + i32.const -2147483648 + i32.const -1 + i32.xor + i32.and + i32.store offset=4 + end + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + local.get $1 + global.set $~lib/rt/pure/CUR + block $break|1 + local.get $0 + local.set $5 + loop $loop|1 + local.get $5 + local.get $1 + i32.lt_u + i32.eqz + br_if $break|1 + local.get $5 + i32.load + call $~lib/rt/pure/scan + local.get $5 + i32.const 4 + i32.add + local.set $5 + br $loop|1 + end + unreachable + end + block $break|2 + local.get $0 + local.set $5 + loop $loop|2 + local.get $5 + local.get $1 + i32.lt_u + i32.eqz + br_if $break|2 + local.get $5 + i32.load + local.set $4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const -2147483648 + i32.const -1 + i32.xor + i32.and + i32.store offset=4 + local.get $4 + call $~lib/rt/pure/collectWhite + local.get $5 + i32.const 4 + i32.add + local.set $5 + br $loop|2 + end + unreachable + end + local.get $0 + global.set $~lib/rt/pure/CUR + ) + (func $~lib/rt/tlsf/growMemory (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $1 + i32.const 536870904 + i32.lt_u + if + local.get $1 + i32.const 1 + i32.const 27 + local.get $1 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + i32.add + local.set $1 + end + memory.size + local.set $2 + local.get $1 + i32.const 16 + local.get $2 + i32.const 16 + i32.shl + i32.const 16 + i32.sub + local.get $0 + local.set $3 + local.get $3 + i32.load offset=1568 + i32.ne + i32.shl + i32.add + local.set $1 + local.get $1 + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $4 + local.get $2 + local.tee $3 + local.get $4 + local.tee $5 + local.get $3 + local.get $5 + i32.gt_s + select + local.set $6 + local.get $6 + memory.grow + i32.const 0 + i32.lt_s + if + local.get $4 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + memory.size + local.set $7 + local.get $0 + local.get $2 + i32.const 16 + i32.shl + local.get $7 + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + drop + ) + (func $~lib/rt/tlsf/prepareBlock (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + i32.const 15 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 365 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.get $2 + i32.sub + local.set $4 + local.get $4 + i32.const 32 + i32.ge_u + if + local.get $1 + local.get $2 + local.get $3 + i32.const 2 + i32.and + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.get $2 + i32.add + local.set $5 + local.get $5 + local.get $4 + i32.const 16 + i32.sub + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $5 + call $~lib/rt/tlsf/insertBlock + else + local.get $1 + local.get $3 + i32.const 1 + i32.const -1 + i32.xor + i32.and + i32.store + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + i32.load + i32.const 2 + i32.const -1 + i32.xor + i32.and + i32.store + end + ) + (func $~lib/rt/tlsf/allocateBlock (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/tlsf/collectLock + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 486 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/rt/tlsf/prepareSize + local.set $2 + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + global.get $~lib/gc/gc.auto + if + i32.const 1 + global.set $~lib/rt/tlsf/collectLock + call $~lib/rt/pure/__collect + i32.const 0 + global.set $~lib/rt/tlsf/collectLock + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + local.get $0 + local.get $2 + call $~lib/rt/tlsf/growMemory + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 498 + i32.const 19 + call $~lib/builtins/abort + unreachable + end + end + else + local.get $0 + local.get $2 + call $~lib/rt/tlsf/growMemory + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 503 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + end + end + local.get $3 + i32.load + i32.const -4 + i32.and + local.get $2 + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 506 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $0 + local.get $3 + call $~lib/rt/tlsf/removeBlock + local.get $0 + local.get $3 + local.get $2 + call $~lib/rt/tlsf/prepareBlock + local.get $3 + call $~lib/rt/rtrace/onalloc + local.get $3 + ) + (func $~lib/rt/tlsf/__alloc (; 21 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/tlsf/ROOT + local.set $2 + local.get $2 + i32.eqz + if + call $~lib/rt/tlsf/initializeRoot + global.get $~lib/rt/tlsf/ROOT + local.set $2 + end + local.get $2 + local.get $0 + call $~lib/rt/tlsf/allocateBlock + local.set $3 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 16 + i32.add + ) + (func $~lib/memory/memory.fill (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + block $~lib/util/memory/memset|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 1 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 2 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.get $4 + i32.store8 + local.get $5 + i32.const 2 + i32.add + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 2 + i32.sub + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 3 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 6 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 3 + i32.add + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 8 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + i32.const 0 + local.get $5 + i32.sub + i32.const 3 + i32.and + local.set $6 + local.get $5 + local.get $6 + i32.add + local.set $5 + local.get $3 + local.get $6 + i32.sub + local.set $3 + local.get $3 + i32.const -4 + i32.and + local.set $3 + i32.const -1 + i32.const 255 + i32.div_u + local.get $4 + i32.const 255 + i32.and + i32.mul + local.set $7 + local.get $5 + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.get $7 + i32.store + local.get $3 + i32.const 8 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 4 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 8 + i32.add + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 12 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 8 + i32.sub + local.get $7 + i32.store + local.get $3 + i32.const 24 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 12 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 16 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 20 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 24 + i32.add + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 28 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 24 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 20 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 16 + i32.sub + local.get $7 + i32.store + i32.const 24 + local.get $5 + i32.const 4 + i32.and + i32.add + local.set $6 + local.get $5 + local.get $6 + i32.add + local.set $5 + local.get $3 + local.get $6 + i32.sub + local.set $3 + local.get $7 + i64.extend_i32_u + local.get $7 + i64.extend_i32_u + i64.const 32 + i64.shl + i64.or + local.set $8 + block $break|0 + loop $continue|0 + local.get $3 + i32.const 32 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $5 + local.get $8 + i64.store + local.get $5 + i32.const 8 + i32.add + local.get $8 + i64.store + local.get $5 + i32.const 16 + i32.add + local.get $8 + i64.store + local.get $5 + i32.const 24 + i32.add + local.get $8 + i64.store + local.get $3 + i32.const 32 + i32.sub + local.set $3 + local.get $5 + i32.const 32 + i32.add + local.set $5 + br $continue|0 + end + unreachable + end + end + ) + (func $~lib/rt/pure/increment (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const -268435456 + i32.and + local.get $1 + i32.const 1 + i32.add + i32.const -268435456 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 104 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + call $~lib/rt/rtrace/onincrement + local.get $0 + i32.load + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 107 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/rt/pure/__retain (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.gt_u + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/pure/increment + end + local.get $0 + ) + (func $~lib/rt/__typeinfo (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + global.get $~lib/rt/__rtti_base + local.set $1 + local.get $0 + local.get $1 + i32.load + i32.gt_u + if + i32.const 280 + i32.const 336 + i32.const 22 + i32.const 27 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 4 + i32.add + local.get $0 + i32.const 8 + i32.mul + i32.add + i32.load + ) + (func $~lib/util/memory/memcpy (; 26 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + loop $continue|0 + local.get $2 + if (result i32) + local.get $1 + i32.const 3 + i32.and + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $0 + i32.const 3 + i32.and + i32.const 0 + i32.eq + if + block $break|1 + loop $continue|1 + local.get $2 + i32.const 16 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 8 + i32.add + i32.load + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 12 + i32.add + i32.load + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|1 + end + unreachable + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.set $0 + local.get $1 + i32.const 4 + i32.add + local.set $1 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load16_u + i32.store16 + local.get $0 + i32.const 2 + i32.add + local.set $0 + local.get $1 + i32.const 2 + i32.add + local.set $1 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + return + end + local.get $2 + i32.const 32 + i32.ge_u + if + block $break|2 + block $case2|2 + block $case1|2 + block $case0|2 + local.get $0 + i32.const 3 + i32.and + local.set $5 + local.get $5 + i32.const 1 + i32.eq + br_if $case0|2 + local.get $5 + i32.const 2 + i32.eq + br_if $case1|2 + local.get $5 + i32.const 3 + i32.eq + br_if $case2|2 + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 3 + i32.sub + local.set $2 + block $break|3 + loop $continue|3 + local.get $2 + i32.const 17 + i32.ge_u + i32.eqz + br_if $break|3 + local.get $1 + i32.const 1 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 5 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 9 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 13 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|3 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + block $break|4 + loop $continue|4 + local.get $2 + i32.const 18 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $1 + i32.const 2 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 6 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 10 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 14 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|4 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + block $break|5 + loop $continue|5 + local.get $2 + i32.const 19 + i32.ge_u + i32.eqz + br_if $break|5 + local.get $1 + i32.const 3 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 7 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 11 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 15 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|5 + end + unreachable + end + br $break|2 + end + end + local.get $2 + i32.const 16 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + ) + (func $~lib/memory/memory.copy (; 27 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + local.get $4 + i32.eq + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $4 + local.get $3 + i32.add + local.get $5 + i32.le_u + if (result i32) + i32.const 1 + else + local.get $5 + local.get $3 + i32.add + local.get $4 + i32.le_u + end + if + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $4 + i32.lt_u + if + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|0 + loop $continue|0 + local.get $5 + i32.const 7 + i32.and + i32.eqz + br_if $break|0 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $3 + i32.const 1 + i32.sub + local.set $3 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + br $continue|0 + end + unreachable + end + block $break|1 + loop $continue|1 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $5 + local.get $4 + i64.load + i64.store + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + i32.const 8 + i32.add + local.set $5 + local.get $4 + i32.const 8 + i32.add + local.set $4 + br $continue|1 + end + unreachable + end + end + block $break|2 + loop $continue|2 + local.get $3 + i32.eqz + br_if $break|2 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + local.get $3 + i32.const 1 + i32.sub + local.set $3 + br $continue|2 + end + unreachable + end + else + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|3 + loop $continue|3 + local.get $5 + local.get $3 + i32.add + i32.const 7 + i32.and + i32.eqz + br_if $break|3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + local.get $3 + i32.add + local.get $4 + local.get $3 + i32.add + i64.load + i64.store + br $continue|4 + end + unreachable + end + end + block $break|5 + loop $continue|5 + local.get $3 + i32.eqz + br_if $break|5 + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|5 + end + unreachable + end + end + end + ) + (func $~lib/rt/tlsf/__free (; 28 ;) (type $FUNCSIG$vi) (param $0 i32) + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 593 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 594 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/tlsf/ROOT + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/tlsf/freeBlock + ) + (func $~lib/rt/pure/growRoots (; 29 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $~lib/rt/pure/ROOTS + local.set $0 + global.get $~lib/rt/pure/CUR + local.get $0 + i32.sub + local.set $1 + local.get $1 + i32.const 2 + i32.mul + local.tee $2 + i32.const 64 + i32.const 2 + i32.shl + local.tee $3 + local.get $2 + local.get $3 + i32.gt_u + select + local.set $4 + local.get $4 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $5 + i32.const 16 + i32.sub + call $~lib/rt/rtrace/onfree + local.get $5 + local.get $0 + local.get $1 + call $~lib/memory/memory.copy + local.get $0 + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/rtrace/onalloc + local.get $0 + call $~lib/rt/tlsf/__free + end + local.get $5 + global.set $~lib/rt/pure/ROOTS + local.get $5 + local.get $1 + i32.add + global.set $~lib/rt/pure/CUR + local.get $5 + local.get $4 + i32.add + global.set $~lib/rt/pure/END + ) + (func $~lib/rt/pure/appendRoot (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + global.get $~lib/rt/pure/CUR + local.set $1 + local.get $1 + global.get $~lib/rt/pure/END + i32.ge_u + if + call $~lib/rt/pure/growRoots + global.get $~lib/rt/pure/CUR + local.set $1 + end + local.get $1 + local.get $0 + i32.store + local.get $1 + i32.const 4 + i32.add + global.set $~lib/rt/pure/CUR + ) + (func $~lib/rt/pure/decrement (; 31 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 268435455 + i32.and + local.set $2 + local.get $0 + call $~lib/rt/rtrace/ondecrement + local.get $0 + i32.load + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 115 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + i32.eq + if + local.get $0 + i32.const 16 + i32.add + i32.const 1 + call $~lib/rt/__visit_members + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + if + global.get $~lib/rt/tlsf/ROOT + local.get $0 + call $~lib/rt/tlsf/freeBlock + else + local.get $0 + i32.const -2147483648 + i32.const 0 + i32.or + i32.const 0 + i32.or + i32.store offset=4 + end + else + local.get $2 + i32.const 0 + i32.gt_u + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 124 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=8 + call $~lib/rt/__typeinfo + i32.const 16 + i32.and + i32.eqz + if + local.get $0 + i32.const -2147483648 + i32.const 805306368 + i32.or + local.get $2 + i32.const 1 + i32.sub + i32.or + i32.store offset=4 + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + if + local.get $0 + call $~lib/rt/pure/appendRoot + end + else + local.get $0 + local.get $1 + i32.const 268435455 + i32.const -1 + i32.xor + i32.and + local.get $2 + i32.const 1 + i32.sub + i32.or + i32.store offset=4 + end + end + ) + (func $~lib/rt/pure/__release (; 32 ;) (type $FUNCSIG$vi) (param $0 i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.gt_u + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/pure/decrement + end + ) + (func $~lib/arraybuffer/ArrayBufferView#constructor (; 33 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.const 1073741808 + local.get $2 + i32.shr_u + i32.gt_u + if + i32.const 24 + i32.const 72 + i32.const 22 + i32.const 56 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $2 + i32.shl + local.tee $1 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $3 + local.get $3 + i32.const 0 + local.get $1 + call $~lib/memory/memory.fill + local.get $0 + i32.eqz + if + i32.const 12 + i32.const 2 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $0 + end + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + i32.load + local.tee $4 + i32.ne + if + local.get $5 + call $~lib/rt/pure/__retain + drop + local.get $4 + call $~lib/rt/pure/__release + end + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + ) + (func $~lib/array/Array#constructor (; 34 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 16 + i32.const 3 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 2 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=12 + local.get $0 + ) + (func $~lib/array/Array.isArray<~lib/array/Array | null> (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + i32.const 1 + if (result i32) + local.get $0 + i32.const 0 + i32.ne + else + i32.const 0 + end + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + ) + (func $~lib/array/Array.isArray<~lib/array/Array> (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + i32.const 1 + if (result i32) + local.get $0 + i32.const 0 + i32.ne + else + i32.const 0 + end + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + ) + (func $std/array/P#constructor (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 4 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $0 + end + local.get $0 + ) + (func $~lib/array/Array.isArray (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + i32.const 0 + if (result i32) + local.get $0 + i32.const 0 + i32.ne + else + i32.const 0 + end + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + ) + (func $~lib/typedarray/Uint8Array#constructor (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 5 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 0 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/array/Array.isArray<~lib/typedarray/Uint8Array> (; 40 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + i32.const 0 + if (result i32) + local.get $0 + i32.const 0 + i32.ne + else + i32.const 0 + end + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + ) + (func $~lib/array/Array.isArray (; 41 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + i32.const 0 + if (result i32) + local.get $0 + i32.const 0 + i32.ne + else + i32.const 0 + end + ) + (func $~lib/array/Array.isArray<~lib/string/String> (; 42 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + i32.const 0 + if (result i32) + local.get $0 + i32.const 0 + i32.ne + else + i32.const 0 + end + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + ) + (func $~lib/rt/__allocArray (; 43 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + i32.const 16 + local.get $2 + call $~lib/rt/tlsf/__alloc + local.set $4 + local.get $0 + local.get $1 + i32.shl + local.set $5 + local.get $5 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $4 + local.get $6 + call $~lib/rt/pure/__retain + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $4 + local.get $5 + i32.store offset=8 + local.get $4 + local.get $0 + i32.store offset=12 + local.get $3 + if + local.get $6 + local.get $3 + local.get $5 + call $~lib/memory/memory.copy + end + local.get $4 + ) + (func $~lib/array/Array#fill (; 44 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=12 + local.set $5 + local.get $2 + i32.const 0 + i32.lt_s + if (result i32) + local.get $5 + local.get $2 + i32.add + local.tee $6 + i32.const 0 + local.tee $7 + local.get $6 + local.get $7 + i32.gt_s + select + else + local.get $2 + local.tee $6 + local.get $5 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + end + local.set $2 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $5 + local.get $3 + i32.add + local.tee $6 + i32.const 0 + local.tee $7 + local.get $6 + local.get $7 + i32.gt_s + select + else + local.get $3 + local.tee $6 + local.get $5 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + end + local.set $3 + local.get $2 + local.get $3 + i32.lt_s + if + local.get $4 + local.get $2 + i32.add + local.get $1 + local.get $3 + local.get $2 + i32.sub + call $~lib/memory/memory.fill + end + local.get $0 + call $~lib/rt/pure/__retain + ) + (func $~lib/array/Array#get:length (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array#__unchecked_get (; 46 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 0 + i32.shl + i32.add + i32.load8_u + ) + (func $~lib/array/Array#__get (; 47 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 280 + i32.const 488 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $std/array/isArraysEqual (; 48 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.eqz + if + local.get $0 + call $~lib/array/Array#get:length + local.set $2 + local.get $2 + local.get $1 + call $~lib/array/Array#get:length + i32.ne + if + i32.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + end + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $2 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + call $~lib/array/Array#__get + local.get $1 + local.get $3 + call $~lib/array/Array#__get + i32.ne + if + i32.const 0 + local.set $4 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/array/Array#fill (; 49 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=12 + local.set $5 + local.get $2 + i32.const 0 + i32.lt_s + if (result i32) + local.get $5 + local.get $2 + i32.add + local.tee $6 + i32.const 0 + local.tee $7 + local.get $6 + local.get $7 + i32.gt_s + select + else + local.get $2 + local.tee $6 + local.get $5 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + end + local.set $2 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $5 + local.get $3 + i32.add + local.tee $6 + i32.const 0 + local.tee $7 + local.get $6 + local.get $7 + i32.gt_s + select + else + local.get $3 + local.tee $6 + local.get $5 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + end + local.set $3 + block $break|0 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $4 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $1 + i32.store + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + local.get $0 + call $~lib/rt/pure/__retain + ) + (func $~lib/array/Array#get:length (; 50 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array#__unchecked_get (; 51 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + ) + (func $~lib/array/Array#__get (; 52 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 280 + i32.const 488 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $std/array/isArraysEqual (; 53 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.eqz + if + local.get $0 + call $~lib/array/Array#get:length + local.set $2 + local.get $2 + local.get $1 + call $~lib/array/Array#get:length + i32.ne + if + i32.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + end + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $2 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + call $~lib/array/Array#__get + local.get $1 + local.get $3 + call $~lib/array/Array#__get + i32.ne + if + i32.const 0 + local.set $4 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/array/Array#get:length (; 54 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 55 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 16 + i32.sub + i32.load offset=12 + ) + (func $std/array/internalCapacity (; 56 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 2 + i32.shr_s + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/rt/tlsf/reallocateBlock (; 57 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $2 + call $~lib/rt/tlsf/prepareSize + local.set $3 + local.get $1 + i32.load + local.set $4 + local.get $4 + i32.const 1 + i32.and + i32.eqz + if (result i32) + local.get $1 + i32.load offset=4 + i32.const -268435456 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 521 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + local.get $4 + i32.const -4 + i32.and + i32.le_u + if + local.get $0 + local.get $1 + local.get $3 + call $~lib/rt/tlsf/prepareBlock + local.get $1 + local.get $2 + i32.store offset=12 + local.get $1 + return + end + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $6 + local.get $6 + i32.load + local.set $7 + local.get $7 + i32.const 1 + i32.and + if + local.get $4 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $7 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $5 + local.get $5 + local.get $3 + i32.ge_u + if + local.get $0 + local.get $6 + call $~lib/rt/tlsf/removeBlock + local.get $1 + local.get $4 + i32.const 3 + i32.and + local.get $5 + i32.or + i32.store + local.get $1 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $1 + local.get $3 + call $~lib/rt/tlsf/prepareBlock + local.get $1 + return + end + end + local.get $0 + local.get $2 + call $~lib/rt/tlsf/allocateBlock + local.set $8 + local.get $8 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $8 + i32.const 16 + i32.add + local.get $1 + i32.const 16 + i32.add + local.get $2 + call $~lib/memory/memory.copy + local.get $1 + local.get $4 + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $1 + call $~lib/rt/tlsf/insertBlock + local.get $1 + call $~lib/rt/rtrace/onfree + local.get $8 + ) + (func $~lib/rt/tlsf/__realloc (; 58 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 585 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/tlsf/ROOT + local.get $0 + i32.const 16 + i32.sub + local.get $1 + call $~lib/rt/tlsf/reallocateBlock + i32.const 16 + i32.add + ) + (func $~lib/array/ensureSize (; 59 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=8 + local.set $3 + local.get $1 + local.get $3 + local.get $2 + i32.shr_u + i32.gt_u + if + local.get $1 + i32.const 1073741808 + local.get $2 + i32.shr_u + i32.gt_u + if + i32.const 24 + i32.const 488 + i32.const 14 + i32.const 47 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load + local.set $4 + local.get $1 + local.get $2 + i32.shl + local.set $5 + local.get $4 + local.get $5 + call $~lib/rt/tlsf/__realloc + local.set $6 + local.get $6 + local.get $3 + i32.add + i32.const 0 + local.get $5 + local.get $3 + i32.sub + call $~lib/memory/memory.fill + local.get $6 + local.get $4 + i32.ne + if + local.get $0 + local.get $6 + call $~lib/rt/pure/__retain + i32.store + local.get $0 + local.get $6 + i32.store offset=4 + end + local.get $0 + local.get $5 + i32.store offset=8 + end + ) + (func $~lib/array/Array#push (; 60 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 1 + i32.add + local.set $3 + local.get $0 + local.get $3 + i32.const 2 + call $~lib/array/ensureSize + local.get $0 + i32.load offset=4 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $1 + i32.store + local.get $0 + local.get $3 + i32.store offset=12 + local.get $3 + ) + (func $~lib/array/Array#__unchecked_get (; 61 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + ) + (func $~lib/array/Array#__get (; 62 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 280 + i32.const 488 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $~lib/array/Array#pop (; 63 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=12 + local.set $1 + local.get $1 + i32.const 1 + i32.lt_s + if + i32.const 872 + i32.const 488 + i32.const 270 + i32.const 20 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.sub + local.tee $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $2 + local.get $0 + local.get $1 + i32.store offset=12 + local.get $2 + ) + (func $~lib/array/Array#concat (; 64 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=12 + local.set $2 + i32.const 0 + local.get $1 + i32.load offset=12 + local.get $1 + i32.const 0 + i32.eq + select + local.set $3 + local.get $2 + local.get $3 + i32.add + local.set $4 + local.get $4 + i32.const 268435452 + i32.gt_u + if + local.get $1 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 488 + i32.const 200 + i32.const 59 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 2 + i32.const 3 + i32.const 0 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.set $5 + local.get $5 + i32.load offset=4 + local.set $6 + local.get $2 + i32.const 2 + i32.shl + local.set $7 + local.get $6 + local.get $0 + i32.load offset=4 + local.get $7 + call $~lib/memory/memory.copy + local.get $6 + local.get $7 + i32.add + local.get $1 + i32.load offset=4 + local.get $3 + i32.const 2 + i32.shl + call $~lib/memory/memory.copy + local.get $5 + local.set $8 + local.get $1 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/array/Array#copyWithin (; 65 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 + i32.load offset=4 + local.set $4 + local.get $0 + i32.load offset=12 + local.set $5 + local.get $3 + local.tee $6 + local.get $5 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + local.set $3 + local.get $1 + i32.const 0 + i32.lt_s + if (result i32) + local.get $5 + local.get $1 + i32.add + local.tee $6 + i32.const 0 + local.tee $7 + local.get $6 + local.get $7 + i32.gt_s + select + else + local.get $1 + local.tee $6 + local.get $5 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + end + local.set $8 + local.get $2 + i32.const 0 + i32.lt_s + if (result i32) + local.get $5 + local.get $2 + i32.add + local.tee $6 + i32.const 0 + local.tee $7 + local.get $6 + local.get $7 + i32.gt_s + select + else + local.get $2 + local.tee $6 + local.get $5 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + end + local.set $9 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $5 + local.get $3 + i32.add + local.tee $6 + i32.const 0 + local.tee $7 + local.get $6 + local.get $7 + i32.gt_s + select + else + local.get $3 + local.tee $6 + local.get $5 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + end + local.set $10 + local.get $10 + local.get $9 + i32.sub + local.tee $6 + local.get $5 + local.get $8 + i32.sub + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + local.set $11 + local.get $4 + local.get $8 + i32.const 2 + i32.shl + i32.add + local.get $4 + local.get $9 + i32.const 2 + i32.shl + i32.add + local.get $11 + i32.const 2 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + call $~lib/rt/pure/__retain + ) + (func $std/array/isArraysEqual (; 66 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.eqz + if + local.get $0 + call $~lib/array/Array#get:length + local.set $2 + local.get $2 + local.get $1 + call $~lib/array/Array#get:length + i32.ne + if + i32.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + end + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $2 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + call $~lib/array/Array#__get + local.get $1 + local.get $3 + call $~lib/array/Array#__get + i32.ne + if + i32.const 0 + local.set $4 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/array/Array#unshift (; 67 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.load offset=12 + i32.const 1 + i32.add + local.set $2 + local.get $0 + local.get $2 + i32.const 2 + call $~lib/array/ensureSize + local.get $0 + i32.load offset=4 + local.set $3 + local.get $3 + i32.const 4 + i32.add + local.get $3 + local.get $2 + i32.const 1 + i32.sub + i32.const 2 + i32.shl + call $~lib/memory/memory.copy + local.get $3 + local.get $1 + i32.store + local.get $0 + local.get $2 + i32.store offset=12 + local.get $2 + ) + (func $~lib/array/Array#shift (; 68 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=12 + local.set $1 + local.get $1 + i32.const 1 + i32.lt_s + if + i32.const 872 + i32.const 488 + i32.const 331 + i32.const 20 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + i32.load + local.set $3 + local.get $1 + i32.const 1 + i32.sub + local.set $4 + local.get $2 + local.get $2 + i32.const 4 + i32.add + local.get $4 + i32.const 2 + i32.shl + call $~lib/memory/memory.copy + local.get $2 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.const 0 + i32.store + local.get $0 + local.get $4 + i32.store offset=12 + local.get $3 + ) + (func $~lib/array/Array#reverse (; 69 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=12 + local.set $1 + local.get $1 + if + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.sub + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $2 + local.get $3 + i32.load + i32.store + local.get $3 + local.get $4 + i32.store + local.get $2 + i32.const 4 + i32.add + local.set $2 + local.get $3 + i32.const 4 + i32.sub + local.set $3 + br $continue|0 + end + unreachable + end + end + local.get $0 + call $~lib/rt/pure/__retain + ) + (func $~lib/array/Array#indexOf (; 70 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=12 + local.set $3 + local.get $3 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $2 + local.get $3 + i32.ge_s + end + if + i32.const -1 + return + end + local.get $2 + i32.const 0 + i32.lt_s + if + local.get $3 + local.get $2 + i32.add + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.set $2 + end + local.get $0 + i32.load offset=4 + local.set $6 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $6 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $1 + i32.eq + if + local.get $2 + return + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + i32.const -1 + ) + (func $~lib/array/Array#includes (; 71 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + local.get $0 + local.get $1 + local.get $2 + call $~lib/array/Array#indexOf + i32.const 0 + i32.ge_s + ) + (func $~lib/array/Array#splice (; 72 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $0 + i32.load offset=12 + local.set $3 + local.get $1 + i32.const 0 + i32.lt_s + if (result i32) + local.get $3 + local.get $1 + i32.add + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + else + local.get $1 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + end + local.set $1 + local.get $2 + local.tee $4 + local.get $3 + local.get $1 + i32.sub + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.set $2 + local.get $2 + i32.const 2 + i32.const 3 + i32.const 0 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.set $6 + local.get $6 + i32.load offset=4 + local.set $7 + local.get $0 + i32.load offset=4 + local.set $8 + local.get $8 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.set $9 + local.get $7 + local.get $9 + local.get $2 + i32.const 2 + i32.shl + call $~lib/memory/memory.copy + local.get $1 + local.get $2 + i32.add + local.set $10 + local.get $3 + local.get $10 + i32.ne + if + local.get $9 + local.get $8 + local.get $10 + i32.const 2 + i32.shl + i32.add + local.get $3 + local.get $10 + i32.sub + i32.const 2 + i32.shl + call $~lib/memory/memory.copy + end + local.get $0 + local.get $3 + local.get $2 + i32.sub + i32.store offset=12 + local.get $6 + ) + (func $~lib/array/Array#__unchecked_set (; 73 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $2 + i32.store + ) + (func $~lib/array/Array#__set (; 74 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.const 2 + call $~lib/array/ensureSize + local.get $0 + local.get $1 + local.get $2 + call $~lib/array/Array#__unchecked_set + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_s + if + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=12 + end + ) + (func $start:std/array~anonymous|0 (; 75 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/array/Array#findIndex (; 76 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + i32.const 0 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + local.tee $4 + local.get $0 + i32.load offset=12 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $0 + i32.load offset=4 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $2 + local.get $0 + local.get $1 + call_indirect (type $FUNCSIG$iiii) + if + local.get $2 + return + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + i32.const -1 + ) + (func $start:std/array~anonymous|1 (; 77 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 1 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|2 (; 78 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 100 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|3 (; 79 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.const 100 + call $~lib/array/Array#push + drop + local.get $0 + i32.const 100 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|4 (; 80 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 100 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|5 (; 81 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/array/Array#pop + drop + local.get $0 + i32.const 100 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|6 (; 82 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 0 + i32.ge_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/array/Array#every (; 83 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + i32.const 0 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + local.tee $4 + local.get $0 + i32.load offset=12 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $0 + i32.load offset=4 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $2 + local.get $0 + local.get $1 + call_indirect (type $FUNCSIG$iiii) + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + return + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + i32.const 1 + ) + (func $start:std/array~anonymous|7 (; 84 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 0 + i32.le_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|8 (; 85 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.const 100 + call $~lib/array/Array#push + drop + local.get $0 + i32.const 10 + i32.lt_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|9 (; 86 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 10 + i32.lt_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|10 (; 87 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/array/Array#pop + drop + local.get $0 + i32.const 3 + i32.lt_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|11 (; 88 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 3 + i32.ge_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/array/Array#some (; 89 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + i32.const 0 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + local.tee $4 + local.get $0 + i32.load offset=12 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $0 + i32.load offset=4 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $2 + local.get $0 + local.get $1 + call_indirect (type $FUNCSIG$iiii) + if + i32.const 1 + return + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + i32.const 0 + ) + (func $start:std/array~anonymous|12 (; 90 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const -1 + i32.le_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|13 (; 91 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.const 100 + call $~lib/array/Array#push + drop + local.get $0 + i32.const 10 + i32.gt_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|14 (; 92 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 10 + i32.gt_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|15 (; 93 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/array/Array#pop + drop + local.get $0 + i32.const 3 + i32.gt_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|16 (; 94 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/array/i + local.get $0 + i32.add + global.set $std/array/i + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/array/Array#forEach (; 95 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + i32.const 0 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + local.tee $4 + local.get $0 + i32.load offset=12 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $0 + i32.load offset=4 + local.get $2 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $2 + local.get $0 + local.get $1 + call_indirect (type $FUNCSIG$viii) + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + ) + (func $start:std/array~anonymous|17 (; 96 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.const 100 + call $~lib/array/Array#push + drop + global.get $std/array/i + local.get $0 + i32.add + global.set $std/array/i + local.get $2 + call $~lib/rt/pure/__release + ) + (func $start:std/array~anonymous|18 (; 97 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/array/i + local.get $0 + i32.add + global.set $std/array/i + local.get $2 + call $~lib/rt/pure/__release + ) + (func $start:std/array~anonymous|19 (; 98 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/array/Array#pop + drop + global.get $std/array/i + local.get $0 + i32.add + global.set $std/array/i + local.get $2 + call $~lib/rt/pure/__release + ) + (func $start:std/array~anonymous|20 (; 99 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 0 + i32.eq + if + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + i32.const 4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $2 + call $~lib/array/Array#pop + drop + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|0 + end + unreachable + end + block $break|1 + i32.const 0 + local.set $3 + loop $loop|1 + local.get $3 + i32.const 100 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $2 + i32.const 100 + local.get $3 + i32.add + call $~lib/array/Array#push + drop + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|1 + end + unreachable + end + block $break|2 + i32.const 0 + local.set $3 + loop $loop|2 + local.get $3 + i32.const 100 + i32.lt_s + i32.eqz + br_if $break|2 + local.get $2 + call $~lib/array/Array#pop + drop + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|2 + end + unreachable + end + block $break|3 + i32.const 0 + local.set $3 + loop $loop|3 + local.get $3 + i32.const 100 + i32.lt_s + i32.eqz + br_if $break|3 + local.get $2 + local.get $3 + i32.const 200 + i32.add + call $~lib/array/Array#push + drop + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|3 + end + unreachable + end + end + local.get $1 + i32.const 2 + i32.eq + if + local.get $0 + i32.const 202 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 569 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + end + local.get $2 + call $~lib/rt/pure/__release + ) + (func $start:std/array~anonymous|21 (; 100 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) + (local $3 f32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f32.convert_i32_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/array/Array#map (; 101 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 f32) + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 2 + i32.const 8 + i32.const 0 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.set $3 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + loop $loop|0 + local.get $5 + local.get $2 + local.tee $6 + local.get $0 + i32.load offset=12 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $0 + i32.load offset=4 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + local.get $0 + local.get $1 + call_indirect (type $FUNCSIG$fiii) + local.set $8 + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + local.get $8 + f32.store + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + ) + (func $~lib/array/Array#get:length (; 102 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array#__unchecked_get (; 103 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + f32.load + ) + (func $~lib/array/Array#__get (; 104 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) + (local $2 f32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 280 + i32.const 488 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $start:std/array~anonymous|22 (; 105 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.const 100 + call $~lib/array/Array#push + drop + global.get $std/array/i + local.get $0 + i32.add + global.set $std/array/i + local.get $0 + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/array/Array#map (; 106 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 2 + i32.const 3 + i32.const 0 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.set $3 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + loop $loop|0 + local.get $5 + local.get $2 + local.tee $6 + local.get $0 + i32.load offset=12 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $0 + i32.load offset=4 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + local.get $0 + local.get $1 + call_indirect (type $FUNCSIG$iiii) + local.set $6 + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + ) + (func $start:std/array~anonymous|23 (; 107 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/array/i + local.get $0 + i32.add + global.set $std/array/i + local.get $0 + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|24 (; 108 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/array/Array#pop + drop + global.get $std/array/i + local.get $0 + i32.add + global.set $std/array/i + local.get $0 + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|25 (; 109 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 2 + i32.ge_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/array/Array#filter (; 110 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + i32.const 0 + i32.const 2 + i32.const 3 + i32.const 0 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.set $2 + block $break|0 + i32.const 0 + local.set $3 + local.get $0 + i32.load offset=12 + local.set $4 + loop $loop|0 + local.get $3 + local.get $4 + local.tee $5 + local.get $0 + i32.load offset=12 + local.tee $6 + local.get $5 + local.get $6 + i32.lt_s + select + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + i32.load offset=4 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + i32.const 3 + global.set $~lib/argc + local.get $5 + local.get $3 + local.get $0 + local.get $1 + call_indirect (type $FUNCSIG$iiii) + if + local.get $2 + local.get $5 + call $~lib/array/Array#push + drop + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|0 + end + unreachable + end + local.get $2 + ) + (func $start:std/array~anonymous|26 (; 111 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.const 100 + call $~lib/array/Array#push + drop + global.get $std/array/i + local.get $0 + i32.add + global.set $std/array/i + local.get $0 + i32.const 2 + i32.ge_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|27 (; 112 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/array/i + local.get $0 + i32.add + global.set $std/array/i + local.get $0 + i32.const 2 + i32.ge_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|28 (; 113 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/array/Array#pop + drop + global.get $std/array/i + local.get $0 + i32.add + global.set $std/array/i + local.get $0 + i32.const 2 + i32.ge_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $start:std/array~anonymous|29 (; 114 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#reduce (; 115 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $2 + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + local.get $0 + i32.load offset=12 + local.set $5 + loop $loop|0 + local.get $4 + local.get $5 + local.tee $6 + local.get $0 + i32.load offset=12 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $0 + i32.load offset=4 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $4 + local.get $0 + local.get $1 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + ) + (func $start:std/array~anonymous|30 (; 116 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $start:std/array~anonymous|31 (; 117 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 2 + i32.gt_s + end + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#reduce (; 118 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $2 + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + local.get $0 + i32.load offset=12 + local.set $5 + loop $loop|0 + local.get $4 + local.get $5 + local.tee $6 + local.get $0 + i32.load offset=12 + local.tee $7 + local.get $6 + local.get $7 + i32.lt_s + select + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $0 + i32.load offset=4 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $4 + local.get $0 + local.get $1 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + ) + (func $start:std/array~anonymous|32 (; 119 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 100 + i32.gt_s + end + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $start:std/array~anonymous|33 (; 120 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $3 + i32.const 1 + call $~lib/array/Array#push + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $start:std/array~anonymous|34 (; 121 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $start:std/array~anonymous|35 (; 122 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $3 + call $~lib/array/Array#pop + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $start:std/array~anonymous|36 (; 123 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#reduceRight (; 124 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + local.get $2 + local.set $3 + block $break|0 + local.get $0 + i32.load offset=12 + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $4 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $0 + i32.load offset=4 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $4 + local.get $0 + local.get $1 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + ) + (func $start:std/array~anonymous|37 (; 125 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $start:std/array~anonymous|38 (; 126 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 2 + i32.gt_s + end + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#reduceRight (; 127 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + local.get $2 + local.set $3 + block $break|0 + local.get $0 + i32.load offset=12 + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $4 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $0 + i32.load offset=4 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $4 + local.get $0 + local.get $1 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + ) + (func $start:std/array~anonymous|39 (; 128 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 100 + i32.gt_s + end + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $start:std/array~anonymous|40 (; 129 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $3 + i32.const 1 + call $~lib/array/Array#push + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $start:std/array~anonymous|41 (; 130 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $start:std/array~anonymous|42 (; 131 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $3 + call $~lib/array/Array#pop + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/math/murmurHash3 (; 132 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -49064778989728563 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -4265267296055464877 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + ) + (func $~lib/math/splitMix32 (; 133 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.set $0 + local.get $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.set $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + local.get $0 + i32.const 61 + i32.or + i32.mul + i32.add + i32.xor + local.set $0 + local.get $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 134 ;) (type $FUNCSIG$vj) (param $0 i64) + i32.const 1 + global.set $~lib/math/random_seeded + local.get $0 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + local.get $0 + i32.wrap_i64 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + if (result i32) + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state0_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 3160 + i32.const 1369 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/util/sort/insertionSort (; 135 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 f32) + (local $5 i32) + (local $6 f32) + (local $7 i32) + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + f32.load + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + block $break|1 + loop $continue|1 + local.get $5 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + f32.load + local.set $6 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $6 + local.get $2 + call_indirect (type $FUNCSIG$iff) + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $5 + local.tee $7 + i32.const 1 + i32.sub + local.set $5 + local.get $7 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $6 + f32.store + else + br $break|1 + end + br $continue|1 + end + unreachable + end + local.get $0 + local.get $5 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $4 + f32.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|0 + end + unreachable + end + ) + (func $~lib/util/sort/weakHeapSort (; 136 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 f32) + (local $9 f32) + (local $10 f32) + local.get $1 + i32.const 31 + i32.add + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + local.set $3 + local.get $3 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $4 + local.get $4 + i32.const 0 + local.get $3 + call $~lib/memory/memory.fill + block $break|0 + local.get $1 + i32.const 1 + i32.sub + local.set $5 + loop $loop|0 + local.get $5 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|0 + local.get $5 + local.set $6 + block $break|1 + loop $continue|1 + local.get $6 + i32.const 1 + i32.and + local.get $4 + local.get $6 + i32.const 6 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + local.get $6 + i32.const 1 + i32.shr_s + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + i32.eq + i32.eqz + br_if $break|1 + local.get $6 + i32.const 1 + i32.shr_s + local.set $6 + br $continue|1 + end + unreachable + end + local.get $6 + i32.const 1 + i32.shr_s + local.set $7 + local.get $0 + local.get $7 + i32.const 2 + i32.shl + i32.add + f32.load + local.set $8 + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + f32.load + local.set $9 + i32.const 2 + global.set $~lib/argc + local.get $8 + local.get $9 + local.get $2 + call_indirect (type $FUNCSIG$iff) + i32.const 0 + i32.lt_s + if + local.get $4 + local.get $5 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + local.get $4 + local.get $5 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + i32.const 1 + local.get $5 + i32.const 31 + i32.and + i32.shl + i32.xor + i32.store + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + local.get $8 + f32.store + local.get $0 + local.get $7 + i32.const 2 + i32.shl + i32.add + local.get $9 + f32.store + end + local.get $5 + i32.const 1 + i32.sub + local.set $5 + br $loop|0 + end + unreachable + end + block $break|2 + local.get $1 + i32.const 1 + i32.sub + local.set $7 + loop $loop|2 + local.get $7 + i32.const 2 + i32.ge_s + i32.eqz + br_if $break|2 + local.get $0 + f32.load + local.set $9 + local.get $0 + local.get $0 + local.get $7 + i32.const 2 + i32.shl + i32.add + f32.load + f32.store + local.get $0 + local.get $7 + i32.const 2 + i32.shl + i32.add + local.get $9 + f32.store + i32.const 1 + local.set $6 + block $break|3 + loop $continue|3 + local.get $6 + i32.const 1 + i32.shl + local.get $4 + local.get $6 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + local.get $6 + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + i32.add + local.tee $5 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|3 + local.get $5 + local.set $6 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $6 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|4 + local.get $0 + f32.load + local.set $9 + local.get $0 + local.get $6 + i32.const 2 + i32.shl + i32.add + f32.load + local.set $8 + i32.const 2 + global.set $~lib/argc + local.get $9 + local.get $8 + local.get $2 + call_indirect (type $FUNCSIG$iff) + i32.const 0 + i32.lt_s + if + local.get $4 + local.get $6 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + local.get $4 + local.get $6 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + i32.const 1 + local.get $6 + i32.const 31 + i32.and + i32.shl + i32.xor + i32.store + local.get $0 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $9 + f32.store + local.get $0 + local.get $8 + f32.store + end + local.get $6 + i32.const 1 + i32.shr_s + local.set $6 + br $continue|4 + end + unreachable + end + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|2 + end + unreachable + end + local.get $4 + call $~lib/rt/tlsf/__free + local.get $0 + f32.load offset=4 + local.set $10 + local.get $0 + local.get $0 + f32.load + f32.store offset=4 + local.get $0 + local.get $10 + f32.store + ) + (func $~lib/array/Array#sort (; 137 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 f32) + (local $5 f32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 1 + i32.le_s + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 2 + i32.eq + if + local.get $3 + f32.load offset=4 + local.set $4 + local.get $3 + f32.load + local.set $5 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $5 + local.get $1 + call_indirect (type $FUNCSIG$iff) + i32.const 0 + i32.lt_s + if + local.get $3 + local.get $5 + f32.store offset=4 + local.get $3 + local.get $4 + f32.store + end + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $3 + local.set $8 + local.get $2 + local.set $7 + local.get $1 + local.set $6 + local.get $7 + i32.const 256 + i32.lt_s + if + local.get $8 + local.get $7 + local.get $6 + call $~lib/util/sort/insertionSort + else + local.get $8 + local.get $7 + local.get $6 + call $~lib/util/sort/weakHeapSort + end + local.get $0 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 138 ;) (type $FUNCSIG$iff) (param $0 f32) (param $1 f32) (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + i32.reinterpret_f32 + local.set $2 + local.get $1 + i32.reinterpret_f32 + local.set $3 + local.get $2 + local.get $2 + i32.const 31 + i32.shr_s + i32.const 1 + i32.shr_u + i32.xor + local.set $2 + local.get $3 + local.get $3 + i32.const 31 + i32.shr_s + i32.const 1 + i32.shr_u + i32.xor + local.set $3 + local.get $2 + local.get $3 + i32.gt_s + local.get $2 + local.get $3 + i32.lt_s + i32.sub + ) + (func $~lib/array/Array#sort|trampoline (; 139 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + block $~lib/util/sort/COMPARATOR|inlined.0 (result i32) + i32.const 44 + br $~lib/util/sort/COMPARATOR|inlined.0 + end + local.set $1 + end + local.get $0 + local.get $1 + call $~lib/array/Array#sort + ) + (func $~lib/number/isNaN (; 140 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + local.get $0 + local.get $0 + f32.ne + ) + (func $std/array/isArraysEqual (; 141 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.eqz + if + local.get $0 + call $~lib/array/Array#get:length + local.set $2 + local.get $2 + local.get $1 + call $~lib/array/Array#get:length + i32.ne + if + i32.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + end + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $2 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + local.get $0 + local.get $3 + call $~lib/array/Array#__get + call $~lib/number/isNaN + local.get $1 + local.get $3 + call $~lib/array/Array#__get + call $~lib/number/isNaN + i32.eq + if + br $continue|0 + end + local.get $0 + local.get $3 + call $~lib/array/Array#__get + local.get $1 + local.get $3 + call $~lib/array/Array#__get + f32.ne + if + i32.const 0 + local.set $4 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + end + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/util/sort/insertionSort (; 142 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 i32) + (local $6 f64) + (local $7 i32) + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + block $break|1 + loop $continue|1 + local.get $5 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $6 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $6 + local.get $2 + call_indirect (type $FUNCSIG$idd) + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $5 + local.tee $7 + i32.const 1 + i32.sub + local.set $5 + local.get $7 + i32.const 1 + i32.add + i32.const 3 + i32.shl + i32.add + local.get $6 + f64.store + else + br $break|1 + end + br $continue|1 + end + unreachable + end + local.get $0 + local.get $5 + i32.const 1 + i32.add + i32.const 3 + i32.shl + i32.add + local.get $4 + f64.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|0 + end + unreachable + end + ) + (func $~lib/util/sort/weakHeapSort (; 143 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 f64) + (local $9 f64) + (local $10 f64) + local.get $1 + i32.const 31 + i32.add + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + local.set $3 + local.get $3 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $4 + local.get $4 + i32.const 0 + local.get $3 + call $~lib/memory/memory.fill + block $break|0 + local.get $1 + i32.const 1 + i32.sub + local.set $5 + loop $loop|0 + local.get $5 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|0 + local.get $5 + local.set $6 + block $break|1 + loop $continue|1 + local.get $6 + i32.const 1 + i32.and + local.get $4 + local.get $6 + i32.const 6 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + local.get $6 + i32.const 1 + i32.shr_s + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + i32.eq + i32.eqz + br_if $break|1 + local.get $6 + i32.const 1 + i32.shr_s + local.set $6 + br $continue|1 + end + unreachable + end + local.get $6 + i32.const 1 + i32.shr_s + local.set $7 + local.get $0 + local.get $7 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $8 + local.get $0 + local.get $5 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $9 + i32.const 2 + global.set $~lib/argc + local.get $8 + local.get $9 + local.get $2 + call_indirect (type $FUNCSIG$idd) + i32.const 0 + i32.lt_s + if + local.get $4 + local.get $5 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + local.get $4 + local.get $5 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + i32.const 1 + local.get $5 + i32.const 31 + i32.and + i32.shl + i32.xor + i32.store + local.get $0 + local.get $5 + i32.const 3 + i32.shl + i32.add + local.get $8 + f64.store + local.get $0 + local.get $7 + i32.const 3 + i32.shl + i32.add + local.get $9 + f64.store + end + local.get $5 + i32.const 1 + i32.sub + local.set $5 + br $loop|0 + end + unreachable + end + block $break|2 + local.get $1 + i32.const 1 + i32.sub + local.set $7 + loop $loop|2 + local.get $7 + i32.const 2 + i32.ge_s + i32.eqz + br_if $break|2 + local.get $0 + f64.load + local.set $9 + local.get $0 + local.get $0 + local.get $7 + i32.const 3 + i32.shl + i32.add + f64.load + f64.store + local.get $0 + local.get $7 + i32.const 3 + i32.shl + i32.add + local.get $9 + f64.store + i32.const 1 + local.set $6 + block $break|3 + loop $continue|3 + local.get $6 + i32.const 1 + i32.shl + local.get $4 + local.get $6 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + local.get $6 + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + i32.add + local.tee $5 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|3 + local.get $5 + local.set $6 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $6 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|4 + local.get $0 + f64.load + local.set $9 + local.get $0 + local.get $6 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $8 + i32.const 2 + global.set $~lib/argc + local.get $9 + local.get $8 + local.get $2 + call_indirect (type $FUNCSIG$idd) + i32.const 0 + i32.lt_s + if + local.get $4 + local.get $6 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + local.get $4 + local.get $6 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + i32.const 1 + local.get $6 + i32.const 31 + i32.and + i32.shl + i32.xor + i32.store + local.get $0 + local.get $6 + i32.const 3 + i32.shl + i32.add + local.get $9 + f64.store + local.get $0 + local.get $8 + f64.store + end + local.get $6 + i32.const 1 + i32.shr_s + local.set $6 + br $continue|4 + end + unreachable + end + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|2 + end + unreachable + end + local.get $4 + call $~lib/rt/tlsf/__free + local.get $0 + f64.load offset=8 + local.set $10 + local.get $0 + local.get $0 + f64.load + f64.store offset=8 + local.get $0 + local.get $10 + f64.store + ) + (func $~lib/array/Array#sort (; 144 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 1 + i32.le_s + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 2 + i32.eq + if + local.get $3 + f64.load offset=8 + local.set $4 + local.get $3 + f64.load + local.set $5 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $5 + local.get $1 + call_indirect (type $FUNCSIG$idd) + i32.const 0 + i32.lt_s + if + local.get $3 + local.get $5 + f64.store offset=8 + local.get $3 + local.get $4 + f64.store + end + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $3 + local.set $8 + local.get $2 + local.set $7 + local.get $1 + local.set $6 + local.get $7 + i32.const 256 + i32.lt_s + if + local.get $8 + local.get $7 + local.get $6 + call $~lib/util/sort/insertionSort + else + local.get $8 + local.get $7 + local.get $6 + call $~lib/util/sort/weakHeapSort + end + local.get $0 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 145 ;) (type $FUNCSIG$idd) (param $0 f64) (param $1 f64) (result i32) + (local $2 i64) + (local $3 i64) + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $1 + i64.reinterpret_f64 + local.set $3 + local.get $2 + local.get $2 + i64.const 63 + i64.shr_s + i64.const 1 + i64.shr_u + i64.xor + local.set $2 + local.get $3 + local.get $3 + i64.const 63 + i64.shr_s + i64.const 1 + i64.shr_u + i64.xor + local.set $3 + local.get $2 + local.get $3 + i64.gt_s + local.get $2 + local.get $3 + i64.lt_s + i32.sub + ) + (func $~lib/array/Array#sort|trampoline (; 146 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + block $~lib/util/sort/COMPARATOR|inlined.0 (result i32) + i32.const 45 + br $~lib/util/sort/COMPARATOR|inlined.0 + end + local.set $1 + end + local.get $0 + local.get $1 + call $~lib/array/Array#sort + ) + (func $~lib/array/Array#get:length (; 147 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array#__unchecked_get (; 148 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + f64.load + ) + (func $~lib/array/Array#__get (; 149 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) + (local $2 f64) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 280 + i32.const 488 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $~lib/number/isNaN (; 150 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.ne + ) + (func $std/array/isArraysEqual (; 151 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.eqz + if + local.get $0 + call $~lib/array/Array#get:length + local.set $2 + local.get $2 + local.get $1 + call $~lib/array/Array#get:length + i32.ne + if + i32.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + end + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $2 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + local.get $0 + local.get $3 + call $~lib/array/Array#__get + call $~lib/number/isNaN + local.get $1 + local.get $3 + call $~lib/array/Array#__get + call $~lib/number/isNaN + i32.eq + if + br $continue|0 + end + local.get $0 + local.get $3 + call $~lib/array/Array#__get + local.get $1 + local.get $3 + call $~lib/array/Array#__get + f64.ne + if + i32.const 0 + local.set $4 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + end + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/util/sort/insertionSort (; 152 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + block $break|1 + loop $continue|1 + local.get $5 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $6 + local.get $2 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $5 + local.tee $7 + i32.const 1 + i32.sub + local.set $5 + local.get $7 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store + else + br $break|1 + end + br $continue|1 + end + unreachable + end + local.get $0 + local.get $5 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|0 + end + unreachable + end + ) + (func $~lib/util/sort/weakHeapSort (; 153 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $1 + i32.const 31 + i32.add + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + local.set $3 + local.get $3 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $4 + local.get $4 + i32.const 0 + local.get $3 + call $~lib/memory/memory.fill + block $break|0 + local.get $1 + i32.const 1 + i32.sub + local.set $5 + loop $loop|0 + local.get $5 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|0 + local.get $5 + local.set $6 + block $break|1 + loop $continue|1 + local.get $6 + i32.const 1 + i32.and + local.get $4 + local.get $6 + i32.const 6 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + local.get $6 + i32.const 1 + i32.shr_s + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + i32.eq + i32.eqz + br_if $break|1 + local.get $6 + i32.const 1 + i32.shr_s + local.set $6 + br $continue|1 + end + unreachable + end + local.get $6 + i32.const 1 + i32.shr_s + local.set $7 + local.get $0 + local.get $7 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $8 + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $9 + i32.const 2 + global.set $~lib/argc + local.get $8 + local.get $9 + local.get $2 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $4 + local.get $5 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + local.get $4 + local.get $5 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + i32.const 1 + local.get $5 + i32.const 31 + i32.and + i32.shl + i32.xor + i32.store + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + local.get $8 + i32.store + local.get $0 + local.get $7 + i32.const 2 + i32.shl + i32.add + local.get $9 + i32.store + end + local.get $5 + i32.const 1 + i32.sub + local.set $5 + br $loop|0 + end + unreachable + end + block $break|2 + local.get $1 + i32.const 1 + i32.sub + local.set $9 + loop $loop|2 + local.get $9 + i32.const 2 + i32.ge_s + i32.eqz + br_if $break|2 + local.get $0 + i32.load + local.set $8 + local.get $0 + local.get $0 + local.get $9 + i32.const 2 + i32.shl + i32.add + i32.load + i32.store + local.get $0 + local.get $9 + i32.const 2 + i32.shl + i32.add + local.get $8 + i32.store + i32.const 1 + local.set $7 + block $break|3 + loop $continue|3 + local.get $7 + i32.const 1 + i32.shl + local.get $4 + local.get $7 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + local.get $7 + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + i32.add + local.tee $6 + local.get $9 + i32.lt_s + i32.eqz + br_if $break|3 + local.get $6 + local.set $7 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $7 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|4 + local.get $0 + i32.load + local.set $8 + local.get $0 + local.get $7 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + i32.const 2 + global.set $~lib/argc + local.get $8 + local.get $5 + local.get $2 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $4 + local.get $7 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + local.get $4 + local.get $7 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + i32.const 1 + local.get $7 + i32.const 31 + i32.and + i32.shl + i32.xor + i32.store + local.get $0 + local.get $7 + i32.const 2 + i32.shl + i32.add + local.get $8 + i32.store + local.get $0 + local.get $5 + i32.store + end + local.get $7 + i32.const 1 + i32.shr_s + local.set $7 + br $continue|4 + end + unreachable + end + local.get $9 + i32.const 1 + i32.sub + local.set $9 + br $loop|2 + end + unreachable + end + local.get $4 + call $~lib/rt/tlsf/__free + local.get $0 + i32.load offset=4 + local.set $10 + local.get $0 + local.get $0 + i32.load + i32.store offset=4 + local.get $0 + local.get $10 + i32.store + ) + (func $~lib/array/Array#sort (; 154 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 1 + i32.le_s + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 2 + i32.eq + if + local.get $3 + i32.load offset=4 + local.set $4 + local.get $3 + i32.load + local.set $5 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $5 + local.get $1 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $3 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store + end + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $3 + local.set $6 + local.get $2 + local.set $5 + local.get $1 + local.set $4 + local.get $5 + i32.const 256 + i32.lt_s + if + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/sort/insertionSort + else + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/sort/weakHeapSort + end + local.get $0 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 155 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + local.get $1 + i32.sub + ) + (func $~lib/array/Array#sort|trampoline (; 156 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + block $~lib/util/sort/COMPARATOR|inlined.0 (result i32) + i32.const 46 + br $~lib/util/sort/COMPARATOR|inlined.0 + end + local.set $1 + end + local.get $0 + local.get $1 + call $~lib/array/Array#sort + ) + (func $~lib/util/sort/insertionSort (; 157 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + block $break|1 + loop $continue|1 + local.get $5 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $6 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $6 + local.get $2 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $5 + local.tee $7 + i32.const 1 + i32.sub + local.set $5 + local.get $7 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store + else + br $break|1 + end + br $continue|1 + end + unreachable + end + local.get $0 + local.get $5 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|0 + end + unreachable + end + ) + (func $~lib/util/sort/weakHeapSort (; 158 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $1 + i32.const 31 + i32.add + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + local.set $3 + local.get $3 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $4 + local.get $4 + i32.const 0 + local.get $3 + call $~lib/memory/memory.fill + block $break|0 + local.get $1 + i32.const 1 + i32.sub + local.set $5 + loop $loop|0 + local.get $5 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|0 + local.get $5 + local.set $6 + block $break|1 + loop $continue|1 + local.get $6 + i32.const 1 + i32.and + local.get $4 + local.get $6 + i32.const 6 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + local.get $6 + i32.const 1 + i32.shr_s + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + i32.eq + i32.eqz + br_if $break|1 + local.get $6 + i32.const 1 + i32.shr_s + local.set $6 + br $continue|1 + end + unreachable + end + local.get $6 + i32.const 1 + i32.shr_s + local.set $7 + local.get $0 + local.get $7 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $8 + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $9 + i32.const 2 + global.set $~lib/argc + local.get $8 + local.get $9 + local.get $2 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $4 + local.get $5 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + local.get $4 + local.get $5 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + i32.const 1 + local.get $5 + i32.const 31 + i32.and + i32.shl + i32.xor + i32.store + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + local.get $8 + i32.store + local.get $0 + local.get $7 + i32.const 2 + i32.shl + i32.add + local.get $9 + i32.store + end + local.get $5 + i32.const 1 + i32.sub + local.set $5 + br $loop|0 + end + unreachable + end + block $break|2 + local.get $1 + i32.const 1 + i32.sub + local.set $9 + loop $loop|2 + local.get $9 + i32.const 2 + i32.ge_s + i32.eqz + br_if $break|2 + local.get $0 + i32.load + local.set $8 + local.get $0 + local.get $0 + local.get $9 + i32.const 2 + i32.shl + i32.add + i32.load + i32.store + local.get $0 + local.get $9 + i32.const 2 + i32.shl + i32.add + local.get $8 + i32.store + i32.const 1 + local.set $7 + block $break|3 + loop $continue|3 + local.get $7 + i32.const 1 + i32.shl + local.get $4 + local.get $7 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + local.get $7 + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + i32.add + local.tee $6 + local.get $9 + i32.lt_s + i32.eqz + br_if $break|3 + local.get $6 + local.set $7 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $7 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|4 + local.get $0 + i32.load + local.set $8 + local.get $0 + local.get $7 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + i32.const 2 + global.set $~lib/argc + local.get $8 + local.get $5 + local.get $2 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $4 + local.get $7 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + local.get $4 + local.get $7 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + i32.const 1 + local.get $7 + i32.const 31 + i32.and + i32.shl + i32.xor + i32.store + local.get $0 + local.get $7 + i32.const 2 + i32.shl + i32.add + local.get $8 + i32.store + local.get $0 + local.get $5 + i32.store + end + local.get $7 + i32.const 1 + i32.shr_s + local.set $7 + br $continue|4 + end + unreachable + end + local.get $9 + i32.const 1 + i32.sub + local.set $9 + br $loop|2 + end + unreachable + end + local.get $4 + call $~lib/rt/tlsf/__free + local.get $0 + i32.load offset=4 + local.set $10 + local.get $0 + local.get $0 + i32.load + i32.store offset=4 + local.get $0 + local.get $10 + i32.store + ) + (func $~lib/array/Array#sort (; 159 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 1 + i32.le_s + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 2 + i32.eq + if + local.get $3 + i32.load offset=4 + local.set $4 + local.get $3 + i32.load + local.set $5 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $5 + local.get $1 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $3 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store + end + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $3 + local.set $6 + local.get $2 + local.set $5 + local.get $1 + local.set $4 + local.get $5 + i32.const 256 + i32.lt_s + if + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/sort/insertionSort + else + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/sort/weakHeapSort + end + local.get $0 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 160 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + local.get $1 + i32.gt_u + local.get $0 + local.get $1 + i32.lt_u + i32.sub + ) + (func $~lib/array/Array#sort|trampoline (; 161 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + block $~lib/util/sort/COMPARATOR|inlined.0 (result i32) + i32.const 47 + br $~lib/util/sort/COMPARATOR|inlined.0 + end + local.set $1 + end + local.get $0 + local.get $1 + call $~lib/array/Array#sort + ) + (func $std/array/createReverseOrderedArray (; 162 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + local.get $0 + call $~lib/array/Array#constructor + local.set $1 + block $break|0 + i32.const 0 + local.set $2 + loop $loop|0 + local.get $2 + local.get $0 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $1 + local.get $2 + local.get $0 + i32.const 1 + i32.sub + local.get $2 + i32.sub + call $~lib/array/Array#__set + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $~lib/math/NativeMath.random (; 163 ;) (type $FUNCSIG$d) (result f64) + (local $0 i64) + (local $1 i64) + (local $2 i64) + global.get $~lib/math/random_seeded + i32.eqz + if + i32.const 3936 + i32.const 3160 + i32.const 1376 + i32.const 24 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/math/random_state0_64 + local.set $0 + global.get $~lib/math/random_state1_64 + local.set $1 + local.get $1 + global.set $~lib/math/random_state0_64 + local.get $0 + local.get $0 + i64.const 23 + i64.shl + i64.xor + local.set $0 + local.get $0 + local.get $0 + i64.const 17 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.const 26 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + global.set $~lib/math/random_state1_64 + local.get $1 + i64.const 12 + i64.shr_u + i64.const 4607182418800017408 + i64.or + local.set $2 + local.get $2 + f64.reinterpret_i64 + f64.const 1 + f64.sub + ) + (func $std/array/createRandomOrderedArray (; 164 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + local.get $0 + call $~lib/array/Array#constructor + local.set $1 + block $break|0 + i32.const 0 + local.set $2 + loop $loop|0 + local.get $2 + local.get $0 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $1 + local.get $2 + call $~lib/math/NativeMath.random + local.get $0 + f64.convert_i32_s + f64.mul + i32.trunc_f64_s + call $~lib/array/Array#__set + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $~lib/util/sort/COMPARATOR~anonymous|1 (; 165 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + local.get $1 + i32.sub + ) + (func $std/array/isSorted (; 166 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + block $break|0 + i32.const 1 + local.set $2 + local.get $0 + call $~lib/array/Array#get:length + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 2 + global.set $~lib/argc + local.get $0 + local.get $2 + i32.const 1 + i32.sub + call $~lib/array/Array#__get + local.get $0 + local.get $2 + call $~lib/array/Array#__get + local.get $1 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.gt_s + if + i32.const 0 + local.set $4 + local.get $0 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/array/assertSorted (; 167 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + call $~lib/array/Array#sort + local.tee $2 + local.get $1 + call $std/array/isSorted + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 831 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + ) + (func $std/array/assertSortedDefault (; 168 ;) (type $FUNCSIG$vi) (param $0 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + block $~lib/util/sort/COMPARATOR|inlined.1 (result i32) + i32.const 48 + br $~lib/util/sort/COMPARATOR|inlined.1 + end + call $std/array/assertSorted + local.get $0 + call $~lib/rt/pure/__release + ) + (func $start:std/array~anonymous|43 (; 169 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + local.get $1 + i32.sub + ) + (func $start:std/array~anonymous|44 (; 170 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $1 + local.get $0 + i32.sub + ) + (func $start:std/array~anonymous|45 (; 171 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + local.get $1 + i32.sub + ) + (func $start:std/array~anonymous|46 (; 172 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $1 + local.get $0 + i32.sub + ) + (func $~lib/array/Array<~lib/array/Array>#constructor (; 173 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 16 + i32.const 10 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 2 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=12 + local.get $0 + ) + (func $~lib/array/Array<~lib/array/Array>#__unchecked_set (; 174 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.set $3 + local.get $3 + i32.load + local.set $4 + local.get $2 + local.get $4 + i32.ne + if + local.get $3 + local.get $2 + call $~lib/rt/pure/__retain + i32.store + local.get $4 + call $~lib/rt/pure/__release + end + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/array/Array<~lib/array/Array>#__set (; 175 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.const 2 + call $~lib/array/ensureSize + local.get $0 + local.get $1 + local.get $2 + call $~lib/array/Array<~lib/array/Array>#__unchecked_set + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_s + if + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=12 + end + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/array/createReverseOrderedNestedArray (; 176 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + local.get $0 + call $~lib/array/Array<~lib/array/Array>#constructor + local.set $1 + block $break|0 + i32.const 0 + local.set $2 + loop $loop|0 + local.get $2 + local.get $0 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 0 + i32.const 1 + call $~lib/array/Array#constructor + local.set $3 + local.get $3 + i32.const 0 + local.get $0 + i32.const 1 + i32.sub + local.get $2 + i32.sub + call $~lib/array/Array#__set + local.get $1 + local.get $2 + local.get $3 + call $~lib/array/Array<~lib/array/Array>#__set + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $start:std/array~anonymous|47 (; 177 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 0 + call $~lib/array/Array#__get + local.get $1 + i32.const 0 + call $~lib/array/Array#__get + i32.sub + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/util/sort/insertionSort<~lib/array/Array> (; 178 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + block $break|1 + loop $continue|1 + local.get $5 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + local.set $6 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $6 + local.get $2 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $5 + local.tee $7 + i32.const 1 + i32.sub + local.set $5 + local.get $7 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store + else + local.get $6 + call $~lib/rt/pure/__release + br $break|1 + end + local.get $6 + call $~lib/rt/pure/__release + br $continue|1 + end + unreachable + end + local.get $0 + local.get $5 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + ) + (func $~lib/array/Array<~lib/array/Array>#sort (; 179 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 1 + i32.le_s + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 2 + i32.eq + if + local.get $3 + i32.load offset=4 + call $~lib/rt/pure/__retain + local.set $4 + local.get $3 + i32.load + call $~lib/rt/pure/__retain + local.set $5 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $5 + local.get $1 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $3 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store + end + local.get $0 + call $~lib/rt/pure/__retain + local.set $6 + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + return + end + local.get $3 + local.set $5 + local.get $2 + local.set $4 + local.get $1 + local.set $6 + local.get $5 + local.get $4 + local.get $6 + call $~lib/util/sort/insertionSort<~lib/array/Array> + local.get $0 + call $~lib/rt/pure/__retain + ) + (func $~lib/array/Array<~lib/array/Array>#get:length (; 180 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array<~lib/array/Array>#__unchecked_get (; 181 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + ) + (func $~lib/array/Array<~lib/array/Array>#__get (; 182 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 280 + i32.const 488 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/array/Array>#__unchecked_get + local.set $2 + local.get $2 + i32.eqz + if + local.get $2 + call $~lib/rt/pure/__release + i32.const 4040 + i32.const 488 + i32.const 96 + i32.const 39 + call $~lib/builtins/abort + unreachable + end + local.get $2 + ) + (func $std/array/isSorted<~lib/array/Array> (; 183 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + block $break|0 + i32.const 1 + local.set $2 + local.get $0 + call $~lib/array/Array<~lib/array/Array>#get:length + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 2 + global.set $~lib/argc + local.get $0 + local.get $2 + i32.const 1 + i32.sub + call $~lib/array/Array<~lib/array/Array>#__get + local.tee $4 + local.get $0 + local.get $2 + call $~lib/array/Array<~lib/array/Array>#__get + local.tee $5 + local.get $1 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.gt_s + if + i32.const 0 + local.set $6 + local.get $0 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + return + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $5 + local.get $0 + call $~lib/rt/pure/__release + local.get $5 + ) + (func $std/array/assertSorted<~lib/array/Array> (; 184 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/array/Array>#sort + local.tee $2 + local.get $1 + call $std/array/isSorted<~lib/array/Array> + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 831 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + ) + (func $~lib/array/Array>#constructor (; 185 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 16 + i32.const 12 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 2 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=12 + local.get $0 + ) + (func $std/array/Proxy#constructor (; 186 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.eqz + if + i32.const 4 + i32.const 11 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $0 + end + local.get $0 + local.get $1 + i32.store + local.get $0 + ) + (func $~lib/array/Array>#__unchecked_set (; 187 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.set $3 + local.get $3 + i32.load + local.set $4 + local.get $2 + local.get $4 + i32.ne + if + local.get $3 + local.get $2 + call $~lib/rt/pure/__retain + i32.store + local.get $4 + call $~lib/rt/pure/__release + end + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/array/Array>#__set (; 188 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.const 2 + call $~lib/array/ensureSize + local.get $0 + local.get $1 + local.get $2 + call $~lib/array/Array>#__unchecked_set + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_s + if + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=12 + end + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/array/createReverseOrderedElementsArray (; 189 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + local.get $0 + call $~lib/array/Array>#constructor + local.set $1 + block $break|0 + i32.const 0 + local.set $2 + loop $loop|0 + local.get $2 + local.get $0 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $1 + local.get $2 + i32.const 0 + local.get $0 + i32.const 1 + i32.sub + local.get $2 + i32.sub + call $std/array/Proxy#constructor + local.tee $3 + call $~lib/array/Array>#__set + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $start:std/array~anonymous|48 (; 190 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load + local.get $1 + i32.load + i32.sub + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/util/sort/insertionSort> (; 191 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + block $break|1 + loop $continue|1 + local.get $5 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + local.set $6 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $6 + local.get $2 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $5 + local.tee $7 + i32.const 1 + i32.sub + local.set $5 + local.get $7 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store + else + local.get $6 + call $~lib/rt/pure/__release + br $break|1 + end + local.get $6 + call $~lib/rt/pure/__release + br $continue|1 + end + unreachable + end + local.get $0 + local.get $5 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + ) + (func $~lib/array/Array>#sort (; 192 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 1 + i32.le_s + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 2 + i32.eq + if + local.get $3 + i32.load offset=4 + call $~lib/rt/pure/__retain + local.set $4 + local.get $3 + i32.load + call $~lib/rt/pure/__retain + local.set $5 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $5 + local.get $1 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $3 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store + end + local.get $0 + call $~lib/rt/pure/__retain + local.set $6 + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + return + end + local.get $3 + local.set $5 + local.get $2 + local.set $4 + local.get $1 + local.set $6 + local.get $5 + local.get $4 + local.get $6 + call $~lib/util/sort/insertionSort> + local.get $0 + call $~lib/rt/pure/__retain + ) + (func $~lib/array/Array>#get:length (; 193 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array>#__unchecked_get (; 194 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + ) + (func $~lib/array/Array>#__get (; 195 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 280 + i32.const 488 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array>#__unchecked_get + local.set $2 + local.get $2 + i32.eqz + if + local.get $2 + call $~lib/rt/pure/__release + i32.const 4040 + i32.const 488 + i32.const 96 + i32.const 39 + call $~lib/builtins/abort + unreachable + end + local.get $2 + ) + (func $std/array/isSorted> (; 196 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + block $break|0 + i32.const 1 + local.set $2 + local.get $0 + call $~lib/array/Array>#get:length + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 2 + global.set $~lib/argc + local.get $0 + local.get $2 + i32.const 1 + i32.sub + call $~lib/array/Array>#__get + local.tee $4 + local.get $0 + local.get $2 + call $~lib/array/Array>#__get + local.tee $5 + local.get $1 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.gt_s + if + i32.const 0 + local.set $6 + local.get $0 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + return + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $5 + local.get $0 + call $~lib/rt/pure/__release + local.get $5 + ) + (func $std/array/assertSorted> (; 197 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + call $~lib/array/Array>#sort + local.tee $2 + local.get $1 + call $std/array/isSorted> + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 831 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + ) + (func $~lib/util/sort/insertionSort<~lib/string/String | null> (; 198 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + block $break|1 + loop $continue|1 + local.get $5 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + local.set $6 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $6 + local.get $2 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $5 + local.tee $7 + i32.const 1 + i32.sub + local.set $5 + local.get $7 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store + else + local.get $6 + call $~lib/rt/pure/__release + br $break|1 + end + local.get $6 + call $~lib/rt/pure/__release + br $continue|1 + end + unreachable + end + local.get $0 + local.get $5 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + ) + (func $~lib/array/Array<~lib/string/String | null>#sort (; 199 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 1 + i32.le_s + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 2 + i32.eq + if + local.get $3 + i32.load offset=4 + call $~lib/rt/pure/__retain + local.set $4 + local.get $3 + i32.load + call $~lib/rt/pure/__retain + local.set $5 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $5 + local.get $1 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $3 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store + end + local.get $0 + call $~lib/rt/pure/__retain + local.set $6 + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + return + end + local.get $3 + local.set $5 + local.get $2 + local.set $4 + local.get $1 + local.set $6 + local.get $5 + local.get $4 + local.get $6 + call $~lib/util/sort/insertionSort<~lib/string/String | null> + local.get $0 + call $~lib/rt/pure/__retain + ) + (func $~lib/array/Array<~lib/string/String | null>#get:length (; 200 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array<~lib/string/String | null>#__unchecked_get (; 201 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + ) + (func $~lib/array/Array<~lib/string/String | null>#__get (; 202 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 280 + i32.const 488 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/string/String | null>#__unchecked_get + local.set $2 + local.get $2 + ) + (func $std/array/isSorted<~lib/string/String | null> (; 203 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + block $break|0 + i32.const 1 + local.set $2 + local.get $0 + call $~lib/array/Array<~lib/string/String | null>#get:length + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 2 + global.set $~lib/argc + local.get $0 + local.get $2 + i32.const 1 + i32.sub + call $~lib/array/Array<~lib/string/String | null>#__get + local.tee $4 + local.get $0 + local.get $2 + call $~lib/array/Array<~lib/string/String | null>#__get + local.tee $5 + local.get $1 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.gt_s + if + i32.const 0 + local.set $6 + local.get $0 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + return + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $5 + local.get $0 + call $~lib/rt/pure/__release + local.get $5 + ) + (func $std/array/assertSorted<~lib/string/String | null> (; 204 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/string/String | null>#sort + local.tee $2 + local.get $1 + call $std/array/isSorted<~lib/string/String | null> + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 831 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + ) + (func $~lib/string/String#get:length (; 205 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 16 + i32.sub + i32.load offset=12 + i32.const 1 + i32.shr_u + ) + (func $~lib/util/string/compareImpl (; 206 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/rt/pure/__retain + drop + i32.const 0 + local.set $5 + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $6 + local.get $2 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $7 + block $break|0 + loop $continue|0 + local.get $4 + if (result i32) + local.get $6 + i32.load16_u + local.get $7 + i32.load16_u + i32.sub + local.tee $5 + i32.eqz + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + local.get $6 + i32.const 2 + i32.add + local.set $6 + local.get $7 + i32.const 2 + i32.add + local.set $7 + br $continue|0 + end + unreachable + end + local.get $5 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/util/sort/COMPARATOR<~lib/string/String | null>~anonymous|0 (; 207 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.eq + if (result i32) + i32.const 1 + else + local.get $0 + i32.const 0 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 0 + i32.eq + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + call $~lib/string/String#get:length + local.set $4 + local.get $3 + i32.eqz + if (result i32) + local.get $4 + i32.eqz + else + i32.const 0 + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $3 + i32.eqz + if + i32.const -1 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $4 + i32.eqz + if + i32.const 1 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + local.get $1 + i32.const 0 + local.get $3 + local.tee $2 + local.get $4 + local.tee $5 + local.get $2 + local.get $5 + i32.lt_s + select + call $~lib/util/string/compareImpl + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $std/array/assertSorted<~lib/string/String | null>|trampoline (; 208 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + block $~lib/util/sort/COMPARATOR<~lib/string/String | null>|inlined.0 (result i32) + i32.const 55 + br $~lib/util/sort/COMPARATOR<~lib/string/String | null>|inlined.0 + end + local.set $1 + end + local.get $0 + local.get $1 + call $std/array/assertSorted<~lib/string/String | null> + ) + (func $~lib/string/String.__eq (; 209 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 0 + i32.eq + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $3 + local.get $1 + call $~lib/string/String#get:length + i32.ne + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + local.get $1 + i32.const 0 + local.get $3 + call $~lib/util/string/compareImpl + i32.eqz + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/string/String.__ne (; 210 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + call $~lib/string/String.__eq + i32.eqz + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $std/array/isArraysEqual<~lib/string/String | null> (; 211 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.eqz + if + local.get $0 + call $~lib/array/Array<~lib/string/String | null>#get:length + local.set $2 + local.get $2 + local.get $1 + call $~lib/array/Array<~lib/string/String | null>#get:length + i32.ne + if + i32.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + end + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $2 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + call $~lib/array/Array<~lib/string/String | null>#__get + local.tee $4 + local.get $1 + local.get $3 + call $~lib/array/Array<~lib/string/String | null>#__get + local.tee $5 + call $~lib/string/String.__ne + if + i32.const 0 + local.set $6 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + return + end + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $5 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $5 + ) + (func $~lib/array/Array<~lib/string/String>#constructor (; 212 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 16 + i32.const 14 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 2 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + i32.const 0 + i32.store offset=12 + local.get $0 + local.get $1 + i32.store offset=12 + local.get $0 + ) + (func $~lib/string/String#charAt (; 213 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + call $~lib/string/String#get:length + i32.ge_u + if + i32.const 4248 + call $~lib/rt/pure/__retain + return + end + i32.const 2 + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $2 + local.get $2 + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.load16_u + i32.store16 + local.get $2 + call $~lib/rt/pure/__retain + ) + (func $~lib/string/String#concat (; 214 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 0 + i32.eq + if + i32.const 4360 + local.tee $2 + local.get $1 + local.tee $3 + i32.ne + if + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $3 + call $~lib/rt/pure/__release + end + local.get $2 + local.set $1 + end + local.get $0 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + local.set $4 + local.get $1 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + local.set $5 + local.get $4 + local.get $5 + i32.add + local.set $6 + local.get $6 + i32.const 0 + i32.eq + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $6 + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $7 + local.get $7 + local.get $0 + local.get $4 + call $~lib/memory/memory.copy + local.get $7 + local.get $4 + i32.add + local.get $1 + local.get $5 + call $~lib/memory/memory.copy + local.get $7 + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/string/String.__concat (; 215 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 4360 + local.get $0 + i32.const 0 + i32.ne + select + local.get $1 + call $~lib/string/String#concat + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $std/array/createRandomString (; 216 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 f64) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $1 + block $break|0 + i32.const 0 + local.set $2 + loop $loop|0 + local.get $2 + local.get $0 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $1 + global.get $std/array/charset + call $~lib/math/NativeMath.random + global.get $std/array/charset + call $~lib/string/String#get:length + f64.convert_i32_s + f64.mul + local.set $3 + local.get $3 + f64.floor + i32.trunc_f64_s + call $~lib/string/String#charAt + local.tee $4 + call $~lib/string/String.__concat + local.tee $5 + local.tee $6 + local.get $1 + local.tee $7 + i32.ne + if + local.get $6 + call $~lib/rt/pure/__retain + drop + local.get $7 + call $~lib/rt/pure/__release + end + local.get $6 + local.set $1 + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $~lib/array/Array<~lib/string/String>#__unchecked_set (; 217 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.set $3 + local.get $3 + i32.load + local.set $4 + local.get $2 + local.get $4 + i32.ne + if + local.get $3 + local.get $2 + call $~lib/rt/pure/__retain + i32.store + local.get $4 + call $~lib/rt/pure/__release + end + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/array/Array<~lib/string/String>#__set (; 218 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.const 2 + call $~lib/array/ensureSize + local.get $0 + local.get $1 + local.get $2 + call $~lib/array/Array<~lib/string/String>#__unchecked_set + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_s + if + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=12 + end + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/array/createRandomStringArray (; 219 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + local.get $0 + call $~lib/array/Array<~lib/string/String>#constructor + local.set $1 + block $break|0 + i32.const 0 + local.set $2 + loop $loop|0 + local.get $2 + local.get $0 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $1 + local.get $2 + call $~lib/math/NativeMath.random + f64.const 32 + f64.mul + i32.trunc_f64_s + call $std/array/createRandomString + local.tee $3 + call $~lib/array/Array<~lib/string/String>#__set + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $3 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $~lib/util/sort/insertionSort<~lib/string/String> (; 220 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + block $break|1 + loop $continue|1 + local.get $5 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + local.set $6 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $6 + local.get $2 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $5 + local.tee $7 + i32.const 1 + i32.sub + local.set $5 + local.get $7 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store + else + local.get $6 + call $~lib/rt/pure/__release + br $break|1 + end + local.get $6 + call $~lib/rt/pure/__release + br $continue|1 + end + unreachable + end + local.get $0 + local.get $5 + i32.const 1 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + ) + (func $~lib/array/Array<~lib/string/String>#sort (; 221 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 1 + i32.le_s + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i32.load offset=4 + local.set $3 + local.get $2 + i32.const 2 + i32.eq + if + local.get $3 + i32.load offset=4 + call $~lib/rt/pure/__retain + local.set $4 + local.get $3 + i32.load + call $~lib/rt/pure/__retain + local.set $5 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $5 + local.get $1 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.lt_s + if + local.get $3 + local.get $5 + i32.store offset=4 + local.get $3 + local.get $4 + i32.store + end + local.get $0 + call $~lib/rt/pure/__retain + local.set $6 + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + return + end + local.get $3 + local.set $5 + local.get $2 + local.set $4 + local.get $1 + local.set $6 + local.get $5 + local.get $4 + local.get $6 + call $~lib/util/sort/insertionSort<~lib/string/String> + local.get $0 + call $~lib/rt/pure/__retain + ) + (func $~lib/array/Array<~lib/string/String>#get:length (; 222 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 223 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + ) + (func $~lib/array/Array<~lib/string/String>#__get (; 224 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 280 + i32.const 488 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/string/String>#__unchecked_get + local.set $2 + local.get $2 + i32.eqz + if + local.get $2 + call $~lib/rt/pure/__release + i32.const 4040 + i32.const 488 + i32.const 96 + i32.const 39 + call $~lib/builtins/abort + unreachable + end + local.get $2 + ) + (func $std/array/isSorted<~lib/string/String> (; 225 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + block $break|0 + i32.const 1 + local.set $2 + local.get $0 + call $~lib/array/Array<~lib/string/String>#get:length + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 2 + global.set $~lib/argc + local.get $0 + local.get $2 + i32.const 1 + i32.sub + call $~lib/array/Array<~lib/string/String>#__get + local.tee $4 + local.get $0 + local.get $2 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $5 + local.get $1 + call_indirect (type $FUNCSIG$iii) + i32.const 0 + i32.gt_s + if + i32.const 0 + local.set $6 + local.get $0 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + return + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $5 + local.get $0 + call $~lib/rt/pure/__release + local.get $5 + ) + (func $std/array/assertSorted<~lib/string/String> (; 226 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/string/String>#sort + local.tee $2 + local.get $1 + call $std/array/isSorted<~lib/string/String> + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 831 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + ) + (func $~lib/util/sort/COMPARATOR<~lib/string/String>~anonymous|0 (; 227 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.eq + if (result i32) + i32.const 1 + else + local.get $0 + i32.const 0 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 0 + i32.eq + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + call $~lib/string/String#get:length + local.set $4 + local.get $3 + i32.eqz + if (result i32) + local.get $4 + i32.eqz + else + i32.const 0 + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $3 + i32.eqz + if + i32.const -1 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $4 + i32.eqz + if + i32.const 1 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + local.get $1 + i32.const 0 + local.get $3 + local.tee $2 + local.get $4 + local.tee $5 + local.get $2 + local.get $5 + i32.lt_s + select + call $~lib/util/string/compareImpl + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $std/array/assertSorted<~lib/string/String>|trampoline (; 228 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + block $~lib/util/sort/COMPARATOR<~lib/string/String>|inlined.0 (result i32) + i32.const 56 + br $~lib/util/sort/COMPARATOR<~lib/string/String>|inlined.0 + end + local.set $1 + end + local.get $0 + local.get $1 + call $std/array/assertSorted<~lib/string/String> + ) + (func $~lib/string/String#substring (; 229 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $6 + local.get $2 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $7 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + i32.const 1 + i32.shl + local.set $8 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + i32.const 1 + i32.shl + local.set $9 + local.get $9 + local.get $8 + i32.sub + local.set $3 + local.get $3 + i32.eqz + if + i32.const 4248 + call $~lib/rt/pure/__retain + return + end + local.get $8 + i32.eqz + if (result i32) + local.get $9 + local.get $0 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + i32.eq + else + i32.const 0 + end + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $3 + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $10 + local.get $10 + local.get $0 + local.get $8 + i32.add + local.get $3 + call $~lib/memory/memory.copy + local.get $10 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/string/joinBooleanArray (; 230 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + i32.const 4408 + i32.const 4432 + local.get $0 + i32.load8_u + select + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $5 + i32.const 5 + local.set $6 + local.get $6 + local.get $5 + i32.add + local.get $3 + i32.mul + local.get $6 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.add + i32.load8_u + local.set $10 + i32.const 4 + local.get $10 + i32.const 0 + i32.ne + i32.eqz + i32.add + local.set $6 + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + i32.const 4408 + i32.const 4432 + local.get $10 + select + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + local.get $5 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $5 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $5 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.add + i32.load8_u + local.set $10 + i32.const 4 + local.get $10 + i32.const 0 + i32.ne + i32.eqz + i32.add + local.set $6 + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + i32.const 4408 + i32.const 4432 + local.get $10 + select + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#join (; 231 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinBooleanArray + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/util/number/decimalCount32 (; 232 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + i32.const 100000 + i32.lt_u + if + local.get $0 + i32.const 100 + i32.lt_u + if + i32.const 1 + i32.const 2 + local.get $0 + i32.const 10 + i32.lt_u + select + return + else + i32.const 4 + i32.const 5 + local.get $0 + i32.const 10000 + i32.lt_u + select + local.set $1 + i32.const 3 + local.get $1 + local.get $0 + i32.const 1000 + i32.lt_u + select + return + end + unreachable + else + local.get $0 + i32.const 10000000 + i32.lt_u + if + i32.const 6 + i32.const 7 + local.get $0 + i32.const 1000000 + i32.lt_u + select + return + else + i32.const 9 + i32.const 10 + local.get $0 + i32.const 1000000000 + i32.lt_u + select + local.set $1 + i32.const 8 + local.get $1 + local.get $0 + i32.const 100000000 + i32.lt_u + select + return + end + unreachable + end + unreachable + ) + (func $~lib/util/number/utoa32_lut (; 233 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + i32.const 5000 + i32.load offset=4 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i32.const 10000 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $1 + i32.const 10000 + i32.div_u + local.set $4 + local.get $1 + i32.const 10000 + i32.rem_u + local.set $5 + local.get $4 + local.set $1 + local.get $5 + i32.const 100 + i32.div_u + local.set $6 + local.get $5 + i32.const 100 + i32.rem_u + local.set $7 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $8 + local.get $3 + local.get $7 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $9 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $8 + local.get $9 + i64.const 32 + i64.shl + i64.or + i64.store + br $continue|0 + end + unreachable + end + local.get $1 + i32.const 100 + i32.ge_u + if + local.get $1 + i32.const 100 + i32.div_u + local.set $7 + local.get $1 + i32.const 100 + i32.rem_u + local.set $6 + local.get $7 + local.set $1 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + end + local.get $1 + i32.const 10 + i32.ge_u + if + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + else + local.get $2 + i32.const 1 + i32.sub + local.set $2 + i32.const 48 + local.get $1 + i32.add + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store16 + end + ) + (func $~lib/util/number/itoa32 (; 234 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.eqz + if + i32.const 4560 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i32.const 0 + i32.lt_s + local.set $1 + local.get $1 + if + i32.const 0 + local.get $0 + i32.sub + local.set $0 + end + local.get $0 + call $~lib/util/number/decimalCount32 + local.get $1 + i32.add + local.set $2 + local.get $2 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $3 + local.get $3 + local.set $6 + local.get $0 + local.set $5 + local.get $2 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + local.get $1 + if + local.get $3 + i32.const 45 + i32.store16 + end + local.get $3 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/itoa (; 235 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa32 + return + ) + (func $~lib/util/number/itoa_stream (; 236 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i32.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i32.const 0 + i32.lt_s + local.set $4 + local.get $4 + if + i32.const 0 + local.get $2 + i32.sub + local.set $2 + end + local.get $2 + call $~lib/util/number/decimalCount32 + local.get $4 + i32.add + local.set $3 + local.get $0 + local.set $7 + local.get $2 + local.set $6 + local.get $3 + local.set $5 + local.get $7 + local.get $6 + local.get $5 + call $~lib/util/number/utoa32_lut + local.get $4 + if + local.get $0 + i32.const 45 + i32.store16 + end + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 237 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i32.load + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 11 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 11 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#join (; 238 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/util/number/utoa32 (; 239 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.eqz + if + i32.const 4560 + call $~lib/rt/pure/__retain + return + end + local.get $0 + call $~lib/util/number/decimalCount32 + local.set $1 + local.get $1 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $2 + local.get $2 + local.set $5 + local.get $0 + local.set $4 + local.get $1 + local.set $3 + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/number/utoa32_lut + local.get $2 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/itoa (; 240 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/utoa32 + return + ) + (func $~lib/util/number/itoa_stream (; 241 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i32.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + call $~lib/util/number/decimalCount32 + local.set $3 + local.get $0 + local.set $6 + local.get $2 + local.set $5 + local.get $3 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 242 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i32.load + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 10 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 10 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#join (; 243 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/number/isFinite (; 244 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.eq + ) + (func $~lib/array/Array#__unchecked_get (; 245 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + i64.load + ) + (func $~lib/array/Array#__unchecked_get (; 246 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.load16_s + ) + (func $~lib/util/number/genDigits (; 247 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i64) + (local $11 i32) + (local $12 i32) + (local $13 i64) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i32) + (local $25 i32) + (local $26 i32) + i32.const 0 + local.get $4 + i32.sub + local.set $7 + i64.const 1 + local.get $7 + i64.extend_i32_s + i64.shl + local.set $8 + local.get $8 + i64.const 1 + i64.sub + local.set $9 + local.get $3 + local.get $1 + i64.sub + local.set $10 + local.get $4 + local.set $11 + local.get $3 + local.get $7 + i64.extend_i32_s + i64.shr_u + i32.wrap_i64 + local.set $12 + local.get $3 + local.get $9 + i64.and + local.set $13 + local.get $12 + call $~lib/util/number/decimalCount32 + local.set $14 + local.get $6 + local.set $15 + i32.const 6464 + i32.load offset=4 + local.set $16 + block $break|0 + loop $continue|0 + local.get $14 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|0 + block $break|1 + block $case10|1 + block $case9|1 + block $case8|1 + block $case7|1 + block $case6|1 + block $case5|1 + block $case4|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $14 + local.set $18 + local.get $18 + i32.const 10 + i32.eq + br_if $case0|1 + local.get $18 + i32.const 9 + i32.eq + br_if $case1|1 + local.get $18 + i32.const 8 + i32.eq + br_if $case2|1 + local.get $18 + i32.const 7 + i32.eq + br_if $case3|1 + local.get $18 + i32.const 6 + i32.eq + br_if $case4|1 + local.get $18 + i32.const 5 + i32.eq + br_if $case5|1 + local.get $18 + i32.const 4 + i32.eq + br_if $case6|1 + local.get $18 + i32.const 3 + i32.eq + br_if $case7|1 + local.get $18 + i32.const 2 + i32.eq + br_if $case8|1 + local.get $18 + i32.const 1 + i32.eq + br_if $case9|1 + br $case10|1 + end + local.get $12 + i32.const 1000000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100 + i32.div_u + local.set $17 + local.get $12 + i32.const 100 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10 + i32.div_u + local.set $17 + local.get $12 + i32.const 10 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + local.set $17 + i32.const 0 + local.set $12 + br $break|1 + end + i32.const 0 + local.set $17 + br $break|1 + end + local.get $17 + local.get $15 + i32.or + if + local.get $0 + local.get $15 + local.tee $18 + i32.const 1 + i32.add + local.set $15 + local.get $18 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $17 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $12 + i64.extend_i32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.get $13 + i64.add + local.set $19 + local.get $19 + local.get $5 + i64.le_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $19 + local.set $22 + local.get $16 + local.get $14 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $25 + local.get $25 + i32.load16_u + local.set $26 + block $break|2 + loop $continue|2 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|2 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|2 + end + unreachable + end + local.get $25 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|0 + end + unreachable + end + loop $continue|3 + local.get $13 + i64.const 10 + i64.mul + local.set $13 + local.get $5 + i64.const 10 + i64.mul + local.set $5 + local.get $13 + local.get $7 + i64.extend_i32_s + i64.shr_u + local.set $19 + local.get $19 + local.get $15 + i64.extend_i32_s + i64.or + i64.const 0 + i64.ne + if + local.get $0 + local.get $15 + local.tee $17 + i32.const 1 + i32.add + local.set $15 + local.get $17 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $19 + i32.wrap_i64 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $13 + local.get $9 + i64.and + local.set $13 + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $13 + local.get $5 + i64.lt_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $10 + local.get $16 + i32.const 0 + local.get $14 + i32.sub + i32.const 2 + i32.shl + i32.add + i64.load32_u + i64.mul + local.set $10 + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $13 + local.set $22 + local.get $8 + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $17 + local.get $17 + i32.load16_u + local.set $26 + block $break|4 + loop $continue|4 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|4 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|4 + end + unreachable + end + local.get $17 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|3 + end + unreachable + ) + (func $~lib/util/number/prettify (; 248 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $2 + i32.eqz + if + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 2 + i32.add + return + end + local.get $1 + local.get $2 + i32.add + local.set $3 + local.get $1 + local.get $3 + i32.le_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + block $break|0 + local.get $1 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $3 + i32.const 2 + i32.add + return + else + local.get $3 + i32.const 0 + i32.gt_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $4 + local.get $4 + i32.const 2 + i32.add + local.get $4 + i32.const 0 + local.get $2 + i32.sub + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.store16 + local.get $1 + i32.const 1 + i32.add + return + else + i32.const -6 + local.get $3 + i32.lt_s + if (result i32) + local.get $3 + i32.const 0 + i32.le_s + else + i32.const 0 + end + if + i32.const 2 + local.get $3 + i32.sub + local.set $4 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $1 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + i32.const 48 + i32.const 46 + i32.const 16 + i32.shl + i32.or + i32.store + block $break|1 + i32.const 2 + local.set $5 + loop $loop|1 + local.get $5 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|1 + end + unreachable + end + local.get $1 + local.get $4 + i32.add + return + else + local.get $1 + i32.const 1 + i32.eq + if + local.get $0 + i32.const 101 + i32.store16 offset=2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + local.get $5 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $5 + i32.sub + local.set $5 + end + local.get $5 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $7 + local.get $4 + local.set $10 + local.get $5 + local.set $9 + local.get $7 + local.set $8 + local.get $10 + local.get $9 + local.get $8 + call $~lib/util/number/utoa32_lut + local.get $4 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $7 + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + else + local.get $1 + i32.const 1 + i32.shl + local.set $7 + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.const 2 + i32.add + local.get $7 + i32.const 2 + i32.sub + call $~lib/memory/memory.copy + local.get $0 + i32.const 46 + i32.store16 offset=2 + local.get $0 + local.get $7 + i32.add + i32.const 101 + i32.store16 offset=2 + local.get $1 + local.get $0 + local.get $7 + i32.add + i32.const 4 + i32.add + local.set $9 + local.get $3 + i32.const 1 + i32.sub + local.set $8 + local.get $8 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $8 + i32.sub + local.set $8 + end + local.get $8 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $4 + local.get $9 + local.set $11 + local.get $8 + local.set $5 + local.get $4 + local.set $10 + local.get $11 + local.get $5 + local.get $10 + call $~lib/util/number/utoa32_lut + local.get $9 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $4 + i32.add + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + end + unreachable + end + unreachable + end + unreachable + end + unreachable + ) + (func $~lib/util/number/dtoa_core (; 249 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 i64) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i32) + (local $11 i64) + (local $12 i64) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 f64) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i64) + (local $25 i64) + (local $26 i32) + (local $27 i64) + (local $28 i32) + local.get $1 + f64.const 0 + f64.lt + local.set $2 + local.get $2 + if + local.get $1 + f64.neg + local.set $1 + local.get $0 + i32.const 45 + i32.store16 + end + local.get $1 + local.set $5 + local.get $0 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i64.reinterpret_f64 + local.set $6 + local.get $6 + i64.const 9218868437227405312 + i64.and + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.set $7 + local.get $6 + i64.const 4503599627370495 + i64.and + local.set $8 + local.get $7 + i32.const 0 + i32.ne + i64.extend_i32_u + i64.const 52 + i64.shl + local.get $8 + i64.add + local.set $9 + local.get $7 + i32.const 1 + local.get $7 + i32.const 0 + i32.ne + select + i32.const 1023 + i32.const 52 + i32.add + i32.sub + local.set $7 + local.get $9 + local.set $11 + local.get $7 + local.set $10 + local.get $11 + i64.const 1 + i64.shl + i64.const 1 + i64.add + local.set $12 + local.get $10 + i32.const 1 + i32.sub + local.set $13 + local.get $12 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $12 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $12 + local.get $13 + local.get $14 + i32.sub + local.set $13 + i32.const 1 + local.get $11 + i64.const 4503599627370496 + i64.eq + i32.add + local.set $15 + local.get $12 + global.set $~lib/util/number/_frc_plus + local.get $11 + local.get $15 + i64.extend_i32_s + i64.shl + i64.const 1 + i64.sub + local.get $10 + local.get $15 + i32.sub + local.get $13 + i32.sub + i64.extend_i32_s + i64.shl + global.set $~lib/util/number/_frc_minus + local.get $13 + global.set $~lib/util/number/_exp + global.get $~lib/util/number/_exp + local.set $10 + i32.const -61 + local.get $10 + i32.sub + f64.convert_i32_s + f64.const 0.30102999566398114 + f64.mul + f64.const 347 + f64.add + local.set $16 + local.get $16 + i32.trunc_f64_s + local.set $15 + local.get $15 + local.get $15 + f64.convert_i32_s + local.get $16 + f64.ne + i32.add + local.set $15 + local.get $15 + i32.const 3 + i32.shr_s + i32.const 1 + i32.add + local.set $14 + i32.const 348 + local.get $14 + i32.const 3 + i32.shl + i32.sub + global.set $~lib/util/number/_K + i32.const 6152 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_frc_pow + i32.const 6376 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_exp_pow + local.get $9 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $9 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $9 + local.get $7 + local.get $14 + i32.sub + local.set $7 + global.get $~lib/util/number/_frc_pow + local.set $12 + global.get $~lib/util/number/_exp_pow + local.set $15 + local.get $9 + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $24 + local.get $24 + i64.const 2147483647 + i64.add + local.set $24 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $24 + i64.const 32 + i64.shr_u + local.set $24 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $24 + i64.add + local.set $24 + local.get $7 + local.set $10 + local.get $15 + local.set $13 + local.get $10 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $10 + global.get $~lib/util/number/_frc_plus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $23 + local.get $11 + i64.const 4294967295 + i64.and + local.set $22 + local.get $17 + i64.const 32 + i64.shr_u + local.set $21 + local.get $11 + i64.const 32 + i64.shr_u + local.set $20 + local.get $23 + local.get $22 + i64.mul + local.set $19 + local.get $21 + local.get $22 + i64.mul + local.get $19 + i64.const 32 + i64.shr_u + i64.add + local.set $18 + local.get $23 + local.get $20 + i64.mul + local.get $18 + i64.const 4294967295 + i64.and + i64.add + local.set $25 + local.get $25 + i64.const 2147483647 + i64.add + local.set $25 + local.get $18 + i64.const 32 + i64.shr_u + local.set $18 + local.get $25 + i64.const 32 + i64.shr_u + local.set $25 + local.get $21 + local.get $20 + i64.mul + local.get $18 + i64.add + local.get $25 + i64.add + i64.const 1 + i64.sub + local.set $25 + global.get $~lib/util/number/_exp + local.set $26 + local.get $15 + local.set $13 + local.get $26 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $26 + global.get $~lib/util/number/_frc_minus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $27 + local.get $27 + i64.const 2147483647 + i64.add + local.set $27 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $27 + i64.const 32 + i64.shr_u + local.set $27 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $27 + i64.add + i64.const 1 + i64.add + local.set $27 + local.get $25 + local.get $27 + i64.sub + local.set $23 + local.get $4 + local.get $24 + local.get $10 + local.get $25 + local.get $26 + local.get $23 + local.get $3 + call $~lib/util/number/genDigits + local.set $28 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $28 + local.get $2 + i32.sub + global.get $~lib/util/number/_K + call $~lib/util/number/prettify + local.set $28 + local.get $28 + local.get $2 + i32.add + ) + (func $~lib/util/number/dtoa (; 250 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + f64.const 0 + f64.eq + if + i32.const 5320 + call $~lib/rt/pure/__retain + return + end + local.get $0 + call $~lib/number/isFinite + i32.eqz + if + local.get $0 + call $~lib/number/isNaN + if + i32.const 5344 + call $~lib/rt/pure/__retain + return + end + i32.const 5368 + i32.const 5408 + local.get $0 + f64.const 0 + f64.lt + select + call $~lib/rt/pure/__retain + return + end + i32.const 28 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $1 + local.get $1 + local.get $0 + call $~lib/util/number/dtoa_core + local.set $2 + local.get $2 + i32.const 28 + i32.eq + if + local.get $1 + call $~lib/rt/pure/__retain + return + end + local.get $1 + i32.const 0 + local.get $2 + call $~lib/string/String#substring + local.set $3 + local.get $1 + call $~lib/rt/tlsf/__free + local.get $3 + ) + (func $~lib/util/number/dtoa_stream (; 251 ;) (type $FUNCSIG$iiid) (param $0 i32) (param $1 i32) (param $2 f64) (result i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + f64.const 0 + f64.eq + if + local.get $0 + i32.const 48 + i32.store16 + local.get $0 + i32.const 46 + i32.store16 offset=2 + local.get $0 + i32.const 48 + i32.store16 offset=4 + i32.const 3 + return + end + local.get $2 + call $~lib/number/isFinite + i32.eqz + if + local.get $2 + call $~lib/number/isNaN + if + local.get $0 + i32.const 78 + i32.store16 + local.get $0 + i32.const 97 + i32.store16 offset=2 + local.get $0 + i32.const 78 + i32.store16 offset=4 + i32.const 3 + return + else + local.get $2 + f64.const 0 + f64.lt + local.set $3 + i32.const 8 + local.get $3 + i32.add + local.set $4 + local.get $0 + i32.const 5368 + i32.const 5408 + local.get $3 + select + local.get $4 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $4 + return + end + unreachable + end + local.get $0 + local.get $2 + call $~lib/util/number/dtoa_core + ) + (func $~lib/util/string/joinFloatArray (; 252 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 f64) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + f64.load + call $~lib/util/number/dtoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 28 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 28 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/dtoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/dtoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#join (; 253 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinFloatArray + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/util/string/joinStringArray (; 254 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i32.load + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $5 + i32.const 0 + local.set $6 + i32.const 0 + local.set $7 + block $break|0 + i32.const 0 + local.set $4 + local.get $3 + i32.const 1 + i32.add + local.set $8 + loop $loop|0 + local.get $4 + local.get $8 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $9 + local.get $7 + local.tee $10 + i32.ne + if + local.get $9 + call $~lib/rt/pure/__retain + drop + local.get $10 + call $~lib/rt/pure/__release + end + local.get $9 + local.set $7 + local.get $7 + i32.const 0 + i32.ne + if + local.get $6 + local.get $7 + call $~lib/string/String#get:length + i32.add + local.set $6 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + i32.const 0 + local.set $11 + local.get $6 + local.get $5 + local.get $3 + i32.mul + i32.add + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $12 + block $break|1 + i32.const 0 + local.set $8 + loop $loop|1 + local.get $8 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $8 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $10 + local.get $7 + local.tee $4 + i32.ne + if + local.get $10 + call $~lib/rt/pure/__retain + drop + local.get $4 + call $~lib/rt/pure/__release + end + local.get $10 + local.set $7 + local.get $7 + i32.const 0 + i32.ne + if + local.get $7 + call $~lib/string/String#get:length + local.set $10 + local.get $12 + local.get $11 + i32.const 1 + i32.shl + i32.add + local.get $7 + local.get $10 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $11 + local.get $10 + i32.add + local.set $11 + end + local.get $5 + if + local.get $12 + local.get $11 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $5 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $11 + local.get $5 + i32.add + local.set $11 + end + local.get $8 + i32.const 1 + i32.add + local.set $8 + br $loop|1 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $9 + local.get $7 + local.tee $8 + i32.ne + if + local.get $9 + call $~lib/rt/pure/__retain + drop + local.get $8 + call $~lib/rt/pure/__release + end + local.get $9 + local.set $7 + local.get $7 + i32.const 0 + i32.ne + if + local.get $12 + local.get $11 + i32.const 1 + i32.shl + i32.add + local.get $7 + local.get $7 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + end + local.get $12 + local.set $9 + local.get $2 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $~lib/array/Array<~lib/string/String | null>#join (; 255 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinStringArray + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $std/array/Ref#constructor (; 256 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.eqz + if + i32.const 0 + i32.const 18 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $0 + end + local.get $0 + ) + (func $~lib/util/string/joinObjectArray (; 257 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + i32.const 6648 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $5 + i32.const 15 + local.get $5 + i32.add + local.get $3 + i32.mul + i32.const 15 + i32.add + local.set $6 + local.get $6 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $7 + i32.const 0 + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $10 + local.get $9 + local.tee $11 + i32.ne + if + local.get $10 + call $~lib/rt/pure/__retain + drop + local.get $11 + call $~lib/rt/pure/__release + end + local.get $10 + local.set $9 + local.get $9 + if + local.get $7 + local.get $8 + i32.const 1 + i32.shl + i32.add + i32.const 6648 + i32.const 15 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $8 + i32.const 15 + i32.add + local.set $8 + end + local.get $5 + if + local.get $7 + local.get $8 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $5 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $8 + local.get $5 + i32.add + local.set $8 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + if + local.get $7 + local.get $8 + i32.const 1 + i32.shl + i32.add + i32.const 6648 + i32.const 15 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $8 + i32.const 15 + i32.add + local.set $8 + end + local.get $6 + local.get $8 + i32.gt_s + if + local.get $7 + i32.const 0 + local.get $8 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $7 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#join (; 258 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinObjectArray + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/array/Array#toString (; 259 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 4464 + call $~lib/array/Array#join + ) + (func $~lib/util/number/itoa (; 260 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + call $~lib/util/number/itoa32 + return + ) + (func $~lib/util/number/itoa_stream (; 261 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.lt_s + local.set $4 + local.get $4 + if + i32.const 0 + local.get $2 + i32.sub + local.set $2 + end + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + call $~lib/util/number/decimalCount32 + local.get $4 + i32.add + local.set $3 + local.get $0 + local.set $7 + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.set $6 + local.get $3 + local.set $5 + local.get $7 + local.get $6 + local.get $5 + call $~lib/util/number/utoa32_lut + local.get $4 + if + local.get $0 + i32.const 45 + i32.store16 + end + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 262 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i32.load8_s + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 11 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 11 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#join (; 263 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/array/Array#toString (; 264 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 4464 + call $~lib/array/Array#join + ) + (func $~lib/util/number/itoa (; 265 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 65535 + i32.and + call $~lib/util/number/utoa32 + return + ) + (func $~lib/util/number/itoa_stream (; 266 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i32.const 65535 + i32.and + i32.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i32.const 65535 + i32.and + call $~lib/util/number/decimalCount32 + local.set $3 + local.get $0 + local.set $6 + local.get $2 + i32.const 65535 + i32.and + local.set $5 + local.get $3 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 267 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i32.load16_u + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 10 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 10 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#join (; 268 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/array/Array#toString (; 269 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 4464 + call $~lib/array/Array#join + ) + (func $~lib/util/number/decimalCount64 (; 270 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (local $1 i32) + local.get $0 + i64.const 1000000000000000 + i64.lt_u + if + local.get $0 + i64.const 1000000000000 + i64.lt_u + if + i32.const 11 + i32.const 12 + local.get $0 + i64.const 100000000000 + i64.lt_u + select + local.set $1 + i32.const 10 + local.get $1 + local.get $0 + i64.const 10000000000 + i64.lt_u + select + return + else + i32.const 14 + i32.const 15 + local.get $0 + i64.const 100000000000000 + i64.lt_u + select + local.set $1 + i32.const 13 + local.get $1 + local.get $0 + i64.const 10000000000000 + i64.lt_u + select + return + end + unreachable + else + local.get $0 + i64.const 100000000000000000 + i64.lt_u + if + i32.const 16 + i32.const 17 + local.get $0 + i64.const 10000000000000000 + i64.lt_u + select + return + else + i32.const 19 + i32.const 20 + local.get $0 + i64.const -8446744073709551616 + i64.lt_u + select + local.set $1 + i32.const 18 + local.get $1 + local.get $0 + i64.const 1000000000000000000 + i64.lt_u + select + return + end + unreachable + end + unreachable + ) + (func $~lib/util/number/utoa64_lut (; 271 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) + (local $3 i32) + (local $4 i64) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i64) + (local $13 i64) + i32.const 5000 + i32.load offset=4 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i64.const 100000000 + i64.ge_u + i32.eqz + br_if $break|0 + local.get $1 + i64.const 100000000 + i64.div_u + local.set $4 + local.get $1 + local.get $4 + i64.const 100000000 + i64.mul + i64.sub + i32.wrap_i64 + local.set $5 + local.get $4 + local.set $1 + local.get $5 + i32.const 10000 + i32.div_u + local.set $6 + local.get $5 + i32.const 10000 + i32.rem_u + local.set $7 + local.get $6 + i32.const 100 + i32.div_u + local.set $8 + local.get $6 + i32.const 100 + i32.rem_u + local.set $9 + local.get $7 + i32.const 100 + i32.div_u + local.set $10 + local.get $7 + i32.const 100 + i32.rem_u + local.set $11 + local.get $3 + local.get $10 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $12 + local.get $3 + local.get $11 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $13 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $12 + local.get $13 + i64.const 32 + i64.shl + i64.or + i64.store + local.get $3 + local.get $8 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $12 + local.get $3 + local.get $9 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $13 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $12 + local.get $13 + i64.const 32 + i64.shl + i64.or + i64.store + br $continue|0 + end + unreachable + end + local.get $0 + local.get $1 + i32.wrap_i64 + local.get $2 + call $~lib/util/number/utoa32_lut + ) + (func $~lib/util/number/utoa64 (; 272 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i64) + local.get $0 + i64.eqz + if + i32.const 4560 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i64.const 4294967295 + i64.le_u + if + local.get $0 + i32.wrap_i64 + local.set $2 + local.get $2 + call $~lib/util/number/decimalCount32 + local.set $3 + local.get $3 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $1 + local.get $1 + local.set $6 + local.get $2 + local.set $5 + local.get $3 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + else + local.get $0 + call $~lib/util/number/decimalCount64 + local.set $3 + local.get $3 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $1 + local.get $1 + local.set $5 + local.get $0 + local.set $7 + local.get $3 + local.set $4 + local.get $5 + local.get $7 + local.get $4 + call $~lib/util/number/utoa64_lut + end + local.get $1 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/itoa (; 273 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + local.get $0 + call $~lib/util/number/utoa64 + return + ) + (func $~lib/util/number/itoa_stream (; 274 ;) (type $FUNCSIG$iiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i64.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i64.const 4294967295 + i64.le_u + if + local.get $2 + i32.wrap_i64 + local.set $4 + local.get $4 + call $~lib/util/number/decimalCount32 + local.set $3 + local.get $0 + local.set $7 + local.get $4 + local.set $6 + local.get $3 + local.set $5 + local.get $7 + local.get $6 + local.get $5 + call $~lib/util/number/utoa32_lut + else + local.get $2 + call $~lib/util/number/decimalCount64 + local.set $3 + local.get $0 + local.set $6 + local.get $2 + local.set $8 + local.get $3 + local.set $5 + local.get $6 + local.get $8 + local.get $5 + call $~lib/util/number/utoa64_lut + end + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 275 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i64) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i64.load + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 20 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 20 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 3 + i32.shl + i32.add + i64.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 3 + i32.shl + i32.add + i64.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#join (; 276 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/array/Array#toString (; 277 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 4464 + call $~lib/array/Array#join + ) + (func $~lib/util/number/itoa64 (; 278 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + local.get $0 + i64.eqz + if + i32.const 4560 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i64.const 0 + i64.lt_s + local.set $1 + local.get $1 + if + i64.const 0 + local.get $0 + i64.sub + local.set $0 + end + local.get $0 + i64.const 4294967295 + i64.le_u + if + local.get $0 + i32.wrap_i64 + local.set $3 + local.get $3 + call $~lib/util/number/decimalCount32 + local.get $1 + i32.add + local.set $4 + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $2 + local.get $2 + local.set $7 + local.get $3 + local.set $6 + local.get $4 + local.set $5 + local.get $7 + local.get $6 + local.get $5 + call $~lib/util/number/utoa32_lut + else + local.get $0 + call $~lib/util/number/decimalCount64 + local.get $1 + i32.add + local.set $4 + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $2 + local.get $2 + local.set $6 + local.get $0 + local.set $8 + local.get $4 + local.set $5 + local.get $6 + local.get $8 + local.get $5 + call $~lib/util/number/utoa64_lut + end + local.get $1 + if + local.get $2 + i32.const 45 + i32.store16 + end + local.get $2 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/itoa (; 279 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + local.get $0 + call $~lib/util/number/itoa64 + return + ) + (func $~lib/util/number/itoa_stream (; 280 ;) (type $FUNCSIG$iiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i64) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i64.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i64.const 0 + i64.lt_s + local.set $4 + local.get $4 + if + i64.const 0 + local.get $2 + i64.sub + local.set $2 + end + local.get $2 + i64.const 4294967295 + i64.le_u + if + local.get $2 + i32.wrap_i64 + local.set $5 + local.get $5 + call $~lib/util/number/decimalCount32 + local.get $4 + i32.add + local.set $3 + local.get $0 + local.set $8 + local.get $5 + local.set $7 + local.get $3 + local.set $6 + local.get $8 + local.get $7 + local.get $6 + call $~lib/util/number/utoa32_lut + else + local.get $2 + call $~lib/util/number/decimalCount64 + local.get $4 + i32.add + local.set $3 + local.get $0 + local.set $7 + local.get $2 + local.set $9 + local.get $3 + local.set $6 + local.get $7 + local.get $9 + local.get $6 + call $~lib/util/number/utoa64_lut + end + local.get $4 + if + local.get $0 + i32.const 45 + i32.store16 + end + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 281 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i64) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i64.load + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 21 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 21 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 3 + i32.shl + i32.add + i64.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 3 + i32.shl + i32.add + i64.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#join (; 282 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/array/Array#toString (; 283 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 4464 + call $~lib/array/Array#join + ) + (func $~lib/array/Array<~lib/string/String | null>#toString (; 284 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 4464 + call $~lib/array/Array<~lib/string/String | null>#join + ) + (func $~lib/util/string/joinArrays<~lib/array/Array> (; 285 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $5 + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 0 + local.set $7 + local.get $3 + i32.eqz + if + local.get $0 + i32.load + local.tee $4 + local.get $7 + local.tee $8 + i32.ne + if + local.get $4 + call $~lib/rt/pure/__retain + drop + local.get $8 + call $~lib/rt/pure/__release + end + local.get $4 + local.set $7 + local.get $7 + if (result i32) + local.get $7 + local.get $2 + call $~lib/array/Array#join + else + i32.const 4248 + call $~lib/rt/pure/__retain + end + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $4 + return + end + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $8 + local.get $7 + local.tee $9 + i32.ne + if + local.get $8 + call $~lib/rt/pure/__retain + drop + local.get $9 + call $~lib/rt/pure/__release + end + local.get $8 + local.set $7 + local.get $7 + if + local.get $5 + local.get $7 + local.get $2 + call $~lib/array/Array#join + local.tee $8 + call $~lib/string/String.__concat + local.tee $9 + local.tee $10 + local.get $5 + local.tee $11 + i32.ne + if + local.get $10 + call $~lib/rt/pure/__retain + drop + local.get $11 + call $~lib/rt/pure/__release + end + local.get $10 + local.set $5 + local.get $8 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + end + local.get $6 + if + local.get $5 + local.get $2 + call $~lib/string/String.__concat + local.tee $9 + local.tee $11 + local.get $5 + local.tee $8 + i32.ne + if + local.get $11 + call $~lib/rt/pure/__retain + drop + local.get $8 + call $~lib/rt/pure/__release + end + local.get $11 + local.set $5 + local.get $9 + call $~lib/rt/pure/__release + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $10 + local.get $7 + local.tee $4 + i32.ne + if + local.get $10 + call $~lib/rt/pure/__retain + drop + local.get $4 + call $~lib/rt/pure/__release + end + local.get $10 + local.set $7 + local.get $7 + if + local.get $5 + local.get $7 + local.get $2 + call $~lib/array/Array#join + local.tee $10 + call $~lib/string/String.__concat + local.tee $4 + local.tee $8 + local.get $5 + local.tee $9 + i32.ne + if + local.get $8 + call $~lib/rt/pure/__retain + drop + local.get $9 + call $~lib/rt/pure/__release + end + local.get $8 + local.set $5 + local.get $10 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + end + local.get $5 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array<~lib/array/Array>#join (; 286 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinArrays<~lib/array/Array> + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/array/Array<~lib/array/Array>#toString (; 287 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 4464 + call $~lib/array/Array<~lib/array/Array>#join + ) + (func $~lib/util/number/itoa (; 288 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 255 + i32.and + call $~lib/util/number/utoa32 + return + ) + (func $~lib/util/number/itoa_stream (; 289 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i32.const 255 + i32.and + i32.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i32.const 255 + i32.and + call $~lib/util/number/decimalCount32 + local.set $3 + local.get $0 + local.set $6 + local.get $2 + i32.const 255 + i32.and + local.set $5 + local.get $3 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 290 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i32.load8_u + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 10 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 10 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array#join (; 291 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/util/string/joinArrays<~lib/array/Array> (; 292 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $5 + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 0 + local.set $7 + local.get $3 + i32.eqz + if + local.get $0 + i32.load + local.tee $4 + local.get $7 + local.tee $8 + i32.ne + if + local.get $4 + call $~lib/rt/pure/__retain + drop + local.get $8 + call $~lib/rt/pure/__release + end + local.get $4 + local.set $7 + local.get $7 + if (result i32) + local.get $7 + local.get $2 + call $~lib/array/Array#join + else + i32.const 4248 + call $~lib/rt/pure/__retain + end + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $4 + return + end + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $8 + local.get $7 + local.tee $9 + i32.ne + if + local.get $8 + call $~lib/rt/pure/__retain + drop + local.get $9 + call $~lib/rt/pure/__release + end + local.get $8 + local.set $7 + local.get $7 + if + local.get $5 + local.get $7 + local.get $2 + call $~lib/array/Array#join + local.tee $8 + call $~lib/string/String.__concat + local.tee $9 + local.tee $10 + local.get $5 + local.tee $11 + i32.ne + if + local.get $10 + call $~lib/rt/pure/__retain + drop + local.get $11 + call $~lib/rt/pure/__release + end + local.get $10 + local.set $5 + local.get $8 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + end + local.get $6 + if + local.get $5 + local.get $2 + call $~lib/string/String.__concat + local.tee $9 + local.tee $11 + local.get $5 + local.tee $8 + i32.ne + if + local.get $11 + call $~lib/rt/pure/__retain + drop + local.get $8 + call $~lib/rt/pure/__release + end + local.get $11 + local.set $5 + local.get $9 + call $~lib/rt/pure/__release + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $10 + local.get $7 + local.tee $4 + i32.ne + if + local.get $10 + call $~lib/rt/pure/__retain + drop + local.get $4 + call $~lib/rt/pure/__release + end + local.get $10 + local.set $7 + local.get $7 + if + local.get $5 + local.get $7 + local.get $2 + call $~lib/array/Array#join + local.tee $10 + call $~lib/string/String.__concat + local.tee $4 + local.tee $8 + local.get $5 + local.tee $9 + i32.ne + if + local.get $8 + call $~lib/rt/pure/__retain + drop + local.get $9 + call $~lib/rt/pure/__release + end + local.get $8 + local.set $5 + local.get $10 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + end + local.get $5 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array<~lib/array/Array>#join (; 293 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinArrays<~lib/array/Array> + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/array/Array<~lib/array/Array>#toString (; 294 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 4464 + call $~lib/array/Array<~lib/array/Array>#join + ) + (func $~lib/util/string/joinArrays<~lib/array/Array> (; 295 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $5 + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 0 + local.set $7 + local.get $3 + i32.eqz + if + local.get $0 + i32.load + local.tee $4 + local.get $7 + local.tee $8 + i32.ne + if + local.get $4 + call $~lib/rt/pure/__retain + drop + local.get $8 + call $~lib/rt/pure/__release + end + local.get $4 + local.set $7 + local.get $7 + if (result i32) + local.get $7 + local.get $2 + call $~lib/array/Array#join + else + i32.const 4248 + call $~lib/rt/pure/__retain + end + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $4 + return + end + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $8 + local.get $7 + local.tee $9 + i32.ne + if + local.get $8 + call $~lib/rt/pure/__retain + drop + local.get $9 + call $~lib/rt/pure/__release + end + local.get $8 + local.set $7 + local.get $7 + if + local.get $5 + local.get $7 + local.get $2 + call $~lib/array/Array#join + local.tee $8 + call $~lib/string/String.__concat + local.tee $9 + local.tee $10 + local.get $5 + local.tee $11 + i32.ne + if + local.get $10 + call $~lib/rt/pure/__retain + drop + local.get $11 + call $~lib/rt/pure/__release + end + local.get $10 + local.set $5 + local.get $8 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + end + local.get $6 + if + local.get $5 + local.get $2 + call $~lib/string/String.__concat + local.tee $9 + local.tee $11 + local.get $5 + local.tee $8 + i32.ne + if + local.get $11 + call $~lib/rt/pure/__retain + drop + local.get $8 + call $~lib/rt/pure/__release + end + local.get $11 + local.set $5 + local.get $9 + call $~lib/rt/pure/__release + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $10 + local.get $7 + local.tee $4 + i32.ne + if + local.get $10 + call $~lib/rt/pure/__retain + drop + local.get $4 + call $~lib/rt/pure/__release + end + local.get $10 + local.set $7 + local.get $7 + if + local.get $5 + local.get $7 + local.get $2 + call $~lib/array/Array#join + local.tee $10 + call $~lib/string/String.__concat + local.tee $4 + local.tee $8 + local.get $5 + local.tee $9 + i32.ne + if + local.get $8 + call $~lib/rt/pure/__retain + drop + local.get $9 + call $~lib/rt/pure/__release + end + local.get $8 + local.set $5 + local.get $10 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + end + local.get $5 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array<~lib/array/Array>#join (; 296 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinArrays<~lib/array/Array> + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/util/string/joinArrays<~lib/array/Array<~lib/array/Array>> (; 297 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + i32.const 4248 + call $~lib/rt/pure/__retain + local.set $5 + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 0 + local.set $7 + local.get $3 + i32.eqz + if + local.get $0 + i32.load + local.tee $4 + local.get $7 + local.tee $8 + i32.ne + if + local.get $4 + call $~lib/rt/pure/__retain + drop + local.get $8 + call $~lib/rt/pure/__release + end + local.get $4 + local.set $7 + local.get $7 + if (result i32) + local.get $7 + local.get $2 + call $~lib/array/Array<~lib/array/Array>#join + else + i32.const 4248 + call $~lib/rt/pure/__retain + end + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $4 + return + end + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $8 + local.get $7 + local.tee $9 + i32.ne + if + local.get $8 + call $~lib/rt/pure/__retain + drop + local.get $9 + call $~lib/rt/pure/__release + end + local.get $8 + local.set $7 + local.get $7 + if + local.get $5 + local.get $7 + local.get $2 + call $~lib/array/Array<~lib/array/Array>#join + local.tee $8 + call $~lib/string/String.__concat + local.tee $9 + local.tee $10 + local.get $5 + local.tee $11 + i32.ne + if + local.get $10 + call $~lib/rt/pure/__retain + drop + local.get $11 + call $~lib/rt/pure/__release + end + local.get $10 + local.set $5 + local.get $8 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + end + local.get $6 + if + local.get $5 + local.get $2 + call $~lib/string/String.__concat + local.tee $9 + local.tee $11 + local.get $5 + local.tee $8 + i32.ne + if + local.get $11 + call $~lib/rt/pure/__retain + drop + local.get $8 + call $~lib/rt/pure/__release + end + local.get $11 + local.set $5 + local.get $9 + call $~lib/rt/pure/__release + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee $10 + local.get $7 + local.tee $4 + i32.ne + if + local.get $10 + call $~lib/rt/pure/__retain + drop + local.get $4 + call $~lib/rt/pure/__release + end + local.get $10 + local.set $7 + local.get $7 + if + local.get $5 + local.get $7 + local.get $2 + call $~lib/array/Array<~lib/array/Array>#join + local.tee $10 + call $~lib/string/String.__concat + local.tee $4 + local.tee $8 + local.get $5 + local.tee $9 + i32.ne + if + local.get $8 + call $~lib/rt/pure/__retain + drop + local.get $9 + call $~lib/rt/pure/__release + end + local.get $8 + local.set $5 + local.get $10 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + end + local.get $5 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#join (; 298 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.set $2 + local.get $0 + i32.load offset=12 + local.set $3 + local.get $2 + local.get $3 + local.get $1 + call $~lib/util/string/joinArrays<~lib/array/Array<~lib/array/Array>> + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + ) + (func $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#toString (; 299 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 4464 + call $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#join + ) + (func $start:std/array (; 300 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + (local $45 i32) + (local $46 i32) + (local $47 i32) + (local $48 i32) + (local $49 i32) + (local $50 i32) + (local $51 i32) + (local $52 i32) + (local $53 i32) + (local $54 i32) + (local $55 i32) + (local $56 i32) + i32.const 0 + i32.const 0 + call $~lib/array/Array#constructor + global.set $std/array/arr + i32.const 0 + call $~lib/array/Array.isArray<~lib/array/Array | null> + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 35 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array.isArray<~lib/array/Array> + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 36 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $std/array/P#constructor + local.tee $0 + call $~lib/array/Array.isArray + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 37 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8Array#constructor + local.tee $1 + call $~lib/array/Array.isArray<~lib/typedarray/Uint8Array> + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 38 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + call $~lib/array/Array.isArray + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 39 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 416 + call $~lib/array/Array.isArray<~lib/string/String> + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 40 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + i32.const 5 + i32.const 0 + i32.const 6 + i32.const 440 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 1 + i32.const 1 + i32.const 3 + call $~lib/array/Array#fill + call $~lib/rt/pure/__release + local.get $1 + i32.const 5 + i32.const 0 + i32.const 6 + i32.const 464 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $3 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 48 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 0 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/array/Array#fill + call $~lib/rt/pure/__release + local.get $1 + i32.const 5 + i32.const 0 + i32.const 6 + i32.const 536 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $4 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 51 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 1 + i32.const 0 + i32.const -3 + call $~lib/array/Array#fill + call $~lib/rt/pure/__release + local.get $1 + i32.const 5 + i32.const 0 + i32.const 6 + i32.const 560 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $5 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 54 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 2 + i32.const -2 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/array/Array#fill + call $~lib/rt/pure/__release + local.get $1 + i32.const 5 + i32.const 0 + i32.const 6 + i32.const 584 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $6 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 57 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 0 + i32.const 1 + i32.const 0 + call $~lib/array/Array#fill + call $~lib/rt/pure/__release + local.get $1 + i32.const 5 + i32.const 0 + i32.const 6 + i32.const 608 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $7 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 60 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + i32.const 5 + i32.const 2 + i32.const 7 + i32.const 632 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $6 + call $~lib/rt/pure/__retain + local.set $7 + local.get $7 + i32.const 1 + i32.const 1 + i32.const 3 + call $~lib/array/Array#fill + call $~lib/rt/pure/__release + local.get $7 + i32.const 5 + i32.const 2 + i32.const 7 + i32.const 672 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $4 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 67 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 0 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/array/Array#fill + call $~lib/rt/pure/__release + local.get $7 + i32.const 5 + i32.const 2 + i32.const 7 + i32.const 712 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $3 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 70 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 1 + i32.const 0 + i32.const -3 + call $~lib/array/Array#fill + call $~lib/rt/pure/__release + local.get $7 + i32.const 5 + i32.const 2 + i32.const 7 + i32.const 752 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $1 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 73 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 2 + i32.const -2 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/array/Array#fill + call $~lib/rt/pure/__release + local.get $7 + i32.const 5 + i32.const 2 + i32.const 7 + i32.const 792 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $0 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 76 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 0 + i32.const 1 + i32.const 0 + call $~lib/array/Array#fill + call $~lib/rt/pure/__release + local.get $7 + i32.const 5 + i32.const 2 + i32.const 7 + i32.const 832 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $2 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 79 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $6 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 85 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 86 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 42 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#__get + i32.const 42 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 90 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 91 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 92 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#pop + local.set $2 + local.get $2 + i32.const 42 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 96 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 97 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 98 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + call $~lib/array/Array#push + drop + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 102 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 103 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#__get + i32.const 43 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 104 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 44 + call $~lib/array/Array#push + drop + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 108 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 109 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#__get + i32.const 43 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 110 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 1 + call $~lib/array/Array#__get + i32.const 44 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 111 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 45 + call $~lib/array/Array#push + drop + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 115 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 116 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#__get + i32.const 43 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 117 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 1 + call $~lib/array/Array#__get + i32.const 44 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 118 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#__get + i32.const 45 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 119 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + i32.const 0 + call $~lib/array/Array#constructor + local.set $2 + global.get $std/array/arr + local.get $2 + call $~lib/array/Array#concat + local.set $0 + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 128 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 129 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/array/Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 130 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.const 2 + i32.const 3 + i32.const 920 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $3 + call $~lib/array/Array#concat + call $~lib/rt/pure/__release + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 133 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + call $~lib/array/Array#__get + i32.const 43 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 135 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/array/Array#__get + i32.const 44 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 136 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/array/Array#__get + i32.const 45 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 137 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 46 + call $~lib/array/Array#push + drop + local.get $2 + i32.const 47 + call $~lib/array/Array#push + drop + global.get $std/array/arr + local.get $2 + call $~lib/array/Array#concat + local.set $5 + local.get $0 + call $~lib/rt/pure/__release + local.get $5 + local.set $0 + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 144 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 145 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/array/Array#get:length + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 146 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + call $~lib/array/Array#__get + i32.const 43 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 147 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/array/Array#__get + i32.const 44 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 148 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/array/Array#__get + i32.const 45 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 149 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 3 + call $~lib/array/Array#__get + i32.const 46 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 150 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 4 + call $~lib/array/Array#__get + i32.const 47 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 151 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/array/Array#pop + drop + local.get $0 + call $~lib/array/Array#get:length + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 154 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + i32.const 2 + i32.const 3 + i32.const 936 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $1 + call $~lib/rt/pure/__retain + local.set $5 + local.get $5 + call $~lib/array/Array#get:length + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 162 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + global.get $std/array/arr + call $~lib/array/Array#concat + local.set $6 + local.get $0 + call $~lib/rt/pure/__release + local.get $6 + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 164 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + call $~lib/array/Array#get:length + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 165 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + i32.const 0 + local.set $5 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 952 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $3 + local.tee $7 + local.get $5 + local.tee $1 + i32.ne + if + local.get $7 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__release + end + local.get $7 + local.set $5 + local.get $5 + i32.const 0 + i32.const 3 + i32.const 2147483647 + call $~lib/array/Array#copyWithin + local.tee $7 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 992 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $0 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 173 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1032 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $2 + local.tee $4 + local.get $5 + local.tee $1 + i32.ne + if + local.get $4 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__release + end + local.get $4 + local.set $5 + local.get $5 + i32.const 1 + i32.const 3 + i32.const 2147483647 + call $~lib/array/Array#copyWithin + local.tee $4 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1072 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $6 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 175 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1112 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $8 + local.tee $1 + local.get $5 + local.tee $9 + i32.ne + if + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $9 + call $~lib/rt/pure/__release + end + local.get $1 + local.set $5 + local.get $5 + i32.const 1 + i32.const 2 + i32.const 2147483647 + call $~lib/array/Array#copyWithin + local.tee $1 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1152 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $10 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 177 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1192 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $11 + local.tee $9 + local.get $5 + local.tee $12 + i32.ne + if + local.get $9 + call $~lib/rt/pure/__retain + drop + local.get $12 + call $~lib/rt/pure/__release + end + local.get $9 + local.set $5 + local.get $5 + i32.const 2 + i32.const 2 + i32.const 2147483647 + call $~lib/array/Array#copyWithin + local.tee $9 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1232 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $13 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 179 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1272 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $14 + local.tee $12 + local.get $5 + local.tee $15 + i32.ne + if + local.get $12 + call $~lib/rt/pure/__retain + drop + local.get $15 + call $~lib/rt/pure/__release + end + local.get $12 + local.set $5 + local.get $5 + i32.const 0 + i32.const 3 + i32.const 4 + call $~lib/array/Array#copyWithin + local.tee $12 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1312 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $16 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 181 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1352 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $17 + local.tee $15 + local.get $5 + local.tee $18 + i32.ne + if + local.get $15 + call $~lib/rt/pure/__retain + drop + local.get $18 + call $~lib/rt/pure/__release + end + local.get $15 + local.set $5 + local.get $5 + i32.const 1 + i32.const 3 + i32.const 4 + call $~lib/array/Array#copyWithin + local.tee $15 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1392 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $19 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 183 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1432 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $20 + local.tee $18 + local.get $5 + local.tee $21 + i32.ne + if + local.get $18 + call $~lib/rt/pure/__retain + drop + local.get $21 + call $~lib/rt/pure/__release + end + local.get $18 + local.set $5 + local.get $5 + i32.const 1 + i32.const 2 + i32.const 4 + call $~lib/array/Array#copyWithin + local.tee $18 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1472 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $22 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 185 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1512 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $23 + local.tee $21 + local.get $5 + local.tee $24 + i32.ne + if + local.get $21 + call $~lib/rt/pure/__retain + drop + local.get $24 + call $~lib/rt/pure/__release + end + local.get $21 + local.set $5 + local.get $5 + i32.const 0 + i32.const -2 + i32.const 2147483647 + call $~lib/array/Array#copyWithin + local.tee $21 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1552 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $25 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 187 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1592 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $26 + local.tee $24 + local.get $5 + local.tee $27 + i32.ne + if + local.get $24 + call $~lib/rt/pure/__retain + drop + local.get $27 + call $~lib/rt/pure/__release + end + local.get $24 + local.set $5 + local.get $5 + i32.const 0 + i32.const -2 + i32.const -1 + call $~lib/array/Array#copyWithin + local.tee $24 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1632 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $28 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 189 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1672 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $29 + local.tee $27 + local.get $5 + local.tee $30 + i32.ne + if + local.get $27 + call $~lib/rt/pure/__retain + drop + local.get $30 + call $~lib/rt/pure/__release + end + local.get $27 + local.set $5 + local.get $5 + i32.const -4 + i32.const -3 + i32.const -2 + call $~lib/array/Array#copyWithin + local.tee $27 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1712 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $31 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 191 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1752 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $32 + local.tee $30 + local.get $5 + local.tee $33 + i32.ne + if + local.get $30 + call $~lib/rt/pure/__retain + drop + local.get $33 + call $~lib/rt/pure/__release + end + local.get $30 + local.set $5 + local.get $5 + i32.const -4 + i32.const -3 + i32.const -1 + call $~lib/array/Array#copyWithin + local.tee $30 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1792 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $34 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 193 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1832 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $35 + local.tee $33 + local.get $5 + local.tee $36 + i32.ne + if + local.get $33 + call $~lib/rt/pure/__retain + drop + local.get $36 + call $~lib/rt/pure/__release + end + local.get $33 + local.set $5 + local.get $5 + i32.const -4 + i32.const -3 + i32.const 2147483647 + call $~lib/array/Array#copyWithin + local.tee $33 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1872 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $37 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 195 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $10 + call $~lib/rt/pure/__release + local.get $11 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + local.get $13 + call $~lib/rt/pure/__release + local.get $14 + call $~lib/rt/pure/__release + local.get $12 + call $~lib/rt/pure/__release + local.get $16 + call $~lib/rt/pure/__release + local.get $17 + call $~lib/rt/pure/__release + local.get $15 + call $~lib/rt/pure/__release + local.get $19 + call $~lib/rt/pure/__release + local.get $20 + call $~lib/rt/pure/__release + local.get $18 + call $~lib/rt/pure/__release + local.get $22 + call $~lib/rt/pure/__release + local.get $23 + call $~lib/rt/pure/__release + local.get $21 + call $~lib/rt/pure/__release + local.get $25 + call $~lib/rt/pure/__release + local.get $26 + call $~lib/rt/pure/__release + local.get $24 + call $~lib/rt/pure/__release + local.get $28 + call $~lib/rt/pure/__release + local.get $29 + call $~lib/rt/pure/__release + local.get $27 + call $~lib/rt/pure/__release + local.get $31 + call $~lib/rt/pure/__release + local.get $32 + call $~lib/rt/pure/__release + local.get $30 + call $~lib/rt/pure/__release + local.get $34 + call $~lib/rt/pure/__release + local.get $35 + call $~lib/rt/pure/__release + local.get $33 + call $~lib/rt/pure/__release + local.get $37 + call $~lib/rt/pure/__release + global.get $std/array/arr + i32.const 42 + call $~lib/array/Array#unshift + drop + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 203 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 204 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#__get + i32.const 42 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 205 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 1 + call $~lib/array/Array#__get + i32.const 43 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 206 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#__get + i32.const 44 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 207 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#__get + i32.const 45 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 208 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 41 + call $~lib/array/Array#unshift + drop + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 212 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 213 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#__get + i32.const 41 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 214 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 1 + call $~lib/array/Array#__get + i32.const 42 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 215 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#__get + i32.const 43 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 216 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#__get + i32.const 44 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 217 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 4 + call $~lib/array/Array#__get + i32.const 45 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 218 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#shift + global.set $std/array/i + global.get $std/array/i + i32.const 41 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 227 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 228 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 229 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#__get + i32.const 42 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 230 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 1 + call $~lib/array/Array#__get + i32.const 43 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 231 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#__get + i32.const 44 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 232 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#__get + i32.const 45 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 233 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#pop + global.set $std/array/i + global.get $std/array/i + i32.const 45 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 237 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 238 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 239 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#__get + i32.const 42 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 240 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 1 + call $~lib/array/Array#__get + i32.const 43 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 241 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#__get + i32.const 44 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 242 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#reverse + call $~lib/rt/pure/__release + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 250 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 251 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#__get + i32.const 44 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 252 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 1 + call $~lib/array/Array#__get + i32.const 43 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 253 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#__get + i32.const 42 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 254 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 44 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 44 + i32.const 0 + call $~lib/array/Array#indexOf + global.set $std/array/i + global.get $std/array/i + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 264 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 42 + i32.const 0 + call $~lib/array/Array#indexOf + global.set $std/array/i + global.get $std/array/i + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 267 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 45 + i32.const 0 + call $~lib/array/Array#indexOf + global.set $std/array/i + global.get $std/array/i + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 270 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const 100 + call $~lib/array/Array#indexOf + global.set $std/array/i + global.get $std/array/i + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 273 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const -100 + call $~lib/array/Array#indexOf + global.set $std/array/i + global.get $std/array/i + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 276 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const -2 + call $~lib/array/Array#indexOf + global.set $std/array/i + global.get $std/array/i + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 279 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const -4 + call $~lib/array/Array#indexOf + global.set $std/array/i + global.get $std/array/i + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 282 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const 0 + call $~lib/array/Array#indexOf + global.set $std/array/i + global.get $std/array/i + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 285 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const 1 + call $~lib/array/Array#indexOf + global.set $std/array/i + global.get $std/array/i + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 288 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const 2 + call $~lib/array/Array#indexOf + global.set $std/array/i + global.get $std/array/i + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 291 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 44 + i32.const 0 + call $~lib/array/Array#includes + local.set $37 + local.get $37 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 298 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 42 + i32.const 0 + call $~lib/array/Array#includes + local.set $37 + local.get $37 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 301 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 45 + i32.const 0 + call $~lib/array/Array#includes + local.set $37 + local.get $37 + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 304 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const 100 + call $~lib/array/Array#includes + local.set $37 + local.get $37 + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 307 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const -100 + call $~lib/array/Array#includes + local.set $37 + local.get $37 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 310 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const -2 + call $~lib/array/Array#includes + local.set $37 + local.get $37 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 313 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const -4 + call $~lib/array/Array#includes + local.set $37 + local.get $37 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 316 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const 0 + call $~lib/array/Array#includes + local.set $37 + local.get $37 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 319 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const 1 + call $~lib/array/Array#includes + local.set $37 + local.get $37 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 322 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 43 + i32.const 2 + call $~lib/array/Array#includes + local.set $37 + local.get $37 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 325 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 1 + i32.const 1 + call $~lib/array/Array#splice + call $~lib/rt/pure/__release + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 329 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $std/array/internalCapacity + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 330 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#__get + i32.const 44 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 331 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 1 + call $~lib/array/Array#__get + i32.const 42 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 332 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1912 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $33 + call $~lib/rt/pure/__retain + local.set $37 + local.get $37 + i32.const 0 + i32.const 2147483647 + call $~lib/array/Array#splice + local.tee $35 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 1952 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $30 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 339 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 0 + i32.const 2 + i32.const 3 + i32.const 1992 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $32 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 340 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2008 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $31 + local.tee $36 + local.get $37 + local.tee $34 + i32.ne + if + local.get $36 + call $~lib/rt/pure/__retain + drop + local.get $34 + call $~lib/rt/pure/__release + end + local.get $36 + local.set $37 + local.get $37 + i32.const 2 + i32.const 2147483647 + call $~lib/array/Array#splice + local.tee $36 + i32.const 3 + i32.const 2 + i32.const 3 + i32.const 2048 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $27 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 343 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 2 + i32.const 2 + i32.const 3 + i32.const 2080 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $29 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 344 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2104 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $28 + local.tee $5 + local.get $37 + local.tee $34 + i32.ne + if + local.get $5 + call $~lib/rt/pure/__retain + drop + local.get $34 + call $~lib/rt/pure/__release + end + local.get $5 + local.set $37 + local.get $37 + i32.const 2 + i32.const 2 + call $~lib/array/Array#splice + local.tee $5 + i32.const 2 + i32.const 2 + i32.const 3 + i32.const 2144 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $24 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 347 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 3 + i32.const 2 + i32.const 3 + i32.const 2168 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $26 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 348 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2200 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $25 + local.tee $3 + local.get $37 + local.tee $34 + i32.ne + if + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $34 + call $~lib/rt/pure/__release + end + local.get $3 + local.set $37 + local.get $37 + i32.const 0 + i32.const 1 + call $~lib/array/Array#splice + local.tee $3 + i32.const 1 + i32.const 2 + i32.const 3 + i32.const 2240 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $21 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 351 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 4 + i32.const 2 + i32.const 3 + i32.const 2264 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $23 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 352 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2296 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $22 + local.tee $7 + local.get $37 + local.tee $34 + i32.ne + if + local.get $7 + call $~lib/rt/pure/__retain + drop + local.get $34 + call $~lib/rt/pure/__release + end + local.get $7 + local.set $37 + local.get $37 + i32.const -1 + i32.const 2147483647 + call $~lib/array/Array#splice + local.tee $7 + i32.const 1 + i32.const 2 + i32.const 3 + i32.const 2336 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $18 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 355 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 4 + i32.const 2 + i32.const 3 + i32.const 2360 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $20 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 356 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2392 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $19 + local.tee $0 + local.get $37 + local.tee $34 + i32.ne + if + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $34 + call $~lib/rt/pure/__release + end + local.get $0 + local.set $37 + local.get $37 + i32.const -2 + i32.const 2147483647 + call $~lib/array/Array#splice + local.tee $0 + i32.const 2 + i32.const 2 + i32.const 3 + i32.const 2432 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $15 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 359 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 3 + i32.const 2 + i32.const 3 + i32.const 2456 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $17 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 360 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2488 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $16 + local.tee $2 + local.get $37 + local.tee $34 + i32.ne + if + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $34 + call $~lib/rt/pure/__release + end + local.get $2 + local.set $37 + local.get $37 + i32.const -2 + i32.const 1 + call $~lib/array/Array#splice + local.tee $2 + i32.const 1 + i32.const 2 + i32.const 3 + i32.const 2528 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $12 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 363 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 4 + i32.const 2 + i32.const 3 + i32.const 2552 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $14 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 364 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2584 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $13 + local.tee $4 + local.get $37 + local.tee $34 + i32.ne + if + local.get $4 + call $~lib/rt/pure/__retain + drop + local.get $34 + call $~lib/rt/pure/__release + end + local.get $4 + local.set $37 + local.get $37 + i32.const -7 + i32.const 1 + call $~lib/array/Array#splice + local.tee $4 + i32.const 1 + i32.const 2 + i32.const 3 + i32.const 2624 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $9 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 367 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 4 + i32.const 2 + i32.const 3 + i32.const 2648 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $11 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 368 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2680 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $10 + local.tee $6 + local.get $37 + local.tee $34 + i32.ne + if + local.get $6 + call $~lib/rt/pure/__retain + drop + local.get $34 + call $~lib/rt/pure/__release + end + local.get $6 + local.set $37 + local.get $37 + i32.const -2 + i32.const -1 + call $~lib/array/Array#splice + local.tee $6 + i32.const 0 + i32.const 2 + i32.const 3 + i32.const 2720 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $1 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 371 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2736 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $8 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 372 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2776 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $38 + local.tee $34 + local.get $37 + local.tee $39 + i32.ne + if + local.get $34 + call $~lib/rt/pure/__retain + drop + local.get $39 + call $~lib/rt/pure/__release + end + local.get $34 + local.set $37 + local.get $37 + i32.const 1 + i32.const -2 + call $~lib/array/Array#splice + local.tee $34 + i32.const 0 + i32.const 2 + i32.const 3 + i32.const 2816 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $40 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 375 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2832 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $41 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 376 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2872 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $42 + local.tee $39 + local.get $37 + local.tee $43 + i32.ne + if + local.get $39 + call $~lib/rt/pure/__retain + drop + local.get $43 + call $~lib/rt/pure/__release + end + local.get $39 + local.set $37 + local.get $37 + i32.const 4 + i32.const 0 + call $~lib/array/Array#splice + local.tee $39 + i32.const 0 + i32.const 2 + i32.const 3 + i32.const 2912 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $44 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 379 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2928 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $45 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 380 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 2968 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $46 + local.tee $43 + local.get $37 + local.tee $47 + i32.ne + if + local.get $43 + call $~lib/rt/pure/__retain + drop + local.get $47 + call $~lib/rt/pure/__release + end + local.get $43 + local.set $37 + local.get $37 + i32.const 7 + i32.const 0 + call $~lib/array/Array#splice + local.tee $43 + i32.const 0 + i32.const 2 + i32.const 3 + i32.const 3008 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $48 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 383 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 3024 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $49 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 384 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 3064 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $50 + local.tee $47 + local.get $37 + local.tee $51 + i32.ne + if + local.get $47 + call $~lib/rt/pure/__retain + drop + local.get $51 + call $~lib/rt/pure/__release + end + local.get $47 + local.set $37 + local.get $37 + i32.const 7 + i32.const 5 + call $~lib/array/Array#splice + local.tee $47 + i32.const 0 + i32.const 2 + i32.const 3 + i32.const 3104 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $52 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 387 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 3120 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $53 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 388 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $33 + call $~lib/rt/pure/__release + local.get $37 + call $~lib/rt/pure/__release + local.get $35 + call $~lib/rt/pure/__release + local.get $30 + call $~lib/rt/pure/__release + local.get $32 + call $~lib/rt/pure/__release + local.get $31 + call $~lib/rt/pure/__release + local.get $36 + call $~lib/rt/pure/__release + local.get $27 + call $~lib/rt/pure/__release + local.get $29 + call $~lib/rt/pure/__release + local.get $28 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $24 + call $~lib/rt/pure/__release + local.get $26 + call $~lib/rt/pure/__release + local.get $25 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $21 + call $~lib/rt/pure/__release + local.get $23 + call $~lib/rt/pure/__release + local.get $22 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $18 + call $~lib/rt/pure/__release + local.get $20 + call $~lib/rt/pure/__release + local.get $19 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $15 + call $~lib/rt/pure/__release + local.get $17 + call $~lib/rt/pure/__release + local.get $16 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $12 + call $~lib/rt/pure/__release + local.get $14 + call $~lib/rt/pure/__release + local.get $13 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + local.get $11 + call $~lib/rt/pure/__release + local.get $10 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $38 + call $~lib/rt/pure/__release + local.get $34 + call $~lib/rt/pure/__release + local.get $40 + call $~lib/rt/pure/__release + local.get $41 + call $~lib/rt/pure/__release + local.get $42 + call $~lib/rt/pure/__release + local.get $39 + call $~lib/rt/pure/__release + local.get $44 + call $~lib/rt/pure/__release + local.get $45 + call $~lib/rt/pure/__release + local.get $46 + call $~lib/rt/pure/__release + local.get $43 + call $~lib/rt/pure/__release + local.get $48 + call $~lib/rt/pure/__release + local.get $49 + call $~lib/rt/pure/__release + local.get $50 + call $~lib/rt/pure/__release + local.get $47 + call $~lib/rt/pure/__release + local.get $52 + call $~lib/rt/pure/__release + local.get $53 + call $~lib/rt/pure/__release + global.get $std/array/arr + i32.const 0 + i32.const 0 + call $~lib/array/Array#__set + global.get $std/array/arr + i32.const 1 + i32.const 1 + call $~lib/array/Array#__set + global.get $std/array/arr + i32.const 2 + i32.const 2 + call $~lib/array/Array#__set + global.get $std/array/arr + i32.const 3 + i32.const 3 + call $~lib/array/Array#__set + global.get $std/array/arr + i32.const 1 + call $~lib/array/Array#findIndex + global.set $std/array/i + global.get $std/array/i + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 401 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#findIndex + global.set $std/array/i + global.get $std/array/i + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 404 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#findIndex + global.set $std/array/i + global.get $std/array/i + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 407 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 4 + call $~lib/array/Array#findIndex + global.set $std/array/i + global.get $std/array/i + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 416 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 5 + call $~lib/array/Array#findIndex + global.set $std/array/i + global.get $std/array/i + i32.const -1 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 418 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + i32.const 6 + call $~lib/array/Array#findIndex + global.set $std/array/i + global.get $std/array/i + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 431 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 432 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 7 + call $~lib/array/Array#every + local.set $53 + local.get $53 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 442 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 8 + call $~lib/array/Array#every + local.set $53 + local.get $53 + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 445 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 9 + call $~lib/array/Array#every + local.set $53 + local.get $53 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 453 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 454 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 10 + call $~lib/array/Array#every + local.set $53 + local.get $53 + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 456 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + i32.const 11 + call $~lib/array/Array#every + local.set $53 + local.get $53 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 469 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 470 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 12 + call $~lib/array/Array#some + local.set $53 + local.get $53 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 480 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 13 + call $~lib/array/Array#some + local.set $53 + local.get $53 + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 483 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 14 + call $~lib/array/Array#some + local.set $53 + local.get $53 + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 491 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 492 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 15 + call $~lib/array/Array#some + local.set $53 + local.get $53 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 494 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + i32.const 16 + call $~lib/array/Array#some + local.set $53 + local.get $53 + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 507 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 508 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#push + drop + i32.const 0 + global.set $std/array/i + global.get $std/array/arr + i32.const 17 + call $~lib/array/Array#forEach + global.get $std/array/i + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 519 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + global.set $std/array/i + global.get $std/array/arr + i32.const 18 + call $~lib/array/Array#forEach + global.get $std/array/i + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 528 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 529 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + global.set $std/array/i + global.get $std/array/arr + i32.const 19 + call $~lib/array/Array#forEach + global.get $std/array/i + i32.const 406 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 532 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + i32.const 0 + global.set $std/array/i + global.get $std/array/arr + i32.const 20 + call $~lib/array/Array#forEach + global.get $std/array/i + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 546 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 547 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 21 + call $~lib/array/Array#forEach + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 100 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 572 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + block $break|0 + i32.const 0 + local.set $53 + loop $loop|0 + local.get $53 + i32.const 100 + i32.lt_s + i32.eqz + br_if $break|0 + global.get $std/array/arr + call $~lib/array/Array#pop + drop + local.get $53 + i32.const 1 + i32.add + local.set $53 + br $loop|0 + end + unreachable + end + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 1 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 22 + call $~lib/array/Array#map + local.set $53 + local.get $53 + call $~lib/array/Array#get:length + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $53 + i32.const 0 + call $~lib/array/Array#__get + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#__get + f32.convert_i32_s + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 587 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + global.set $std/array/i + global.get $std/array/arr + i32.const 23 + call $~lib/array/Array#map + call $~lib/rt/pure/__release + global.get $std/array/i + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 596 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 597 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + global.set $std/array/i + global.get $std/array/arr + i32.const 24 + call $~lib/array/Array#map + call $~lib/rt/pure/__release + global.get $std/array/i + i32.const 406 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 604 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + i32.const 0 + global.set $std/array/i + global.get $std/array/arr + i32.const 25 + call $~lib/array/Array#map + call $~lib/rt/pure/__release + global.get $std/array/i + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 619 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 620 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#push + drop + local.get $53 + call $~lib/rt/pure/__release + global.get $std/array/arr + i32.const 26 + call $~lib/array/Array#filter + local.set $53 + local.get $53 + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 630 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + global.set $std/array/i + global.get $std/array/arr + i32.const 27 + call $~lib/array/Array#filter + call $~lib/rt/pure/__release + global.get $std/array/i + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 639 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 640 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + global.set $std/array/i + global.get $std/array/arr + i32.const 28 + call $~lib/array/Array#filter + call $~lib/rt/pure/__release + global.get $std/array/i + i32.const 406 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 647 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + i32.const 0 + global.set $std/array/i + global.get $std/array/arr + i32.const 29 + call $~lib/array/Array#filter + call $~lib/rt/pure/__release + global.get $std/array/i + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 662 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 663 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#push + drop + local.get $53 + call $~lib/rt/pure/__release + global.get $std/array/arr + i32.const 30 + i32.const 0 + call $~lib/array/Array#reduce + global.set $std/array/i + global.get $std/array/i + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 673 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 31 + i32.const 4 + call $~lib/array/Array#reduce + global.set $std/array/i + global.get $std/array/i + i32.const 10 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 677 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 32 + i32.const 0 + call $~lib/array/Array#reduce + local.set $53 + local.get $53 + i32.const 0 + i32.ne + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 680 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 33 + i32.const 0 + call $~lib/array/Array#reduce + local.set $53 + local.get $53 + i32.const 0 + i32.ne + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 683 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 34 + i32.const 0 + call $~lib/array/Array#reduce + global.set $std/array/i + global.get $std/array/i + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 691 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 692 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 35 + i32.const 0 + call $~lib/array/Array#reduce + global.set $std/array/i + global.get $std/array/i + i32.const 10 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 694 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + i32.const 36 + i32.const 0 + call $~lib/array/Array#reduce + global.set $std/array/i + global.get $std/array/i + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 707 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 708 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 37 + i32.const 0 + call $~lib/array/Array#reduceRight + global.set $std/array/i + global.get $std/array/i + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 718 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 38 + i32.const 4 + call $~lib/array/Array#reduceRight + global.set $std/array/i + global.get $std/array/i + i32.const 10 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 722 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 39 + i32.const 0 + call $~lib/array/Array#reduceRight + local.set $53 + local.get $53 + i32.const 0 + i32.ne + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 725 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 40 + i32.const 0 + call $~lib/array/Array#reduceRight + local.set $53 + local.get $53 + i32.const 0 + i32.ne + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 728 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 41 + i32.const 0 + call $~lib/array/Array#reduceRight + global.set $std/array/i + global.get $std/array/i + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 736 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 737 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 42 + i32.const 0 + call $~lib/array/Array#reduceRight + global.set $std/array/i + global.get $std/array/i + i32.const 10 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 739 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + call $~lib/array/Array#pop + drop + global.get $std/array/arr + i32.const 43 + i32.const 0 + call $~lib/array/Array#reduceRight + global.set $std/array/i + global.get $std/array/i + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 752 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + call $~lib/array/Array#get:length + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 753 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $std/array/arr + i32.const 0 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 1 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 2 + call $~lib/array/Array#push + drop + global.get $std/array/arr + i32.const 3 + call $~lib/array/Array#push + drop + call $~lib/bindings/Math/random + i64.reinterpret_f64 + call $~lib/math/NativeMath.seedRandom + i32.const 8 + i32.const 2 + i32.const 8 + i32.const 3392 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $52 + call $~lib/rt/pure/__retain + local.set $53 + i32.const 0 + global.set $~lib/argc + local.get $53 + i32.const 0 + call $~lib/array/Array#sort|trampoline + call $~lib/rt/pure/__release + local.get $53 + i32.const 8 + i32.const 2 + i32.const 8 + i32.const 3440 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $50 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 842 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 8 + i32.const 3 + i32.const 9 + i32.const 3488 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $49 + call $~lib/rt/pure/__retain + local.set $47 + i32.const 0 + global.set $~lib/argc + local.get $47 + i32.const 0 + call $~lib/array/Array#sort|trampoline + call $~lib/rt/pure/__release + local.get $47 + i32.const 8 + i32.const 3 + i32.const 9 + i32.const 3568 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $43 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 846 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 3648 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $46 + call $~lib/rt/pure/__retain + local.set $48 + i32.const 0 + global.set $~lib/argc + local.get $48 + i32.const 0 + call $~lib/array/Array#sort|trampoline + call $~lib/rt/pure/__release + local.get $48 + i32.const 5 + i32.const 2 + i32.const 3 + i32.const 3688 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $44 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 850 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 5 + i32.const 2 + i32.const 7 + i32.const 3728 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $39 + call $~lib/rt/pure/__retain + local.set $45 + i32.const 0 + global.set $~lib/argc + local.get $45 + i32.const 0 + call $~lib/array/Array#sort|trampoline + call $~lib/rt/pure/__release + local.get $45 + i32.const 5 + i32.const 2 + i32.const 7 + i32.const 3768 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $41 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 854 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + i32.const 2 + i32.const 3 + i32.const 3808 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $40 + call $~lib/rt/pure/__retain + local.set $42 + i32.const 1 + i32.const 2 + i32.const 3 + i32.const 3824 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $38 + call $~lib/rt/pure/__retain + local.set $34 + i32.const 2 + i32.const 2 + i32.const 3 + i32.const 3848 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $1 + call $~lib/rt/pure/__retain + local.set $8 + i32.const 4 + i32.const 2 + i32.const 3 + i32.const 3872 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $10 + call $~lib/rt/pure/__retain + local.set $6 + i32.const 4 + i32.const 2 + i32.const 3 + i32.const 3904 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $9 + call $~lib/rt/pure/__retain + local.set $11 + i32.const 64 + call $std/array/createReverseOrderedArray + local.set $4 + i32.const 128 + call $std/array/createReverseOrderedArray + local.set $13 + i32.const 1024 + call $std/array/createReverseOrderedArray + local.set $14 + i32.const 10000 + call $std/array/createReverseOrderedArray + local.set $12 + i32.const 512 + call $std/array/createRandomOrderedArray + local.set $2 + local.get $42 + call $std/array/assertSortedDefault + local.get $34 + call $std/array/assertSortedDefault + local.get $34 + i32.const 1 + i32.const 2 + i32.const 3 + i32.const 3992 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $17 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 874 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + call $std/array/assertSortedDefault + local.get $8 + i32.const 2 + i32.const 2 + i32.const 3 + i32.const 4016 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $15 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 877 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $6 + call $std/array/assertSortedDefault + local.get $6 + local.get $11 + i32.const 0 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 880 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $4 + call $std/array/assertSortedDefault + local.get $4 + local.get $11 + i32.const 4 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 883 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $13 + call $std/array/assertSortedDefault + local.get $13 + local.get $11 + i32.const 4 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 886 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $14 + call $std/array/assertSortedDefault + local.get $14 + local.get $11 + i32.const 4 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 889 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $12 + call $std/array/assertSortedDefault + local.get $12 + local.get $11 + i32.const 4 + call $std/array/isArraysEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 892 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $std/array/assertSortedDefault + local.get $52 + call $~lib/rt/pure/__release + local.get $53 + call $~lib/rt/pure/__release + local.get $50 + call $~lib/rt/pure/__release + local.get $49 + call $~lib/rt/pure/__release + local.get $47 + call $~lib/rt/pure/__release + local.get $43 + call $~lib/rt/pure/__release + local.get $46 + call $~lib/rt/pure/__release + local.get $48 + call $~lib/rt/pure/__release + local.get $44 + call $~lib/rt/pure/__release + local.get $39 + call $~lib/rt/pure/__release + local.get $45 + call $~lib/rt/pure/__release + local.get $41 + call $~lib/rt/pure/__release + local.get $40 + call $~lib/rt/pure/__release + local.get $42 + call $~lib/rt/pure/__release + local.get $38 + call $~lib/rt/pure/__release + local.get $34 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $10 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + local.get $11 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $13 + call $~lib/rt/pure/__release + local.get $14 + call $~lib/rt/pure/__release + local.get $12 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $17 + call $~lib/rt/pure/__release + local.get $15 + call $~lib/rt/pure/__release + i32.const 64 + call $std/array/createRandomOrderedArray + local.set $15 + i32.const 257 + call $std/array/createRandomOrderedArray + local.set $17 + local.get $15 + i32.const 49 + call $std/array/assertSorted + local.get $15 + i32.const 50 + call $std/array/assertSorted + local.get $17 + i32.const 51 + call $std/array/assertSorted + local.get $17 + i32.const 52 + call $std/array/assertSorted + local.get $15 + call $~lib/rt/pure/__release + local.get $17 + call $~lib/rt/pure/__release + i32.const 2 + call $std/array/createReverseOrderedNestedArray + local.set $17 + local.get $17 + i32.const 53 + call $std/array/assertSorted<~lib/array/Array> + local.get $17 + call $~lib/rt/pure/__release + i32.const 512 + call $std/array/createReverseOrderedElementsArray + local.set $17 + local.get $17 + i32.const 54 + call $std/array/assertSorted> + local.get $17 + call $~lib/rt/pure/__release + i32.const 7 + i32.const 2 + i32.const 13 + i32.const 4264 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $15 + call $~lib/rt/pure/__retain + local.set $17 + i32.const 7 + i32.const 2 + i32.const 13 + i32.const 4312 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $12 + call $~lib/rt/pure/__retain + local.set $2 + i32.const 1 + global.set $~lib/argc + local.get $17 + i32.const 0 + call $std/array/assertSorted<~lib/string/String | null>|trampoline + local.get $17 + local.get $2 + i32.const 0 + call $std/array/isArraysEqual<~lib/string/String | null> + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 929 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 400 + call $std/array/createRandomStringArray + local.set $14 + i32.const 1 + global.set $~lib/argc + local.get $14 + i32.const 0 + call $std/array/assertSorted<~lib/string/String>|trampoline + local.get $15 + call $~lib/rt/pure/__release + local.get $17 + call $~lib/rt/pure/__release + local.get $12 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $14 + call $~lib/rt/pure/__release + i32.const 2 + i32.const 0 + i32.const 15 + i32.const 4384 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $2 + i32.const 4464 + call $~lib/array/Array#join + local.tee $14 + i32.const 4488 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 940 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 2 + i32.const 3 + i32.const 4528 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $17 + i32.const 4248 + call $~lib/array/Array#join + local.tee $12 + i32.const 5032 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 941 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 2 + i32.const 7 + i32.const 5064 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $13 + i32.const 5096 + call $~lib/array/Array#join + local.tee $15 + i32.const 5032 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 942 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 2 + i32.const 2 + i32.const 3 + i32.const 5120 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $11 + i32.const 5144 + call $~lib/array/Array#join + local.tee $4 + i32.const 5168 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 943 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 6 + i32.const 3 + i32.const 9 + i32.const 5232 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $6 + i32.const 5296 + call $~lib/array/Array#join + local.tee $9 + i32.const 6496 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 944 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 2 + i32.const 13 + i32.const 6616 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $8 + i32.const 4248 + call $~lib/array/Array<~lib/string/String | null>#join + local.tee $10 + i32.const 6592 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 945 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 2 + i32.const 19 + i32.const 0 + call $~lib/rt/__allocArray + local.set $1 + local.get $1 + i32.load offset=4 + local.set $34 + local.get $34 + i32.const 0 + call $std/array/Ref#constructor + local.tee $38 + call $~lib/rt/pure/__retain + i32.store + local.get $34 + i32.const 0 + call $~lib/rt/pure/__retain + i32.store offset=4 + local.get $34 + i32.const 0 + call $std/array/Ref#constructor + local.tee $42 + call $~lib/rt/pure/__retain + i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__retain + local.set $34 + local.get $34 + i32.const 4464 + call $~lib/array/Array#join + local.tee $1 + i32.const 6696 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 947 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $14 + call $~lib/rt/pure/__release + local.get $17 + call $~lib/rt/pure/__release + local.get $12 + call $~lib/rt/pure/__release + local.get $13 + call $~lib/rt/pure/__release + local.get $15 + call $~lib/rt/pure/__release + local.get $11 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $10 + call $~lib/rt/pure/__release + local.get $38 + call $~lib/rt/pure/__release + local.get $42 + call $~lib/rt/pure/__release + local.get $34 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + i32.const 0 + i32.const 2 + i32.const 3 + i32.const 6776 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $34 + call $~lib/rt/pure/__retain + local.set $1 + i32.const 1 + i32.const 2 + i32.const 3 + i32.const 6792 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $38 + call $~lib/rt/pure/__retain + local.set $42 + i32.const 2 + i32.const 2 + i32.const 3 + i32.const 6816 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $8 + call $~lib/rt/pure/__retain + local.set $10 + i32.const 4 + i32.const 2 + i32.const 3 + i32.const 6840 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $6 + call $~lib/rt/pure/__retain + local.set $9 + local.get $1 + call $~lib/array/Array#toString + local.tee $4 + i32.const 4248 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 957 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $42 + call $~lib/array/Array#toString + local.tee $11 + i32.const 6592 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 958 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $10 + call $~lib/array/Array#toString + local.tee $15 + i32.const 6872 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 959 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $9 + call $~lib/array/Array#toString + local.tee $13 + i32.const 6896 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 960 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 0 + i32.const 20 + i32.const 6928 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $17 + call $~lib/array/Array#toString + local.tee $12 + i32.const 6952 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 962 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 1 + i32.const 21 + i32.const 6984 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $2 + call $~lib/array/Array#toString + local.tee $14 + i32.const 7008 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 963 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 3 + i32.const 3 + i32.const 16 + i32.const 7048 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $41 + call $~lib/array/Array#toString + local.tee $40 + i32.const 7088 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 964 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 4 + i32.const 3 + i32.const 22 + i32.const 7152 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $39 + call $~lib/array/Array#toString + local.tee $45 + i32.const 7200 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 965 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 7 + i32.const 2 + i32.const 13 + i32.const 7304 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $48 + call $~lib/rt/pure/__retain + local.set $44 + local.get $44 + call $~lib/array/Array<~lib/string/String | null>#toString + local.tee $46 + i32.const 7352 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 969 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 4 + i32.const 2 + i32.const 13 + i32.const 7448 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $47 + call $~lib/array/Array<~lib/string/String | null>#toString + local.tee $43 + i32.const 7480 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 970 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 2 + i32.const 2 + i32.const 10 + i32.const 0 + call $~lib/rt/__allocArray + local.set $49 + local.get $49 + i32.load offset=4 + local.set $50 + local.get $50 + i32.const 2 + i32.const 2 + i32.const 3 + i32.const 7512 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $52 + call $~lib/rt/pure/__retain + i32.store + local.get $50 + i32.const 2 + i32.const 2 + i32.const 3 + i32.const 7536 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $16 + call $~lib/rt/pure/__retain + i32.store offset=4 + local.get $49 + call $~lib/rt/pure/__retain + local.set $54 + local.get $54 + call $~lib/array/Array<~lib/array/Array>#toString + local.tee $50 + i32.const 7560 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 973 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 2 + i32.const 2 + i32.const 23 + i32.const 0 + call $~lib/rt/__allocArray + local.set $49 + local.get $49 + i32.load offset=4 + local.set $53 + local.get $53 + i32.const 2 + i32.const 0 + i32.const 6 + i32.const 7592 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $19 + call $~lib/rt/pure/__retain + i32.store + local.get $53 + i32.const 2 + i32.const 0 + i32.const 6 + i32.const 7616 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $20 + call $~lib/rt/pure/__retain + i32.store offset=4 + local.get $49 + call $~lib/rt/pure/__retain + local.set $55 + local.get $55 + call $~lib/array/Array<~lib/array/Array>#toString + local.tee $53 + i32.const 7560 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 976 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + i32.const 2 + i32.const 25 + i32.const 0 + call $~lib/rt/__allocArray + local.set $49 + local.get $49 + i32.load offset=4 + local.set $0 + local.get $0 + i32.const 1 + i32.const 2 + i32.const 24 + i32.const 0 + call $~lib/rt/__allocArray + local.set $18 + local.get $18 + i32.load offset=4 + local.set $7 + local.get $7 + i32.const 1 + i32.const 2 + i32.const 7 + i32.const 7640 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $23 + call $~lib/rt/pure/__retain + i32.store + local.get $18 + call $~lib/rt/pure/__retain + i32.store + local.get $49 + call $~lib/rt/pure/__retain + local.set $56 + local.get $56 + call $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#toString + local.tee $0 + i32.const 6592 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 979 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $34 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $38 + call $~lib/rt/pure/__release + local.get $42 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $10 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $11 + call $~lib/rt/pure/__release + local.get $15 + call $~lib/rt/pure/__release + local.get $13 + call $~lib/rt/pure/__release + local.get $17 + call $~lib/rt/pure/__release + local.get $12 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $14 + call $~lib/rt/pure/__release + local.get $41 + call $~lib/rt/pure/__release + local.get $40 + call $~lib/rt/pure/__release + local.get $39 + call $~lib/rt/pure/__release + local.get $45 + call $~lib/rt/pure/__release + local.get $48 + call $~lib/rt/pure/__release + local.get $44 + call $~lib/rt/pure/__release + local.get $46 + call $~lib/rt/pure/__release + local.get $47 + call $~lib/rt/pure/__release + local.get $43 + call $~lib/rt/pure/__release + local.get $52 + call $~lib/rt/pure/__release + local.get $16 + call $~lib/rt/pure/__release + local.get $50 + call $~lib/rt/pure/__release + local.get $19 + call $~lib/rt/pure/__release + local.get $20 + call $~lib/rt/pure/__release + local.get $53 + call $~lib/rt/pure/__release + local.get $23 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + global.get $std/array/arr + call $~lib/rt/pure/__release + local.get $54 + call $~lib/rt/pure/__release + local.get $55 + call $~lib/rt/pure/__release + local.get $56 + call $~lib/rt/pure/__release + ) + (func $start (; 301 ;) (type $FUNCSIG$v) + global.get $~lib/started + if + return + else + i32.const 1 + global.set $~lib/started + end + call $start:std/array + ) + (func $~lib/array/Array#__visit_impl (; 302 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 303 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 304 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 305 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 306 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/rt/pure/__visit (; 307 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.lt_u + if + return + end + local.get $0 + i32.const 16 + i32.sub + local.set $2 + block $break|0 + block $case5|0 + block $case4|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $1 + local.set $3 + local.get $3 + i32.const 1 + i32.eq + br_if $case0|0 + local.get $3 + i32.const 2 + i32.eq + br_if $case1|0 + local.get $3 + i32.const 3 + i32.eq + br_if $case2|0 + local.get $3 + i32.const 4 + i32.eq + br_if $case3|0 + local.get $3 + i32.const 5 + i32.eq + br_if $case4|0 + br $case5|0 + end + local.get $2 + call $~lib/rt/pure/decrement + br $break|0 + end + local.get $2 + i32.load offset=4 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 75 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 1 + i32.sub + i32.store offset=4 + local.get $2 + call $~lib/rt/pure/markGray + br $break|0 + end + local.get $2 + call $~lib/rt/pure/scan + br $break|0 + end + local.get $2 + i32.load offset=4 + local.set $3 + local.get $3 + i32.const -268435456 + i32.and + local.get $3 + i32.const 1 + i32.add + i32.const -268435456 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 86 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $3 + i32.const 1 + i32.add + i32.store offset=4 + local.get $3 + i32.const 1879048192 + i32.and + i32.const 0 + i32.ne + if + local.get $2 + call $~lib/rt/pure/scanBlack + end + br $break|0 + end + local.get $2 + call $~lib/rt/pure/collectWhite + br $break|0 + end + i32.const 0 + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 97 + i32.const 24 + call $~lib/builtins/abort + unreachable + end + end + ) + (func $~lib/array/Array<~lib/array/Array>#__visit_impl (; 308 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/array/Array>#__visit_impl (; 309 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/array/Array<~lib/string/String | null>#__visit_impl (; 310 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/array/Array<~lib/string/String>#__visit_impl (; 311 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/array/Array#__visit_impl (; 312 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 313 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 314 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 315 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/array/Array#__visit_impl (; 316 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 317 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 318 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array<~lib/array/Array>#__visit_impl (; 319 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/array/Array<~lib/array/Array>#__visit_impl (; 320 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#__visit_impl (; 321 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/rt/__visit_members (; 322 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + block $block$4$break + block $switch$1$default + block $switch$1$case$27 + block $switch$1$case$26 + block $switch$1$case$25 + block $switch$1$case$24 + block $switch$1$case$23 + block $switch$1$case$22 + block $switch$1$case$21 + block $switch$1$case$19 + block $switch$1$case$18 + block $switch$1$case$17 + block $switch$1$case$16 + block $switch$1$case$15 + block $switch$1$case$14 + block $switch$1$case$12 + block $switch$1$case$11 + block $switch$1$case$10 + block $switch$1$case$9 + block $switch$1$case$8 + block $switch$1$case$5 + block $switch$1$case$4 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$2 $switch$1$case$4 $switch$1$case$8 $switch$1$case$9 $switch$1$case$10 $switch$1$case$11 $switch$1$case$12 $switch$1$case$2 $switch$1$case$14 $switch$1$case$15 $switch$1$case$16 $switch$1$case$17 $switch$1$case$18 $switch$1$case$19 $switch$1$case$2 $switch$1$case$21 $switch$1$case$22 $switch$1$case$23 $switch$1$case$24 $switch$1$case$25 $switch$1$case$26 $switch$1$case$27 $switch$1$default + end + return + end + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/array/Array>#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array>#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/string/String | null>#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/string/String>#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/array/Array>#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/array/Array>#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#__visit_impl + br $block$4$break + end + unreachable + end + local.get $0 + i32.load + local.tee $2 + if + local.get $2 + local.get $1 + call $~lib/rt/pure/__visit + end + return + ) + (func $null (; 323 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 6ae8aa7ff8..106e515f83 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -2094,7 +2094,7 @@ if i32.const 24 i32.const 72 - i32.const 14 + i32.const 22 i32.const 56 call $~lib/builtins/abort unreachable @@ -2247,7 +2247,6 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) i32.const 8 i32.const 0 call $~lib/rt/tlsf/__alloc @@ -2391,10 +2390,10 @@ i32.const -4 i32.const 42 call $~lib/arraybuffer/ArrayBuffer#slice - local.set $3 + local.set $1 local.get $0 call $~lib/rt/pure/__release - local.get $3 + local.get $1 call $~lib/arraybuffer/ArrayBuffer#get:byteLength i32.const 4 i32.ne @@ -2410,10 +2409,10 @@ i32.const 42 i32.const 1073741808 call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 - local.get $3 - call $~lib/rt/pure/__release + local.set $0 local.get $1 + call $~lib/rt/pure/__release + local.get $0 call $~lib/arraybuffer/ArrayBuffer#get:byteLength if i32.const 0 @@ -2423,7 +2422,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.eqz if i32.const 0 @@ -2479,7 +2478,7 @@ call $~lib/rt/pure/__retain i32.const 0 call $~lib/arraybuffer/ArrayBufferView#constructor - local.set $3 + local.set $1 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $5 @@ -2492,7 +2491,7 @@ call $~lib/builtins/abort unreachable end - local.get $3 + local.get $1 call $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Uint8Array> i32.eqz if @@ -2509,8 +2508,8 @@ call $~lib/rt/pure/__retain i32.const 2 call $~lib/arraybuffer/ArrayBufferView#constructor - local.tee $0 - local.get $0 + local.tee $3 + local.get $3 call $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Uint8Array> i32.eqz if @@ -2523,31 +2522,17 @@ end i32.const 1 global.set $~lib/argc - local.get $3 + local.get $1 i32.load - call $~lib/rt/pure/__retain - local.tee $0 - local.set $7 - block $2of2 - block $1of2 - block $outOfRange - global.get $~lib/argc - i32.const 1 - i32.sub - br_table $1of2 $1of2 $2of2 $outOfRange - end - unreachable - end - local.get $0 - call $~lib/arraybuffer/ArrayBuffer#get:byteLength - local.set $4 - end - local.get $0 + local.tee $3 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $4 + local.get $3 local.get $4 call $~lib/dataview/DataView#constructor - local.tee $0 + local.tee $3 local.set $4 - local.get $0 + local.get $3 call $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Uint8Array> i32.eqz if @@ -2560,15 +2545,13 @@ end local.get $2 call $~lib/rt/pure/__release - local.get $1 + local.get $0 call $~lib/rt/pure/__release - local.get $3 + local.get $1 call $~lib/rt/pure/__release local.get $5 call $~lib/rt/pure/__release call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release local.get $4 call $~lib/rt/pure/__release ) diff --git a/tests/compiler/std/arraybuffer.untouched.wat b/tests/compiler/std/arraybuffer.untouched.wat index e69de29bb2..8db4610733 100644 --- a/tests/compiler/std/arraybuffer.untouched.wat +++ b/tests/compiler/std/arraybuffer.untouched.wat @@ -0,0 +1,4505 @@ +(module + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$v (func)) + (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) + (type $FUNCSIG$vii (func (param i32 i32))) + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32))) + (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32))) + (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32))) + (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32))) + (memory $0 1) + (data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") + (data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") + (data (i32.const 112) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") + (data (i32.const 160) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") + (data (i32.const 216) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") + (data (i32.const 264) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00s\00t\00d\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") + (data (i32.const 320) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") + (data (i32.const 376) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") + (data (i32.const 416) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") + (data (i32.const 440) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00~\00l\00i\00b\00/\00d\00a\00t\00a\00v\00i\00e\00w\00.\00t\00s\00") + (data (i32.const 488) "\10\00\00\00\10\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\93\04\00\00\02\00\00\001\04\00\00\02\00\00\001\00\00\00\02\00\00\001\00\00\00\02\00\00\00Q\04\00\00\02\00\00\00Q\00\00\00\02\00\00\00\91\04\00\00\02\00\00\00\91\00\00\00\02\00\00\00\11\05\00\00\02\00\00\00\11\01\00\00\02\00\00\00\91\0c\00\00\02\00\00\00\11\0d\00\00\02\00\00\00\10\00\00\00\00\00\00\00") + (table $0 1 funcref) + (elem (i32.const 0) $null) + (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) + (global $~lib/rt/tlsf/collectLock (mut i32) (i32.const 0)) + (global $~lib/gc/gc.auto (mut i32) (i32.const 1)) + (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) + (global $~lib/rt/pure/CUR (mut i32) (i32.const 0)) + (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) + (global $~lib/rt/pure/END (mut i32) (i32.const 0)) + (global $~lib/argc (mut i32) (i32.const 0)) + (global $~lib/rt/__rtti_base i32 (i32.const 488)) + (global $~lib/heap/__heap_base i32 (i32.const 620)) + (export "memory" (memory $0)) + (start $start) + (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 277 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.set $3 + local.get $3 + i32.const 16 + i32.ge_u + if (result i32) + local.get $3 + i32.const 1073741808 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 279 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $4 + local.get $3 + i32.const 4 + i32.shr_u + local.set $5 + else + i32.const 31 + local.get $3 + i32.clz + i32.sub + local.set $4 + local.get $3 + local.get $4 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $5 + local.get $4 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $4 + end + local.get $4 + i32.const 23 + i32.lt_u + if (result i32) + local.get $5 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 292 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.load offset=16 + local.set $6 + local.get $1 + i32.load offset=20 + local.set $7 + local.get $6 + if + local.get $6 + local.get $7 + i32.store offset=20 + end + local.get $7 + if + local.get $7 + local.get $6 + i32.store offset=16 + end + local.get $1 + local.get $0 + local.set $10 + local.get $4 + local.set $9 + local.get $5 + local.set $8 + local.get $10 + local.get $9 + i32.const 4 + i32.shl + local.get $8 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + i32.eq + if + local.get $0 + local.set $11 + local.get $4 + local.set $10 + local.get $5 + local.set $9 + local.get $7 + local.set $8 + local.get $11 + local.get $10 + i32.const 4 + i32.shl + local.get $9 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $8 + i32.store offset=96 + local.get $7 + i32.eqz + if + local.get $0 + local.set $9 + local.get $4 + local.set $8 + local.get $9 + local.get $8 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + local.set $9 + local.get $0 + local.set $8 + local.get $4 + local.set $11 + local.get $9 + i32.const 1 + local.get $5 + i32.shl + i32.const -1 + i32.xor + i32.and + local.tee $9 + local.set $10 + local.get $8 + local.get $11 + i32.const 2 + i32.shl + i32.add + local.get $10 + i32.store offset=4 + local.get $9 + i32.eqz + if + local.get $0 + local.get $0 + i32.load + i32.const 1 + local.get $4 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + end + end + end + ) + (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + local.get $1 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 205 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 207 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.set $3 + local.get $3 + i32.const 16 + i32.add + local.get $3 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $4 + local.get $4 + i32.load + local.set $5 + local.get $5 + i32.const 1 + i32.and + if + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $5 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $3 + local.get $3 + i32.const 1073741808 + i32.lt_u + if + local.get $0 + local.get $4 + call $~lib/rt/tlsf/removeBlock + local.get $1 + local.get $2 + i32.const 3 + i32.and + local.get $3 + i32.or + local.tee $2 + i32.store + local.get $1 + local.set $6 + local.get $6 + i32.const 16 + i32.add + local.get $6 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $4 + local.get $4 + i32.load + local.set $5 + end + end + local.get $2 + i32.const 2 + i32.and + if + local.get $1 + local.set $6 + local.get $6 + i32.const 4 + i32.sub + i32.load + local.set $6 + local.get $6 + i32.load + local.set $3 + local.get $3 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 228 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $7 + local.get $7 + i32.const 1073741808 + i32.lt_u + if + local.get $0 + local.get $6 + call $~lib/rt/tlsf/removeBlock + local.get $6 + local.get $3 + i32.const 3 + i32.and + local.get $7 + i32.or + local.tee $2 + i32.store + local.get $6 + local.set $1 + end + end + local.get $4 + local.get $5 + i32.const 2 + i32.or + i32.store + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.set $8 + local.get $8 + i32.const 16 + i32.ge_u + if (result i32) + local.get $8 + i32.const 1073741808 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 243 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 16 + i32.add + local.get $8 + i32.add + local.get $4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 244 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 4 + i32.sub + local.get $1 + i32.store + local.get $8 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $9 + local.get $8 + i32.const 4 + i32.shr_u + local.set $10 + else + i32.const 31 + local.get $8 + i32.clz + i32.sub + local.set $9 + local.get $8 + local.get $9 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $10 + local.get $9 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $9 + end + local.get $9 + i32.const 23 + i32.lt_u + if (result i32) + local.get $10 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 260 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $7 + local.get $9 + local.set $3 + local.get $10 + local.set $6 + local.get $7 + local.get $3 + i32.const 4 + i32.shl + local.get $6 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $11 + local.get $1 + i32.const 0 + i32.store offset=16 + local.get $1 + local.get $11 + i32.store offset=20 + local.get $11 + if + local.get $11 + local.get $1 + i32.store offset=16 + end + local.get $0 + local.set $12 + local.get $9 + local.set $7 + local.get $10 + local.set $3 + local.get $1 + local.set $6 + local.get $12 + local.get $7 + i32.const 4 + i32.shl + local.get $3 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store offset=96 + local.get $0 + local.get $0 + i32.load + i32.const 1 + local.get $9 + i32.shl + i32.or + i32.store + local.get $0 + local.set $13 + local.get $9 + local.set $12 + local.get $0 + local.set $3 + local.get $9 + local.set $6 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + i32.const 1 + local.get $10 + i32.shl + i32.or + local.set $7 + local.get $13 + local.get $12 + i32.const 2 + i32.shl + i32.add + local.get $7 + i32.store offset=4 + ) + (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $1 + local.get $2 + i32.le_u + if (result i32) + local.get $1 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + if (result i32) + local.get $2 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 386 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $3 + local.get $3 + i32.load offset=1568 + local.set $4 + i32.const 0 + local.set $5 + local.get $4 + if + local.get $1 + local.get $4 + i32.const 16 + i32.add + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 396 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 16 + i32.sub + local.get $4 + i32.eq + if + local.get $1 + i32.const 16 + i32.sub + local.set $1 + local.get $4 + i32.load + local.set $5 + else + nop + end + else + local.get $1 + local.get $0 + i32.const 1572 + i32.add + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 408 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + end + local.get $2 + local.get $1 + i32.sub + local.set $6 + local.get $6 + i32.const 48 + i32.lt_u + if + i32.const 0 + return + end + local.get $6 + i32.const 16 + i32.const 1 + i32.shl + i32.sub + local.set $7 + local.get $1 + local.set $8 + local.get $8 + local.get $7 + i32.const 1 + i32.or + local.get $5 + i32.const 2 + i32.and + i32.or + i32.store + local.get $8 + i32.const 0 + i32.store offset=16 + local.get $8 + i32.const 0 + i32.store offset=20 + local.get $1 + local.get $6 + i32.add + i32.const 16 + i32.sub + local.set $4 + local.get $4 + i32.const 0 + i32.const 2 + i32.or + i32.store + local.get $0 + local.set $9 + local.get $4 + local.set $3 + local.get $9 + local.get $3 + i32.store offset=1568 + local.get $0 + local.get $8 + call $~lib/rt/tlsf/insertBlock + i32.const 1 + ) + (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $~lib/heap/__heap_base + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.set $0 + memory.size + local.set $1 + local.get $0 + i32.const 1572 + i32.add + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $2 + local.get $2 + local.get $1 + i32.gt_s + if (result i32) + local.get $2 + local.get $1 + i32.sub + memory.grow + i32.const 0 + i32.lt_s + else + i32.const 0 + end + if + unreachable + end + local.get $0 + local.set $3 + local.get $3 + i32.const 0 + i32.store + local.get $3 + local.set $5 + i32.const 0 + local.set $4 + local.get $5 + local.get $4 + i32.store offset=1568 + block $break|0 + i32.const 0 + local.set $5 + loop $loop|0 + local.get $5 + i32.const 23 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $3 + local.set $7 + local.get $5 + local.set $6 + i32.const 0 + local.set $4 + local.get $7 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store offset=4 + block $break|1 + i32.const 0 + local.set $7 + loop $loop|1 + local.get $7 + i32.const 16 + i32.lt_u + i32.eqz + br_if $break|1 + local.get $3 + local.set $9 + local.get $5 + local.set $8 + local.get $7 + local.set $6 + i32.const 0 + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $6 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store offset=96 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + local.get $0 + i32.const 1572 + i32.add + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + memory.size + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + drop + local.get $3 + global.set $~lib/rt/tlsf/ROOT + ) + (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 1073741808 + i32.ge_u + if + i32.const 176 + i32.const 128 + i32.const 457 + i32.const 29 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.tee $1 + i32.const 16 + local.tee $2 + local.get $1 + local.get $2 + i32.gt_u + select + ) + (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $1 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $2 + local.get $1 + i32.const 4 + i32.shr_u + local.set $3 + else + local.get $1 + i32.const 536870904 + i32.lt_u + if (result i32) + local.get $1 + i32.const 1 + i32.const 27 + local.get $1 + i32.clz + i32.sub + i32.shl + i32.add + i32.const 1 + i32.sub + else + local.get $1 + end + local.set $4 + i32.const 31 + local.get $4 + i32.clz + i32.sub + local.set $2 + local.get $4 + local.get $2 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $3 + local.get $2 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $2 + end + local.get $2 + i32.const 23 + i32.lt_u + if (result i32) + local.get $3 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 338 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $5 + local.get $2 + local.set $4 + local.get $5 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + i32.const 0 + i32.const -1 + i32.xor + local.get $3 + i32.shl + i32.and + local.set $6 + i32.const 0 + local.set $7 + local.get $6 + i32.eqz + if + local.get $0 + i32.load + i32.const 0 + i32.const -1 + i32.xor + local.get $2 + i32.const 1 + i32.add + i32.shl + i32.and + local.set $5 + local.get $5 + i32.eqz + if + i32.const 0 + local.set $7 + else + local.get $5 + i32.ctz + local.set $2 + local.get $0 + local.set $8 + local.get $2 + local.set $4 + local.get $8 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + local.set $6 + local.get $6 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 351 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $9 + local.get $2 + local.set $8 + local.get $6 + i32.ctz + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $4 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $7 + end + else + local.get $0 + local.set $9 + local.get $2 + local.set $8 + local.get $6 + i32.ctz + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $4 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $7 + end + local.get $7 + ) + (func $~lib/rt/pure/markGray (; 11 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 268435456 + i32.ne + if + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 268435456 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 2 + call $~lib/rt/__visit_members + end + ) + (func $~lib/rt/tlsf/freeBlock (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $2 + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $1 + call $~lib/rt/tlsf/insertBlock + local.get $1 + call $~lib/rt/rtrace/onfree + ) + (func $~lib/rt/pure/scanBlack (; 13 ;) (type $FUNCSIG$vi) (param $0 i32) + local.get $0 + local.get $0 + i32.load offset=4 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 0 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 4 + call $~lib/rt/__visit_members + ) + (func $~lib/rt/pure/scan (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 268435456 + i32.eq + if + local.get $1 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + if + local.get $0 + call $~lib/rt/pure/scanBlack + else + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 536870912 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 3 + call $~lib/rt/__visit_members + end + end + ) + (func $~lib/rt/pure/collectWhite (; 15 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 536870912 + i32.eq + if (result i32) + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + else + i32.const 0 + end + if + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 0 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 5 + call $~lib/rt/__visit_members + global.get $~lib/rt/tlsf/ROOT + local.get $0 + call $~lib/rt/tlsf/freeBlock + end + ) + (func $~lib/rt/pure/__collect (; 16 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $~lib/rt/pure/ROOTS + local.set $0 + local.get $0 + local.set $1 + block $break|0 + local.get $1 + local.set $2 + global.get $~lib/rt/pure/CUR + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + i32.load offset=4 + local.set $5 + local.get $5 + i32.const 1879048192 + i32.and + i32.const 805306368 + i32.eq + if (result i32) + local.get $5 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + else + i32.const 0 + end + if + local.get $4 + call $~lib/rt/pure/markGray + local.get $1 + local.get $4 + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $1 + else + local.get $5 + i32.const 1879048192 + i32.and + i32.const 0 + i32.eq + if (result i32) + local.get $5 + i32.const 268435455 + i32.and + i32.eqz + else + i32.const 0 + end + if + global.get $~lib/rt/tlsf/ROOT + local.get $4 + call $~lib/rt/tlsf/freeBlock + else + local.get $4 + local.get $5 + i32.const -2147483648 + i32.const -1 + i32.xor + i32.and + i32.store offset=4 + end + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + local.get $1 + global.set $~lib/rt/pure/CUR + block $break|1 + local.get $0 + local.set $5 + loop $loop|1 + local.get $5 + local.get $1 + i32.lt_u + i32.eqz + br_if $break|1 + local.get $5 + i32.load + call $~lib/rt/pure/scan + local.get $5 + i32.const 4 + i32.add + local.set $5 + br $loop|1 + end + unreachable + end + block $break|2 + local.get $0 + local.set $5 + loop $loop|2 + local.get $5 + local.get $1 + i32.lt_u + i32.eqz + br_if $break|2 + local.get $5 + i32.load + local.set $4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const -2147483648 + i32.const -1 + i32.xor + i32.and + i32.store offset=4 + local.get $4 + call $~lib/rt/pure/collectWhite + local.get $5 + i32.const 4 + i32.add + local.set $5 + br $loop|2 + end + unreachable + end + local.get $0 + global.set $~lib/rt/pure/CUR + ) + (func $~lib/rt/tlsf/growMemory (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $1 + i32.const 536870904 + i32.lt_u + if + local.get $1 + i32.const 1 + i32.const 27 + local.get $1 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + i32.add + local.set $1 + end + memory.size + local.set $2 + local.get $1 + i32.const 16 + local.get $2 + i32.const 16 + i32.shl + i32.const 16 + i32.sub + local.get $0 + local.set $3 + local.get $3 + i32.load offset=1568 + i32.ne + i32.shl + i32.add + local.set $1 + local.get $1 + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $4 + local.get $2 + local.tee $3 + local.get $4 + local.tee $5 + local.get $3 + local.get $5 + i32.gt_s + select + local.set $6 + local.get $6 + memory.grow + i32.const 0 + i32.lt_s + if + local.get $4 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + memory.size + local.set $7 + local.get $0 + local.get $2 + i32.const 16 + i32.shl + local.get $7 + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + drop + ) + (func $~lib/rt/tlsf/prepareBlock (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + i32.const 15 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 365 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.get $2 + i32.sub + local.set $4 + local.get $4 + i32.const 32 + i32.ge_u + if + local.get $1 + local.get $2 + local.get $3 + i32.const 2 + i32.and + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.get $2 + i32.add + local.set $5 + local.get $5 + local.get $4 + i32.const 16 + i32.sub + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $5 + call $~lib/rt/tlsf/insertBlock + else + local.get $1 + local.get $3 + i32.const 1 + i32.const -1 + i32.xor + i32.and + i32.store + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + i32.load + i32.const 2 + i32.const -1 + i32.xor + i32.and + i32.store + end + ) + (func $~lib/rt/tlsf/allocateBlock (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/tlsf/collectLock + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 486 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/rt/tlsf/prepareSize + local.set $2 + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + global.get $~lib/gc/gc.auto + if + i32.const 1 + global.set $~lib/rt/tlsf/collectLock + call $~lib/rt/pure/__collect + i32.const 0 + global.set $~lib/rt/tlsf/collectLock + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + local.get $0 + local.get $2 + call $~lib/rt/tlsf/growMemory + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 498 + i32.const 19 + call $~lib/builtins/abort + unreachable + end + end + else + local.get $0 + local.get $2 + call $~lib/rt/tlsf/growMemory + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 503 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + end + end + local.get $3 + i32.load + i32.const -4 + i32.and + local.get $2 + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 506 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $0 + local.get $3 + call $~lib/rt/tlsf/removeBlock + local.get $0 + local.get $3 + local.get $2 + call $~lib/rt/tlsf/prepareBlock + local.get $3 + call $~lib/rt/rtrace/onalloc + local.get $3 + ) + (func $~lib/rt/tlsf/__alloc (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/tlsf/ROOT + local.set $2 + local.get $2 + i32.eqz + if + call $~lib/rt/tlsf/initializeRoot + global.get $~lib/rt/tlsf/ROOT + local.set $2 + end + local.get $2 + local.get $0 + call $~lib/rt/tlsf/allocateBlock + local.set $3 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 16 + i32.add + ) + (func $~lib/memory/memory.fill (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + block $~lib/util/memory/memset|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 1 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 2 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.get $4 + i32.store8 + local.get $5 + i32.const 2 + i32.add + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 2 + i32.sub + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 3 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 6 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 3 + i32.add + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 8 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + i32.const 0 + local.get $5 + i32.sub + i32.const 3 + i32.and + local.set $6 + local.get $5 + local.get $6 + i32.add + local.set $5 + local.get $3 + local.get $6 + i32.sub + local.set $3 + local.get $3 + i32.const -4 + i32.and + local.set $3 + i32.const -1 + i32.const 255 + i32.div_u + local.get $4 + i32.const 255 + i32.and + i32.mul + local.set $7 + local.get $5 + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.get $7 + i32.store + local.get $3 + i32.const 8 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 4 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 8 + i32.add + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 12 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 8 + i32.sub + local.get $7 + i32.store + local.get $3 + i32.const 24 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 12 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 16 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 20 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 24 + i32.add + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 28 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 24 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 20 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 16 + i32.sub + local.get $7 + i32.store + i32.const 24 + local.get $5 + i32.const 4 + i32.and + i32.add + local.set $6 + local.get $5 + local.get $6 + i32.add + local.set $5 + local.get $3 + local.get $6 + i32.sub + local.set $3 + local.get $7 + i64.extend_i32_u + local.get $7 + i64.extend_i32_u + i64.const 32 + i64.shl + i64.or + local.set $8 + block $break|0 + loop $continue|0 + local.get $3 + i32.const 32 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $5 + local.get $8 + i64.store + local.get $5 + i32.const 8 + i32.add + local.get $8 + i64.store + local.get $5 + i32.const 16 + i32.add + local.get $8 + i64.store + local.get $5 + i32.const 24 + i32.add + local.get $8 + i64.store + local.get $3 + i32.const 32 + i32.sub + local.set $3 + local.get $5 + i32.const 32 + i32.add + local.set $5 + br $continue|0 + end + unreachable + end + end + ) + (func $~lib/rt/pure/increment (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const -268435456 + i32.and + local.get $1 + i32.const 1 + i32.add + i32.const -268435456 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 104 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + call $~lib/rt/rtrace/onincrement + local.get $0 + i32.load + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 107 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/rt/pure/__retain (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.gt_u + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/pure/increment + end + local.get $0 + ) + (func $~lib/arraybuffer/ArrayBuffer#constructor (; 24 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + i32.const 1073741808 + i32.gt_u + if + i32.const 24 + i32.const 72 + i32.const 52 + i32.const 42 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $2 + local.get $2 + i32.const 0 + local.get $1 + call $~lib/memory/memory.fill + local.get $2 + call $~lib/rt/pure/__retain + ) + (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 16 + i32.sub + i32.load offset=12 + ) + (func $~lib/util/memory/memcpy (; 26 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + loop $continue|0 + local.get $2 + if (result i32) + local.get $1 + i32.const 3 + i32.and + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $0 + i32.const 3 + i32.and + i32.const 0 + i32.eq + if + block $break|1 + loop $continue|1 + local.get $2 + i32.const 16 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 8 + i32.add + i32.load + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 12 + i32.add + i32.load + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|1 + end + unreachable + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.set $0 + local.get $1 + i32.const 4 + i32.add + local.set $1 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load16_u + i32.store16 + local.get $0 + i32.const 2 + i32.add + local.set $0 + local.get $1 + i32.const 2 + i32.add + local.set $1 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + return + end + local.get $2 + i32.const 32 + i32.ge_u + if + block $break|2 + block $case2|2 + block $case1|2 + block $case0|2 + local.get $0 + i32.const 3 + i32.and + local.set $5 + local.get $5 + i32.const 1 + i32.eq + br_if $case0|2 + local.get $5 + i32.const 2 + i32.eq + br_if $case1|2 + local.get $5 + i32.const 3 + i32.eq + br_if $case2|2 + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 3 + i32.sub + local.set $2 + block $break|3 + loop $continue|3 + local.get $2 + i32.const 17 + i32.ge_u + i32.eqz + br_if $break|3 + local.get $1 + i32.const 1 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 5 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 9 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 13 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|3 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + block $break|4 + loop $continue|4 + local.get $2 + i32.const 18 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $1 + i32.const 2 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 6 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 10 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 14 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|4 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + block $break|5 + loop $continue|5 + local.get $2 + i32.const 19 + i32.ge_u + i32.eqz + br_if $break|5 + local.get $1 + i32.const 3 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 7 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 11 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 15 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|5 + end + unreachable + end + br $break|2 + end + end + local.get $2 + i32.const 16 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + ) + (func $~lib/memory/memory.copy (; 27 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + local.get $4 + i32.eq + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $4 + local.get $3 + i32.add + local.get $5 + i32.le_u + if (result i32) + i32.const 1 + else + local.get $5 + local.get $3 + i32.add + local.get $4 + i32.le_u + end + if + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $4 + i32.lt_u + if + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|0 + loop $continue|0 + local.get $5 + i32.const 7 + i32.and + i32.eqz + br_if $break|0 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $3 + i32.const 1 + i32.sub + local.set $3 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + br $continue|0 + end + unreachable + end + block $break|1 + loop $continue|1 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $5 + local.get $4 + i64.load + i64.store + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + i32.const 8 + i32.add + local.set $5 + local.get $4 + i32.const 8 + i32.add + local.set $4 + br $continue|1 + end + unreachable + end + end + block $break|2 + loop $continue|2 + local.get $3 + i32.eqz + br_if $break|2 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + local.get $3 + i32.const 1 + i32.sub + local.set $3 + br $continue|2 + end + unreachable + end + else + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|3 + loop $continue|3 + local.get $5 + local.get $3 + i32.add + i32.const 7 + i32.and + i32.eqz + br_if $break|3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + local.get $3 + i32.add + local.get $4 + local.get $3 + i32.add + i64.load + i64.store + br $continue|4 + end + unreachable + end + end + block $break|5 + loop $continue|5 + local.get $3 + i32.eqz + br_if $break|5 + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|5 + end + unreachable + end + end + end + ) + (func $~lib/arraybuffer/ArrayBuffer#slice (; 28 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $3 + local.get $1 + i32.const 0 + i32.lt_s + if (result i32) + local.get $3 + local.get $1 + i32.add + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + else + local.get $1 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + end + local.set $1 + local.get $2 + i32.const 0 + i32.lt_s + if (result i32) + local.get $3 + local.get $2 + i32.add + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + else + local.get $2 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + end + local.set $2 + local.get $2 + local.get $1 + i32.sub + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.set $6 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $0 + local.get $1 + i32.add + local.get $6 + call $~lib/memory/memory.copy + local.get $7 + call $~lib/rt/pure/__retain + ) + (func $~lib/rt/__typeinfo (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + global.get $~lib/rt/__rtti_base + local.set $1 + local.get $0 + local.get $1 + i32.load + i32.gt_u + if + i32.const 336 + i32.const 392 + i32.const 22 + i32.const 27 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 4 + i32.add + local.get $0 + i32.const 8 + i32.mul + i32.add + i32.load + ) + (func $~lib/rt/tlsf/__free (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 593 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 594 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/tlsf/ROOT + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/tlsf/freeBlock + ) + (func $~lib/rt/pure/growRoots (; 31 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $~lib/rt/pure/ROOTS + local.set $0 + global.get $~lib/rt/pure/CUR + local.get $0 + i32.sub + local.set $1 + local.get $1 + i32.const 2 + i32.mul + local.tee $2 + i32.const 64 + i32.const 2 + i32.shl + local.tee $3 + local.get $2 + local.get $3 + i32.gt_u + select + local.set $4 + local.get $4 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $5 + i32.const 16 + i32.sub + call $~lib/rt/rtrace/onfree + local.get $5 + local.get $0 + local.get $1 + call $~lib/memory/memory.copy + local.get $0 + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/rtrace/onalloc + local.get $0 + call $~lib/rt/tlsf/__free + end + local.get $5 + global.set $~lib/rt/pure/ROOTS + local.get $5 + local.get $1 + i32.add + global.set $~lib/rt/pure/CUR + local.get $5 + local.get $4 + i32.add + global.set $~lib/rt/pure/END + ) + (func $~lib/rt/pure/appendRoot (; 32 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + global.get $~lib/rt/pure/CUR + local.set $1 + local.get $1 + global.get $~lib/rt/pure/END + i32.ge_u + if + call $~lib/rt/pure/growRoots + global.get $~lib/rt/pure/CUR + local.set $1 + end + local.get $1 + local.get $0 + i32.store + local.get $1 + i32.const 4 + i32.add + global.set $~lib/rt/pure/CUR + ) + (func $~lib/rt/pure/decrement (; 33 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 268435455 + i32.and + local.set $2 + local.get $0 + call $~lib/rt/rtrace/ondecrement + local.get $0 + i32.load + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 115 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + i32.eq + if + local.get $0 + i32.const 16 + i32.add + i32.const 1 + call $~lib/rt/__visit_members + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + if + global.get $~lib/rt/tlsf/ROOT + local.get $0 + call $~lib/rt/tlsf/freeBlock + else + local.get $0 + i32.const -2147483648 + i32.const 0 + i32.or + i32.const 0 + i32.or + i32.store offset=4 + end + else + local.get $2 + i32.const 0 + i32.gt_u + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 124 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=8 + call $~lib/rt/__typeinfo + i32.const 16 + i32.and + i32.eqz + if + local.get $0 + i32.const -2147483648 + i32.const 805306368 + i32.or + local.get $2 + i32.const 1 + i32.sub + i32.or + i32.store offset=4 + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + if + local.get $0 + call $~lib/rt/pure/appendRoot + end + else + local.get $0 + local.get $1 + i32.const 268435455 + i32.const -1 + i32.xor + i32.and + local.get $2 + i32.const 1 + i32.sub + i32.or + i32.store offset=4 + end + end + ) + (func $~lib/rt/pure/__release (; 34 ;) (type $FUNCSIG$vi) (param $0 i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.gt_u + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/pure/decrement + end + ) + (func $~lib/arraybuffer/ArrayBuffer.isView<~lib/array/Array> (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + if + nop + end + i32.const 0 + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + ) + (func $~lib/arraybuffer/ArrayBuffer.isView (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + if + nop + end + i32.const 0 + ) + (func $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Uint8Array> (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + if + i32.const 1 + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + return + end + i32.const 0 + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + ) + (func $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Int32Array> (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + if + i32.const 1 + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + return + end + i32.const 0 + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + ) + (func $~lib/arraybuffer/ArrayBuffer.isView<~lib/dataview/DataView> (; 39 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + if + i32.const 1 + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + return + end + i32.const 0 + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + ) + (func $~lib/arraybuffer/ArrayBufferView#constructor (; 40 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.const 1073741808 + local.get $2 + i32.shr_u + i32.gt_u + if + i32.const 24 + i32.const 72 + i32.const 22 + i32.const 56 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $2 + i32.shl + local.tee $1 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $3 + local.get $3 + i32.const 0 + local.get $1 + call $~lib/memory/memory.fill + local.get $0 + i32.eqz + if + i32.const 12 + i32.const 2 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $0 + end + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + i32.load + local.tee $4 + i32.ne + if + local.get $5 + call $~lib/rt/pure/__retain + drop + local.get $4 + call $~lib/rt/pure/__release + end + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + ) + (func $~lib/typedarray/Uint8Array#constructor (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 5 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 0 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/rt/__allocArray (; 42 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + i32.const 16 + local.get $2 + call $~lib/rt/tlsf/__alloc + local.set $4 + local.get $0 + local.get $1 + i32.shl + local.set $5 + local.get $5 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $4 + local.get $6 + call $~lib/rt/pure/__retain + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $4 + local.get $5 + i32.store offset=8 + local.get $4 + local.get $0 + i32.store offset=12 + local.get $3 + if + local.get $6 + local.get $3 + local.get $5 + call $~lib/memory/memory.copy + end + local.get $4 + ) + (func $~lib/typedarray/Int32Array#constructor (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 9 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 2 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/dataview/DataView#constructor (; 44 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $3 + i32.const 1073741808 + i32.gt_u + local.get $2 + local.get $3 + i32.add + local.get $1 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.gt_u + i32.or + if + local.get $1 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 456 + i32.const 21 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.eqz + if + i32.const 12 + i32.const 15 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $0 + end + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + local.tee $4 + local.get $1 + local.tee $5 + local.get $4 + i32.load + local.tee $4 + i32.ne + if + local.get $5 + call $~lib/rt/pure/__retain + drop + local.get $4 + call $~lib/rt/pure/__release + end + local.get $5 + i32.store + local.get $1 + local.get $2 + i32.add + local.set $6 + local.get $0 + local.get $6 + i32.store offset=4 + local.get $0 + local.get $3 + i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__release + local.get $0 + ) + (func $~lib/dataview/DataView#constructor|trampoline (; 45 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + block $2of2 + block $1of2 + block $0of2 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of2 $1of2 $2of2 $outOfRange + end + unreachable + end + i32.const 0 + local.set $2 + end + local.get $1 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $3 + end + local.get $0 + local.get $1 + local.get $2 + local.get $3 + call $~lib/dataview/DataView#constructor + ) + (func $start:std/arraybuffer (; 46 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + i32.const 0 + i32.const 8 + call $~lib/arraybuffer/ArrayBuffer#constructor + local.set $0 + local.get $0 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 4 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.const 1073741808 + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $1 + local.get $1 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 8 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 9 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + i32.const 1073741808 + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + local.set $1 + local.get $1 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 7 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 13 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const -1 + i32.const 1073741808 + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + local.set $1 + local.get $1 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 17 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + i32.const 3 + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + local.set $1 + local.get $1 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 21 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + i32.const -1 + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + local.set $1 + local.get $1 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 25 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const -3 + i32.const -1 + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + local.set $1 + local.get $1 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 29 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const -4 + i32.const 42 + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + local.set $1 + local.get $1 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 33 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 42 + i32.const 1073741808 + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + local.set $1 + local.get $1 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 37 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 38 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/arraybuffer/ArrayBuffer.isView<~lib/array/Array> + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 40 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/arraybuffer/ArrayBuffer.isView + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 41 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Uint8Array> + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 42 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Int32Array> + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 43 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/arraybuffer/ArrayBuffer.isView<~lib/dataview/DataView> + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 44 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8Array#constructor + local.set $2 + i32.const 2 + i32.const 2 + i32.const 3 + i32.const 432 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $4 + call $~lib/arraybuffer/ArrayBuffer.isView<~lib/array/Array> + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 47 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Uint8Array> + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 48 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#constructor + local.tee $3 + call $~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Int32Array> + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 49 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + i32.const 0 + local.get $2 + i32.load + i32.const 0 + i32.const 0 + call $~lib/dataview/DataView#constructor|trampoline + local.tee $5 + call $~lib/arraybuffer/ArrayBuffer.isView<~lib/dataview/DataView> + i32.eqz + if + i32.const 0 + i32.const 280 + i32.const 50 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + ) + (func $start (; 47 ;) (type $FUNCSIG$v) + call $start:std/arraybuffer + ) + (func $~lib/array/Array#__visit_impl (; 48 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/rt/pure/__visit (; 49 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.lt_u + if + return + end + local.get $0 + i32.const 16 + i32.sub + local.set $2 + block $break|0 + block $case5|0 + block $case4|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $1 + local.set $3 + local.get $3 + i32.const 1 + i32.eq + br_if $case0|0 + local.get $3 + i32.const 2 + i32.eq + br_if $case1|0 + local.get $3 + i32.const 3 + i32.eq + br_if $case2|0 + local.get $3 + i32.const 4 + i32.eq + br_if $case3|0 + local.get $3 + i32.const 5 + i32.eq + br_if $case4|0 + br $case5|0 + end + local.get $2 + call $~lib/rt/pure/decrement + br $break|0 + end + local.get $2 + i32.load offset=4 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 75 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 1 + i32.sub + i32.store offset=4 + local.get $2 + call $~lib/rt/pure/markGray + br $break|0 + end + local.get $2 + call $~lib/rt/pure/scan + br $break|0 + end + local.get $2 + i32.load offset=4 + local.set $3 + local.get $3 + i32.const -268435456 + i32.and + local.get $3 + i32.const 1 + i32.add + i32.const -268435456 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 86 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $3 + i32.const 1 + i32.add + i32.store offset=4 + local.get $3 + i32.const 1879048192 + i32.and + i32.const 0 + i32.ne + if + local.get $2 + call $~lib/rt/pure/scanBlack + end + br $break|0 + end + local.get $2 + call $~lib/rt/pure/collectWhite + br $break|0 + end + i32.const 0 + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 97 + i32.const 24 + call $~lib/builtins/abort + unreachable + end + end + ) + (func $~lib/rt/__visit_members (; 50 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + block $block$4$break + block $switch$1$default + block $switch$1$case$5 + block $switch$1$case$4 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$default + end + return + end + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + unreachable + end + local.get $0 + i32.load + local.tee $2 + if + local.get $2 + local.get $1 + call $~lib/rt/pure/__visit + end + return + ) + (func $null (; 51 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/std/libm.untouched.wat b/tests/compiler/std/libm.untouched.wat index e69de29bb2..7468136d4d 100644 --- a/tests/compiler/std/libm.untouched.wat +++ b/tests/compiler/std/libm.untouched.wat @@ -0,0 +1,12546 @@ +(module + (type $FUNCSIG$dd (func (param f64) (result f64))) + (type $FUNCSIG$id (func (param f64) (result i32))) + (type $FUNCSIG$ddd (func (param f64 f64) (result f64))) + (type $FUNCSIG$idj (func (param f64 i64) (result i32))) + (type $FUNCSIG$ddi (func (param f64 i32) (result f64))) + (type $FUNCSIG$dddi (func (param f64 f64 i32) (result f64))) + (type $FUNCSIG$ff (func (param f32) (result f32))) + (type $FUNCSIG$if (func (param f32) (result i32))) + (type $FUNCSIG$fff (func (param f32 f32) (result f32))) + (type $FUNCSIG$ffi (func (param f32 i32) (result f32))) + (type $FUNCSIG$v (func)) + (memory $0 1) + (data (i32.const 8) "\c0\00\00\00\01\00\00\00\00\00\00\00\c0\00\00\00n\83\f9\a2\00\00\00\00\d1W\'\fc)\15DN\99\95b\db\c0\dd4\f5\abcQ\feA\90C<:n$\b7a\c5\bb\de\ea.I\06\e0\d2MB\1c\eb\1d\fe\1c\92\d1\t\f55\82\e8>\a7)\b1&p\9c\e9\84D\bb.9\d6\919A~_\b4\8b_\84\9c\f49S\83\ff\97\f8\1f;(\f9\bd\8b\11/\ef\0f\98\05\de\cf~6m\1fm\nZf?FO\b7\t\cb\'\c7\ba\'u-\ea_\9e\f79\07={\f1\e5\eb\b1_\fbk\ea\92R\8aF0\03V\08]\8d\1f \bc\cf\f0\abk{\fca\91\e3\a9\1d6\f4\9a_\85\99e\08\1b\e6^\80\d8\ff\8d@h\a0\14W\15\06\061\'sM") + (data (i32.const 216) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\18\00\00\00\18\00\00\00\c0\00\00\00\18\00\00\00") + (data (i32.const 248) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00)\15DNn\83\f9\a2\c0\dd4\f5\d1W\'\fcA\90C<\99\95b\dba\c5\bb\de\abcQ\fe") + (data (i32.const 296) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\08\01\00\00\08\01\00\00 \00\00\00\04\00\00\00") + (table $0 1 funcref) + (elem (i32.const 0) $null) + (global $~lib/math/NativeMath.E f64 (f64.const 2.718281828459045)) + (global $../../lib/libm/assembly/libm/E f64 (f64.const 2.718281828459045)) + (global $~lib/math/NativeMath.LN10 f64 (f64.const 2.302585092994046)) + (global $../../lib/libm/assembly/libm/LN10 f64 (f64.const 2.302585092994046)) + (global $~lib/math/NativeMath.LN2 f64 (f64.const 0.6931471805599453)) + (global $../../lib/libm/assembly/libm/LN2 f64 (f64.const 0.6931471805599453)) + (global $~lib/math/NativeMath.LOG10E f64 (f64.const 0.4342944819032518)) + (global $../../lib/libm/assembly/libm/LOG10E f64 (f64.const 0.4342944819032518)) + (global $~lib/math/NativeMath.LOG2E f64 (f64.const 1.4426950408889634)) + (global $../../lib/libm/assembly/libm/LOG2E f64 (f64.const 1.4426950408889634)) + (global $~lib/math/NativeMath.PI f64 (f64.const 3.141592653589793)) + (global $../../lib/libm/assembly/libm/PI f64 (f64.const 3.141592653589793)) + (global $~lib/math/NativeMath.SQRT1_2 f64 (f64.const 0.7071067811865476)) + (global $../../lib/libm/assembly/libm/SQRT1_2 f64 (f64.const 0.7071067811865476)) + (global $~lib/math/NativeMath.SQRT2 f64 (f64.const 1.4142135623730951)) + (global $../../lib/libm/assembly/libm/SQRT2 f64 (f64.const 1.4142135623730951)) + (global $~lib/math/NativeMathf.E f32 (f32.const 2.7182817459106445)) + (global $../../lib/libm/assembly/libmf/E f32 (f32.const 2.7182817459106445)) + (global $~lib/math/NativeMathf.LN10 f32 (f32.const 2.3025851249694824)) + (global $../../lib/libm/assembly/libmf/LN10 f32 (f32.const 2.3025851249694824)) + (global $~lib/math/NativeMathf.LN2 f32 (f32.const 0.6931471824645996)) + (global $../../lib/libm/assembly/libmf/LN2 f32 (f32.const 0.6931471824645996)) + (global $~lib/math/NativeMathf.LOG10E f32 (f32.const 0.4342944920063019)) + (global $../../lib/libm/assembly/libmf/LOG10E f32 (f32.const 0.4342944920063019)) + (global $~lib/math/NativeMathf.LOG2E f32 (f32.const 1.4426950216293335)) + (global $../../lib/libm/assembly/libmf/LOG2E f32 (f32.const 1.4426950216293335)) + (global $~lib/math/NativeMathf.PI f32 (f32.const 3.1415927410125732)) + (global $../../lib/libm/assembly/libmf/PI f32 (f32.const 3.1415927410125732)) + (global $~lib/math/NativeMathf.SQRT1_2 f32 (f32.const 0.7071067690849304)) + (global $../../lib/libm/assembly/libmf/SQRT1_2 f32 (f32.const 0.7071067690849304)) + (global $~lib/math/NativeMathf.SQRT2 f32 (f32.const 1.4142135381698608)) + (global $../../lib/libm/assembly/libmf/SQRT2 f32 (f32.const 1.4142135381698608)) + (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) + (global $~lib/math/rempio2_y0 (mut f64) (f64.const 0)) + (global $~lib/math/rempio2_y1 (mut f64) (f64.const 0)) + (global $~lib/math/PIO2_TABLE i32 (i32.const 232)) + (global $~lib/math/res128_hi (mut i64) (i64.const 0)) + (global $~lib/math/rempio2f_y (mut f64) (f64.const 0)) + (global $~lib/math/PIO2F_TABLE i32 (i32.const 312)) + (export "memory" (memory $0)) + (export "libm.E" (global $../../lib/libm/assembly/libm/E)) + (export "libm.LN10" (global $../../lib/libm/assembly/libm/LN10)) + (export "libm.LN2" (global $../../lib/libm/assembly/libm/LN2)) + (export "libm.LOG10E" (global $../../lib/libm/assembly/libm/LOG10E)) + (export "libm.LOG2E" (global $../../lib/libm/assembly/libm/LOG2E)) + (export "libm.PI" (global $../../lib/libm/assembly/libm/PI)) + (export "libm.SQRT1_2" (global $../../lib/libm/assembly/libm/SQRT1_2)) + (export "libm.SQRT2" (global $../../lib/libm/assembly/libm/SQRT2)) + (export "libm.abs" (func $../../lib/libm/assembly/libm/abs)) + (export "libm.acos" (func $../../lib/libm/assembly/libm/acos)) + (export "libm.acosh" (func $../../lib/libm/assembly/libm/acosh)) + (export "libm.asin" (func $../../lib/libm/assembly/libm/asin)) + (export "libm.asinh" (func $../../lib/libm/assembly/libm/asinh)) + (export "libm.atan" (func $../../lib/libm/assembly/libm/atan)) + (export "libm.atanh" (func $../../lib/libm/assembly/libm/atanh)) + (export "libm.atan2" (func $../../lib/libm/assembly/libm/atan2)) + (export "libm.cbrt" (func $../../lib/libm/assembly/libm/cbrt)) + (export "libm.ceil" (func $../../lib/libm/assembly/libm/ceil)) + (export "libm.clz32" (func $../../lib/libm/assembly/libm/clz32)) + (export "libm.cos" (func $../../lib/libm/assembly/libm/cos)) + (export "libm.cosh" (func $../../lib/libm/assembly/libm/cosh)) + (export "libm.exp" (func $../../lib/libm/assembly/libm/exp)) + (export "libm.expm1" (func $../../lib/libm/assembly/libm/expm1)) + (export "libm.floor" (func $../../lib/libm/assembly/libm/floor)) + (export "libm.fround" (func $../../lib/libm/assembly/libm/fround)) + (export "libm.hypot" (func $../../lib/libm/assembly/libm/hypot)) + (export "libm.imul" (func $../../lib/libm/assembly/libm/imul)) + (export "libm.log" (func $../../lib/libm/assembly/libm/log)) + (export "libm.log10" (func $../../lib/libm/assembly/libm/log10)) + (export "libm.log1p" (func $../../lib/libm/assembly/libm/log1p)) + (export "libm.log2" (func $../../lib/libm/assembly/libm/log2)) + (export "libm.max" (func $../../lib/libm/assembly/libm/max)) + (export "libm.min" (func $../../lib/libm/assembly/libm/min)) + (export "libm.pow" (func $../../lib/libm/assembly/libm/pow)) + (export "libm.round" (func $../../lib/libm/assembly/libm/round)) + (export "libm.sign" (func $../../lib/libm/assembly/libm/sign)) + (export "libm.sin" (func $../../lib/libm/assembly/libm/sin)) + (export "libm.sinh" (func $../../lib/libm/assembly/libm/sinh)) + (export "libm.sqrt" (func $../../lib/libm/assembly/libm/sqrt)) + (export "libm.tan" (func $../../lib/libm/assembly/libm/tan)) + (export "libm.tanh" (func $../../lib/libm/assembly/libm/tanh)) + (export "libm.trunc" (func $../../lib/libm/assembly/libm/trunc)) + (export "libmf.E" (global $../../lib/libm/assembly/libmf/E)) + (export "libmf.LN10" (global $../../lib/libm/assembly/libmf/LN10)) + (export "libmf.LN2" (global $../../lib/libm/assembly/libmf/LN2)) + (export "libmf.LOG10E" (global $../../lib/libm/assembly/libmf/LOG10E)) + (export "libmf.LOG2E" (global $../../lib/libm/assembly/libmf/LOG2E)) + (export "libmf.PI" (global $../../lib/libm/assembly/libmf/PI)) + (export "libmf.SQRT1_2" (global $../../lib/libm/assembly/libmf/SQRT1_2)) + (export "libmf.SQRT2" (global $../../lib/libm/assembly/libmf/SQRT2)) + (export "libmf.abs" (func $../../lib/libm/assembly/libmf/abs)) + (export "libmf.acos" (func $../../lib/libm/assembly/libmf/acos)) + (export "libmf.acosh" (func $../../lib/libm/assembly/libmf/acosh)) + (export "libmf.asin" (func $../../lib/libm/assembly/libmf/asin)) + (export "libmf.asinh" (func $../../lib/libm/assembly/libmf/asinh)) + (export "libmf.atan" (func $../../lib/libm/assembly/libmf/atan)) + (export "libmf.atanh" (func $../../lib/libm/assembly/libmf/atanh)) + (export "libmf.atan2" (func $../../lib/libm/assembly/libmf/atan2)) + (export "libmf.cbrt" (func $../../lib/libm/assembly/libmf/cbrt)) + (export "libmf.ceil" (func $../../lib/libm/assembly/libmf/ceil)) + (export "libmf.clz32" (func $../../lib/libm/assembly/libmf/clz32)) + (export "libmf.cos" (func $../../lib/libm/assembly/libmf/cos)) + (export "libmf.cosh" (func $../../lib/libm/assembly/libmf/cosh)) + (export "libmf.exp" (func $../../lib/libm/assembly/libmf/exp)) + (export "libmf.expm1" (func $../../lib/libm/assembly/libmf/expm1)) + (export "libmf.floor" (func $../../lib/libm/assembly/libmf/floor)) + (export "libmf.fround" (func $../../lib/libm/assembly/libmf/fround)) + (export "libmf.hypot" (func $../../lib/libm/assembly/libmf/hypot)) + (export "libmf.imul" (func $../../lib/libm/assembly/libmf/imul)) + (export "libmf.log" (func $../../lib/libm/assembly/libmf/log)) + (export "libmf.log10" (func $../../lib/libm/assembly/libmf/log10)) + (export "libmf.log1p" (func $../../lib/libm/assembly/libmf/log1p)) + (export "libmf.log2" (func $../../lib/libm/assembly/libmf/log2)) + (export "libmf.max" (func $../../lib/libm/assembly/libmf/max)) + (export "libmf.min" (func $../../lib/libm/assembly/libmf/min)) + (export "libmf.pow" (func $../../lib/libm/assembly/libmf/pow)) + (export "libmf.round" (func $../../lib/libm/assembly/libmf/round)) + (export "libmf.sign" (func $../../lib/libm/assembly/libmf/sign)) + (export "libmf.sin" (func $../../lib/libm/assembly/libmf/sin)) + (export "libmf.sinh" (func $../../lib/libm/assembly/libmf/sinh)) + (export "libmf.sqrt" (func $../../lib/libm/assembly/libmf/sqrt)) + (export "libmf.tan" (func $../../lib/libm/assembly/libmf/tan)) + (export "libmf.tanh" (func $../../lib/libm/assembly/libmf/tanh)) + (export "libmf.trunc" (func $../../lib/libm/assembly/libmf/trunc)) + (func $../../lib/libm/assembly/libm/abs (; 0 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 f64) + local.get $0 + local.set $1 + local.get $1 + f64.abs + ) + (func $~lib/math/R (; 1 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 f64) + (local $2 f64) + local.get $0 + f64.const 0.16666666666666666 + local.get $0 + f64.const -0.3255658186224009 + local.get $0 + f64.const 0.20121253213486293 + local.get $0 + f64.const -0.04005553450067941 + local.get $0 + f64.const 7.915349942898145e-04 + local.get $0 + f64.const 3.479331075960212e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $1 + f64.const 1 + local.get $0 + f64.const -2.403394911734414 + local.get $0 + f64.const 2.0209457602335057 + local.get $0 + f64.const -0.6882839716054533 + local.get $0 + f64.const 0.07703815055590194 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $2 + local.get $1 + local.get $2 + f64.div + ) + (func $~lib/math/NativeMath.acos (; 2 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + local.get $0 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1072693248 + i32.ge_u + if + local.get $0 + i64.reinterpret_f64 + i32.wrap_i64 + local.set $3 + local.get $2 + i32.const 1072693248 + i32.sub + local.get $3 + i32.or + i32.const 0 + i32.eq + if + local.get $1 + i32.const 31 + i32.shr_u + if + f64.const 2 + f64.const 1.5707963267948966 + f64.mul + f32.const 7.52316384526264e-37 + f64.promote_f32 + f64.add + return + end + f64.const 0 + return + end + f64.const 0 + local.get $0 + local.get $0 + f64.sub + f64.div + return + end + local.get $2 + i32.const 1071644672 + i32.lt_u + if + local.get $2 + i32.const 1012924416 + i32.le_u + if + f64.const 1.5707963267948966 + f32.const 7.52316384526264e-37 + f64.promote_f32 + f64.add + return + end + f64.const 1.5707963267948966 + local.get $0 + f64.const 6.123233995736766e-17 + local.get $0 + local.get $0 + local.get $0 + f64.mul + call $~lib/math/R + f64.mul + f64.sub + f64.sub + f64.sub + return + end + local.get $1 + i32.const 31 + i32.shr_u + if + f64.const 0.5 + local.get $0 + f64.const 0.5 + f64.mul + f64.add + local.set $6 + local.get $6 + f64.sqrt + local.set $4 + local.get $6 + call $~lib/math/R + local.get $4 + f64.mul + f64.const 6.123233995736766e-17 + f64.sub + local.set $5 + f64.const 2 + f64.const 1.5707963267948966 + local.get $4 + local.get $5 + f64.add + f64.sub + f64.mul + return + end + f64.const 0.5 + local.get $0 + f64.const 0.5 + f64.mul + f64.sub + local.set $6 + local.get $6 + f64.sqrt + local.set $4 + local.get $4 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $7 + local.get $6 + local.get $7 + local.get $7 + f64.mul + f64.sub + local.get $4 + local.get $7 + f64.add + f64.div + local.set $8 + local.get $6 + call $~lib/math/R + local.get $4 + f64.mul + local.get $8 + f64.add + local.set $5 + f64.const 2 + local.get $7 + local.get $5 + f64.add + f64.mul + ) + (func $../../lib/libm/assembly/libm/acos (; 3 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.acos + ) + (func $~lib/math/NativeMath.log1p (; 4 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 i32) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 f64) + (local $14 f64) + (local $15 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + i32.const 1 + local.set $3 + f64.const 0 + local.set $4 + f64.const 0 + local.set $5 + local.get $2 + i32.const 1071284858 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $2 + i32.const 31 + i32.shr_u + end + if + local.get $2 + i32.const -1074790400 + i32.ge_u + if + local.get $0 + f64.const -1 + f64.eq + if + local.get $0 + f64.const 0 + f64.div + return + end + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.div + return + end + local.get $2 + i32.const 1 + i32.shl + i32.const 2034237440 + i32.lt_u + if + local.get $0 + return + end + local.get $2 + i32.const -1076707644 + i32.le_u + if + i32.const 0 + local.set $3 + f64.const 0 + local.set $4 + local.get $0 + local.set $5 + end + else + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + return + end + end + local.get $3 + if + f64.const 1 + local.get $0 + f64.add + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $6 + local.get $6 + i32.const 1072693248 + i32.const 1072079006 + i32.sub + i32.add + local.set $6 + local.get $6 + i32.const 20 + i32.shr_u + i32.const 1023 + i32.sub + local.set $3 + local.get $3 + i32.const 54 + i32.lt_s + if + local.get $1 + f64.reinterpret_i64 + local.set $7 + local.get $3 + i32.const 2 + i32.ge_s + if (result f64) + f64.const 1 + local.get $7 + local.get $0 + f64.sub + f64.sub + else + local.get $0 + local.get $7 + f64.const 1 + f64.sub + f64.sub + end + local.set $4 + local.get $4 + local.get $7 + f64.div + local.set $4 + else + f64.const 0 + local.set $4 + end + local.get $6 + i32.const 1048575 + i32.and + i32.const 1072079006 + i32.add + local.set $6 + local.get $6 + i64.extend_i32_u + i64.const 32 + i64.shl + local.get $1 + i64.const 4294967295 + i64.and + i64.or + local.set $1 + local.get $1 + f64.reinterpret_i64 + f64.const 1 + f64.sub + local.set $5 + end + f64.const 0.5 + local.get $5 + f64.mul + local.get $5 + f64.mul + local.set $8 + local.get $5 + f64.const 2 + local.get $5 + f64.add + f64.div + local.set $9 + local.get $9 + local.get $9 + f64.mul + local.set $10 + local.get $10 + local.get $10 + f64.mul + local.set $11 + local.get $11 + f64.const 0.3999999999940942 + local.get $11 + f64.const 0.22222198432149784 + local.get $11 + f64.const 0.15313837699209373 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $12 + local.get $10 + f64.const 0.6666666666666735 + local.get $11 + f64.const 0.2857142874366239 + local.get $11 + f64.const 0.1818357216161805 + local.get $11 + f64.const 0.14798198605116586 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $13 + local.get $13 + local.get $12 + f64.add + local.set $14 + local.get $3 + f64.convert_i32_s + local.set $15 + local.get $9 + local.get $8 + local.get $14 + f64.add + f64.mul + local.get $15 + f64.const 1.9082149292705877e-10 + f64.mul + local.get $4 + f64.add + f64.add + local.get $8 + f64.sub + local.get $5 + f64.add + local.get $15 + f64.const 0.6931471803691238 + f64.mul + f64.add + ) + (func $~lib/math/NativeMath.log (; 5 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + i32.const 0 + local.set $3 + local.get $2 + i32.const 1048576 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $2 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i64.const 1 + i64.shl + i64.const 0 + i64.eq + if + f64.const -1 + local.get $0 + local.get $0 + f64.mul + f64.div + return + end + local.get $2 + i32.const 31 + i32.shr_u + if + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.div + return + end + local.get $3 + i32.const 54 + i32.sub + local.set $3 + local.get $0 + f64.const 18014398509481984 + f64.mul + local.set $0 + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + else + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + return + else + local.get $2 + i32.const 1072693248 + i32.eq + if (result i32) + local.get $1 + i64.const 32 + i64.shl + i64.const 0 + i64.eq + else + i32.const 0 + end + if + f64.const 0 + return + end + end + end + local.get $2 + i32.const 1072693248 + i32.const 1072079006 + i32.sub + i32.add + local.set $2 + local.get $3 + local.get $2 + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + i32.add + local.set $3 + local.get $2 + i32.const 1048575 + i32.and + i32.const 1072079006 + i32.add + local.set $2 + local.get $2 + i64.extend_i32_u + i64.const 32 + i64.shl + local.get $1 + i64.const 4294967295 + i64.and + i64.or + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $0 + local.get $0 + f64.const 1 + f64.sub + local.set $4 + f64.const 0.5 + local.get $4 + f64.mul + local.get $4 + f64.mul + local.set $5 + local.get $4 + f64.const 2 + local.get $4 + f64.add + f64.div + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $8 + local.get $8 + f64.const 0.3999999999940942 + local.get $8 + f64.const 0.22222198432149784 + local.get $8 + f64.const 0.15313837699209373 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $9 + local.get $7 + f64.const 0.6666666666666735 + local.get $8 + f64.const 0.2857142874366239 + local.get $8 + f64.const 0.1818357216161805 + local.get $8 + f64.const 0.14798198605116586 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $10 + local.get $10 + local.get $9 + f64.add + local.set $11 + local.get $3 + f64.convert_i32_s + local.set $12 + local.get $6 + local.get $5 + local.get $11 + f64.add + f64.mul + local.get $12 + f64.const 1.9082149292705877e-10 + f64.mul + f64.add + local.get $5 + f64.sub + local.get $4 + f64.add + local.get $12 + f64.const 0.6931471803691238 + f64.mul + f64.add + ) + (func $~lib/math/NativeMath.acosh (; 6 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + local.get $0 + i64.reinterpret_f64 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $1 + local.get $1 + i64.const 1024 + i64.lt_u + if + local.get $0 + f64.const 1 + f64.sub + local.get $0 + f64.const 1 + f64.sub + local.get $0 + f64.const 1 + f64.sub + f64.mul + f64.const 2 + local.get $0 + f64.const 1 + f64.sub + f64.mul + f64.add + f64.sqrt + f64.add + call $~lib/math/NativeMath.log1p + return + end + local.get $1 + i64.const 1049 + i64.lt_u + if + f64.const 2 + local.get $0 + f64.mul + f64.const 1 + local.get $0 + local.get $0 + local.get $0 + f64.mul + f64.const 1 + f64.sub + f64.sqrt + f64.add + f64.div + f64.sub + call $~lib/math/NativeMath.log + return + end + local.get $0 + call $~lib/math/NativeMath.log + f64.const 0.6931471805599453 + f64.add + ) + (func $../../lib/libm/assembly/libm/acosh (; 7 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.acosh + ) + (func $~lib/math/NativeMath.asin (; 8 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + local.get $0 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1072693248 + i32.ge_u + if + local.get $0 + i64.reinterpret_f64 + i32.wrap_i64 + local.set $3 + local.get $2 + i32.const 1072693248 + i32.sub + local.get $3 + i32.or + i32.const 0 + i32.eq + if + local.get $0 + f64.const 1.5707963267948966 + f64.mul + f32.const 7.52316384526264e-37 + f64.promote_f32 + f64.add + return + end + f64.const 0 + local.get $0 + local.get $0 + f64.sub + f64.div + return + end + local.get $2 + i32.const 1071644672 + i32.lt_u + if + local.get $2 + i32.const 1045430272 + i32.lt_u + if (result i32) + local.get $2 + i32.const 1048576 + i32.ge_u + else + i32.const 0 + end + if + local.get $0 + return + end + local.get $0 + local.get $0 + local.get $0 + local.get $0 + f64.mul + call $~lib/math/R + f64.mul + f64.add + return + end + f64.const 0.5 + local.get $0 + f64.abs + f64.const 0.5 + f64.mul + f64.sub + local.set $4 + local.get $4 + f64.sqrt + local.set $5 + local.get $4 + call $~lib/math/R + local.set $6 + local.get $2 + i32.const 1072640819 + i32.ge_u + if + f64.const 1.5707963267948966 + f64.const 2 + local.get $5 + local.get $5 + local.get $6 + f64.mul + f64.add + f64.mul + f64.const 6.123233995736766e-17 + f64.sub + f64.sub + local.set $0 + else + local.get $5 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $7 + local.get $4 + local.get $7 + local.get $7 + f64.mul + f64.sub + local.get $5 + local.get $7 + f64.add + f64.div + local.set $8 + f64.const 0.5 + f64.const 1.5707963267948966 + f64.mul + f64.const 2 + local.get $5 + f64.mul + local.get $6 + f64.mul + f64.const 6.123233995736766e-17 + f64.const 2 + local.get $8 + f64.mul + f64.sub + f64.sub + f64.const 0.5 + f64.const 1.5707963267948966 + f64.mul + f64.const 2 + local.get $7 + f64.mul + f64.sub + f64.sub + f64.sub + local.set $0 + end + local.get $1 + i32.const 31 + i32.shr_u + if + local.get $0 + f64.neg + return + end + local.get $0 + ) + (func $../../lib/libm/assembly/libm/asin (; 9 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.asin + ) + (func $~lib/math/NativeMath.asinh (; 10 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i64) + (local $3 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $2 + local.get $1 + i64.const 9223372036854775807 + i64.and + f64.reinterpret_i64 + local.set $3 + local.get $2 + i64.const 1049 + i64.ge_u + if + local.get $3 + call $~lib/math/NativeMath.log + f64.const 0.6931471805599453 + f64.add + local.set $3 + else + local.get $2 + i64.const 1024 + i64.ge_u + if + f64.const 2 + local.get $3 + f64.mul + f64.const 1 + local.get $3 + local.get $3 + f64.mul + f64.const 1 + f64.add + f64.sqrt + local.get $3 + f64.add + f64.div + f64.add + call $~lib/math/NativeMath.log + local.set $3 + else + local.get $2 + i64.const 997 + i64.ge_u + if + local.get $3 + local.get $3 + local.get $3 + f64.mul + local.get $3 + local.get $3 + f64.mul + f64.const 1 + f64.add + f64.sqrt + f64.const 1 + f64.add + f64.div + f64.add + call $~lib/math/NativeMath.log1p + local.set $3 + end + end + end + local.get $3 + local.get $0 + f64.copysign + ) + (func $../../lib/libm/assembly/libm/asinh (; 11 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.asinh + ) + (func $~lib/number/isNaN (; 12 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.ne + ) + (func $~lib/math/NativeMath.atan (; 13 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i32) + (local $2 f64) + (local $3 f64) + (local $4 i32) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 i32) + local.get $0 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $1 + local.get $0 + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1141899264 + i32.ge_u + if + local.get $0 + call $~lib/number/isNaN + if + local.get $0 + return + end + f64.const 1.5707963267948966 + f32.const 7.52316384526264e-37 + f64.promote_f32 + f64.add + local.set $3 + local.get $3 + local.get $2 + f64.copysign + return + end + local.get $1 + i32.const 1071382528 + i32.lt_u + if + local.get $1 + i32.const 1044381696 + i32.lt_u + if + local.get $0 + return + end + i32.const -1 + local.set $4 + else + local.get $0 + f64.abs + local.set $0 + local.get $1 + i32.const 1072889856 + i32.lt_u + if + local.get $1 + i32.const 1072037888 + i32.lt_u + if + i32.const 0 + local.set $4 + f64.const 2 + local.get $0 + f64.mul + f64.const 1 + f64.sub + f64.const 2 + local.get $0 + f64.add + f64.div + local.set $0 + else + i32.const 1 + local.set $4 + local.get $0 + f64.const 1 + f64.sub + local.get $0 + f64.const 1 + f64.add + f64.div + local.set $0 + end + else + local.get $1 + i32.const 1073971200 + i32.lt_u + if + i32.const 2 + local.set $4 + local.get $0 + f64.const 1.5 + f64.sub + f64.const 1 + f64.const 1.5 + local.get $0 + f64.mul + f64.add + f64.div + local.set $0 + else + i32.const 3 + local.set $4 + f64.const -1 + local.get $0 + f64.div + local.set $0 + end + end + end + local.get $0 + local.get $0 + f64.mul + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $5 + local.get $3 + f64.const 0.3333333333333293 + local.get $5 + f64.const 0.14285714272503466 + local.get $5 + f64.const 0.09090887133436507 + local.get $5 + f64.const 0.06661073137387531 + local.get $5 + f64.const 0.049768779946159324 + local.get $5 + f64.const 0.016285820115365782 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $6 + local.get $5 + f64.const -0.19999999999876483 + local.get $5 + f64.const -0.11111110405462356 + local.get $5 + f64.const -0.0769187620504483 + local.get $5 + f64.const -0.058335701337905735 + local.get $5 + f64.const -0.036531572744216916 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $7 + local.get $0 + local.get $6 + local.get $7 + f64.add + f64.mul + local.set $8 + local.get $4 + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $8 + f64.sub + return + end + block $break|0 + block $case4|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $4 + local.set $9 + local.get $9 + i32.const 0 + i32.eq + br_if $case0|0 + local.get $9 + i32.const 1 + i32.eq + br_if $case1|0 + local.get $9 + i32.const 2 + i32.eq + br_if $case2|0 + local.get $9 + i32.const 3 + i32.eq + br_if $case3|0 + br $case4|0 + end + f64.const 0.4636476090008061 + local.get $8 + f64.const 2.2698777452961687e-17 + f64.sub + local.get $0 + f64.sub + f64.sub + local.set $3 + br $break|0 + end + f64.const 0.7853981633974483 + local.get $8 + f64.const 3.061616997868383e-17 + f64.sub + local.get $0 + f64.sub + f64.sub + local.set $3 + br $break|0 + end + f64.const 0.982793723247329 + local.get $8 + f64.const 1.3903311031230998e-17 + f64.sub + local.get $0 + f64.sub + f64.sub + local.set $3 + br $break|0 + end + f64.const 1.5707963267948966 + local.get $8 + f64.const 6.123233995736766e-17 + f64.sub + local.get $0 + f64.sub + f64.sub + local.set $3 + br $break|0 + end + unreachable + end + local.get $3 + local.get $2 + f64.copysign + ) + (func $../../lib/libm/assembly/libm/atan (; 14 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.atan + ) + (func $~lib/math/NativeMath.atanh (; 15 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i64) + (local $3 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $2 + local.get $0 + f64.abs + local.set $3 + local.get $2 + i64.const 1022 + i64.lt_u + if + local.get $2 + i64.const 991 + i64.ge_u + if + f64.const 0.5 + f64.const 2 + local.get $3 + f64.mul + f64.const 2 + local.get $3 + f64.mul + local.get $3 + f64.mul + f64.const 1 + local.get $3 + f64.sub + f64.div + f64.add + call $~lib/math/NativeMath.log1p + f64.mul + local.set $3 + end + else + f64.const 0.5 + f64.const 2 + local.get $3 + f64.const 1 + local.get $3 + f64.sub + f64.div + f64.mul + call $~lib/math/NativeMath.log1p + f64.mul + local.set $3 + end + local.get $3 + local.get $0 + f64.copysign + ) + (func $../../lib/libm/assembly/libm/atanh (; 16 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.atanh + ) + (func $~lib/math/NativeMath.atan2 (; 17 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (local $2 i64) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 f64) + (local $10 f64) + local.get $1 + call $~lib/number/isNaN + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/number/isNaN + end + if + local.get $1 + local.get $0 + f64.add + return + end + local.get $1 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $3 + local.get $2 + i32.wrap_i64 + local.set $4 + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $5 + local.get $2 + i32.wrap_i64 + local.set $6 + local.get $3 + i32.const 1072693248 + i32.sub + local.get $4 + i32.or + i32.const 0 + i32.eq + if + local.get $0 + call $~lib/math/NativeMath.atan + return + end + local.get $5 + i32.const 31 + i32.shr_u + i32.const 1 + i32.and + local.get $3 + i32.const 30 + i32.shr_u + i32.const 2 + i32.and + i32.or + local.set $7 + local.get $3 + i32.const 2147483647 + i32.and + local.set $3 + local.get $5 + i32.const 2147483647 + i32.and + local.set $5 + local.get $5 + local.get $6 + i32.or + i32.const 0 + i32.eq + if + block $break|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $7 + local.set $8 + local.get $8 + i32.const 0 + i32.eq + br_if $case0|0 + local.get $8 + i32.const 1 + i32.eq + br_if $case1|0 + local.get $8 + i32.const 2 + i32.eq + br_if $case2|0 + local.get $8 + i32.const 3 + i32.eq + br_if $case3|0 + br $break|0 + end + end + local.get $0 + return + end + global.get $~lib/math/NativeMath.PI + return + end + global.get $~lib/math/NativeMath.PI + f64.neg + return + end + end + local.get $3 + local.get $4 + i32.or + i32.const 0 + i32.eq + if + local.get $7 + i32.const 1 + i32.and + if (result f64) + global.get $~lib/math/NativeMath.PI + f64.neg + f64.const 2 + f64.div + else + global.get $~lib/math/NativeMath.PI + f64.const 2 + f64.div + end + return + end + local.get $3 + i32.const 2146435072 + i32.eq + if + local.get $5 + i32.const 2146435072 + i32.eq + if + local.get $7 + i32.const 2 + i32.and + if (result f64) + i32.const 3 + f64.convert_i32_s + global.get $~lib/math/NativeMath.PI + f64.mul + f64.const 4 + f64.div + else + global.get $~lib/math/NativeMath.PI + f64.const 4 + f64.div + end + local.set $9 + local.get $7 + i32.const 1 + i32.and + if (result f64) + local.get $9 + f64.neg + else + local.get $9 + end + return + else + local.get $7 + i32.const 2 + i32.and + if (result f64) + global.get $~lib/math/NativeMath.PI + else + i32.const 0 + f64.convert_i32_s + end + local.set $9 + local.get $7 + i32.const 1 + i32.and + if (result f64) + local.get $9 + f64.neg + else + local.get $9 + end + return + end + unreachable + end + local.get $3 + i32.const 67108864 + i32.add + local.get $5 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $5 + i32.const 2146435072 + i32.eq + end + if + local.get $7 + i32.const 1 + i32.and + if (result f64) + global.get $~lib/math/NativeMath.PI + f64.neg + f64.const 2 + f64.div + else + global.get $~lib/math/NativeMath.PI + f64.const 2 + f64.div + end + return + end + local.get $7 + i32.const 2 + i32.and + if (result i32) + local.get $5 + i32.const 67108864 + i32.add + local.get $3 + i32.lt_u + else + i32.const 0 + end + if + f64.const 0 + local.set $10 + else + local.get $0 + local.get $1 + f64.div + f64.abs + call $~lib/math/NativeMath.atan + local.set $10 + end + block $break|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $7 + local.set $8 + local.get $8 + i32.const 0 + i32.eq + br_if $case0|1 + local.get $8 + i32.const 1 + i32.eq + br_if $case1|1 + local.get $8 + i32.const 2 + i32.eq + br_if $case2|1 + local.get $8 + i32.const 3 + i32.eq + br_if $case3|1 + br $break|1 + end + local.get $10 + return + end + local.get $10 + f64.neg + return + end + global.get $~lib/math/NativeMath.PI + local.get $10 + f64.const 1.2246467991473532e-16 + f64.sub + f64.sub + return + end + local.get $10 + f64.const 1.2246467991473532e-16 + f64.sub + global.get $~lib/math/NativeMath.PI + f64.sub + return + end + unreachable + ) + (func $../../lib/libm/assembly/libm/atan2 (; 18 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + local.get $0 + local.get $1 + call $~lib/math/NativeMath.atan2 + ) + (func $~lib/math/NativeMath.cbrt (; 19 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 f64) + (local $4 f64) + (local $5 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + local.get $0 + f64.add + return + end + local.get $2 + i32.const 1048576 + i32.lt_u + if + local.get $0 + f64.const 18014398509481984 + f64.mul + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 0 + i32.eq + if + local.get $0 + return + end + local.get $2 + i32.const 3 + i32.div_u + i32.const 696219795 + i32.add + local.set $2 + else + local.get $2 + i32.const 3 + i32.div_u + i32.const 715094163 + i32.add + local.set $2 + end + local.get $1 + i64.const 1 + i64.const 63 + i64.shl + i64.and + local.set $1 + local.get $1 + local.get $2 + i64.extend_i32_u + i64.const 32 + i64.shl + i64.or + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.get $3 + local.get $0 + f64.div + f64.mul + local.set $4 + local.get $3 + f64.const 1.87595182427177 + local.get $4 + f64.const -1.8849797954337717 + local.get $4 + f64.const 1.6214297201053545 + f64.mul + f64.add + f64.mul + f64.add + local.get $4 + local.get $4 + f64.mul + local.get $4 + f64.mul + f64.const -0.758397934778766 + local.get $4 + f64.const 0.14599619288661245 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $3 + local.get $3 + i64.reinterpret_f64 + i64.const 2147483648 + i64.add + i64.const -1073741824 + i64.and + f64.reinterpret_i64 + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $5 + local.get $0 + local.get $5 + f64.div + local.set $4 + local.get $4 + local.get $3 + f64.sub + f64.const 2 + local.get $3 + f64.mul + local.get $4 + f64.add + f64.div + local.set $4 + local.get $3 + local.get $3 + local.get $4 + f64.mul + f64.add + local.set $3 + local.get $3 + ) + (func $../../lib/libm/assembly/libm/cbrt (; 20 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.cbrt + ) + (func $../../lib/libm/assembly/libm/ceil (; 21 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 f64) + local.get $0 + local.set $1 + local.get $1 + f64.ceil + ) + (func $~lib/number/isFinite (; 22 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.eq + ) + (func $~lib/math/dtoi32 (; 23 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (local $1 i32) + (local $2 i64) + (local $3 i64) + (local $4 i64) + i32.const 0 + local.set $1 + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $3 + local.get $3 + i64.const 1053 + i64.le_u + if + local.get $0 + i32.trunc_f64_s + local.set $1 + else + local.get $3 + i64.const 1106 + i64.le_u + if + local.get $2 + i64.const 1 + i64.const 52 + i64.shl + i64.const 1 + i64.sub + i64.and + i64.const 1 + i64.const 52 + i64.shl + i64.or + local.set $4 + local.get $4 + local.get $3 + i64.const 1023 + i64.sub + i64.const 52 + i64.sub + i64.const 32 + i64.add + i64.shl + local.set $4 + local.get $4 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $1 + i32.const 0 + local.get $1 + i32.sub + local.get $1 + local.get $2 + i64.const 63 + i64.shr_u + i64.const 0 + i64.ne + select + local.set $1 + end + end + local.get $1 + return + ) + (func $~lib/math/NativeMath.clz32 (; 24 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/number/isFinite + i32.eqz + if + f64.const 32 + return + end + local.get $0 + call $~lib/math/dtoi32 + i32.clz + f64.convert_i32_s + ) + (func $../../lib/libm/assembly/libm/clz32 (; 25 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.clz32 + ) + (func $~lib/math/pio2_large_quot (; 26 ;) (type $FUNCSIG$idj) (param $0 f64) (param $1 i64) (result i32) + (local $2 i32) + (local $3 i64) + (local $4 i64) + (local $5 i64) + (local $6 i32) + (local $7 i64) + (local $8 i64) + (local $9 i64) + (local $10 i64) + (local $11 i64) + (local $12 i64) + (local $13 i64) + (local $14 i64) + (local $15 i64) + (local $16 i64) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i64) + (local $25 i64) + (local $26 i64) + (local $27 i64) + (local $28 i64) + (local $29 i64) + (local $30 i64) + (local $31 i64) + (local $32 i64) + (local $33 i64) + (local $34 i64) + (local $35 i64) + (local $36 i64) + (local $37 f64) + i32.const 232 + i32.load offset=4 + local.set $2 + local.get $1 + i64.const 9223372036854775807 + i64.and + local.set $3 + local.get $3 + i64.const 52 + i64.shr_s + i64.const 1045 + i64.sub + local.set $4 + local.get $4 + i64.const 63 + i64.and + local.set $5 + local.get $2 + local.get $4 + i64.const 6 + i64.shr_s + i32.wrap_i64 + i32.const 3 + i32.shl + i32.add + local.set $6 + local.get $6 + i64.load + local.set $10 + local.get $6 + i64.load offset=8 + local.set $11 + local.get $6 + i64.load offset=16 + local.set $12 + local.get $5 + i64.const 0 + i64.ne + if + i32.const 64 + i64.extend_i32_s + local.get $5 + i64.sub + local.set $13 + local.get $6 + i64.load offset=24 + local.set $14 + local.get $11 + local.get $13 + i64.shr_u + local.get $10 + local.get $5 + i64.shl + i64.or + local.set $7 + local.get $12 + local.get $13 + i64.shr_u + local.get $11 + local.get $5 + i64.shl + i64.or + local.set $8 + local.get $14 + local.get $13 + i64.shr_u + local.get $12 + local.get $5 + i64.shl + i64.or + local.set $9 + else + local.get $10 + local.set $7 + local.get $11 + local.set $8 + local.get $12 + local.set $9 + end + local.get $1 + i64.const 4503599627370495 + i64.and + i64.const 4503599627370496 + i64.or + local.set $15 + local.get $8 + local.set $14 + local.get $15 + local.set $13 + local.get $14 + i64.const 4294967295 + i64.and + local.set $16 + local.get $13 + i64.const 4294967295 + i64.and + local.set $17 + local.get $14 + i64.const 32 + i64.shr_u + local.set $14 + local.get $13 + i64.const 32 + i64.shr_u + local.set $13 + local.get $16 + local.get $17 + i64.mul + local.set $20 + local.get $20 + i64.const 4294967295 + i64.and + local.set $18 + local.get $14 + local.get $17 + i64.mul + local.get $20 + i64.const 32 + i64.shr_u + i64.add + local.set $20 + local.get $20 + i64.const 32 + i64.shr_u + local.set $19 + local.get $16 + local.get $13 + i64.mul + local.get $20 + i64.const 4294967295 + i64.and + i64.add + local.set $20 + local.get $14 + local.get $13 + i64.mul + local.get $19 + i64.add + local.get $20 + i64.const 32 + i64.shr_u + i64.add + global.set $~lib/math/res128_hi + local.get $20 + i64.const 32 + i64.shl + local.get $18 + i64.add + local.set $21 + global.get $~lib/math/res128_hi + local.set $22 + local.get $7 + local.get $15 + i64.mul + local.set $23 + local.get $9 + i64.const 32 + i64.shr_u + local.get $15 + i64.const 32 + i64.shr_s + i64.mul + local.set $24 + local.get $21 + local.get $24 + i64.add + local.set $25 + local.get $23 + local.get $22 + i64.add + local.get $25 + local.get $24 + i64.lt_u + i64.extend_i32_u + i64.add + local.set $26 + local.get $25 + i64.const 2 + i64.shl + local.set $27 + local.get $26 + i64.const 2 + i64.shl + local.get $25 + i64.const 62 + i64.shr_u + i64.or + local.set $28 + local.get $28 + i64.const 63 + i64.shr_s + local.set $29 + local.get $29 + i64.const 1 + i64.shr_s + local.set $30 + local.get $26 + i64.const 62 + i64.shr_s + local.get $29 + i64.sub + local.set $31 + i64.const 4372995238176751616 + local.get $27 + local.get $29 + i64.xor + local.set $14 + local.get $28 + local.get $30 + i64.xor + local.set $13 + local.get $13 + i64.clz + local.set $20 + local.get $13 + local.get $20 + i64.shl + local.get $14 + i64.const 64 + local.get $20 + i64.sub + i64.shr_u + i64.or + local.set $13 + local.get $14 + local.get $20 + i64.shl + local.set $14 + i64.const -3958705157555305932 + local.set $17 + local.get $13 + local.set $16 + local.get $17 + i64.const 4294967295 + i64.and + local.set $19 + local.get $16 + i64.const 4294967295 + i64.and + local.set $18 + local.get $17 + i64.const 32 + i64.shr_u + local.set $17 + local.get $16 + i64.const 32 + i64.shr_u + local.set $16 + local.get $19 + local.get $18 + i64.mul + local.set $34 + local.get $34 + i64.const 4294967295 + i64.and + local.set $32 + local.get $17 + local.get $18 + i64.mul + local.get $34 + i64.const 32 + i64.shr_u + i64.add + local.set $34 + local.get $34 + i64.const 32 + i64.shr_u + local.set $33 + local.get $19 + local.get $16 + i64.mul + local.get $34 + i64.const 4294967295 + i64.and + i64.add + local.set $34 + local.get $17 + local.get $16 + i64.mul + local.get $33 + i64.add + local.get $34 + i64.const 32 + i64.shr_u + i64.add + global.set $~lib/math/res128_hi + local.get $34 + i64.const 32 + i64.shl + local.get $32 + i64.add + local.set $34 + global.get $~lib/math/res128_hi + local.set $33 + local.get $33 + i64.const 11 + i64.shr_u + local.set $32 + local.get $34 + i64.const 11 + i64.shr_u + local.get $33 + i64.const 53 + i64.shl + i64.or + local.set $18 + f64.const 2.6469779601696886e-23 + i64.const -4267615245585081135 + f64.convert_i64_u + f64.mul + local.get $13 + f64.convert_i64_u + f64.mul + f64.const 2.6469779601696886e-23 + i64.const -3958705157555305932 + f64.convert_i64_u + f64.mul + local.get $14 + f64.convert_i64_u + f64.mul + f64.add + i64.trunc_f64_u + local.set $19 + local.get $32 + local.get $34 + local.get $19 + i64.lt_u + i64.extend_i32_u + i64.add + f64.convert_i64_u + global.set $~lib/math/rempio2_y0 + f64.const 5.421010862427522e-20 + local.get $18 + local.get $19 + i64.add + f64.convert_i64_u + f64.mul + global.set $~lib/math/rempio2_y1 + local.get $20 + i64.const 52 + i64.shl + i64.sub + local.set $35 + local.get $1 + local.get $28 + i64.xor + i64.const -9223372036854775808 + i64.and + local.set $36 + local.get $35 + local.get $36 + i64.or + f64.reinterpret_i64 + local.set $37 + global.get $~lib/math/rempio2_y0 + local.get $37 + f64.mul + global.set $~lib/math/rempio2_y0 + global.get $~lib/math/rempio2_y1 + local.get $37 + f64.mul + global.set $~lib/math/rempio2_y1 + local.get $31 + i32.wrap_i64 + ) + (func $~lib/math/NativeMath.cos (; 27 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 i32) + (local $11 i64) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 f64) + (local $17 i32) + (local $18 f64) + (local $19 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + local.get $2 + i32.const 31 + i32.shr_u + local.set $3 + local.get $2 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1072243195 + i32.le_u + if + local.get $2 + i32.const 1044816030 + i32.lt_u + if + f64.const 1 + return + end + local.get $0 + local.set $5 + f64.const 0 + local.set $4 + local.get $5 + local.get $5 + f64.mul + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $6 + f64.const 0.0416666666666666 + local.get $6 + f64.const -0.001388888888887411 + local.get $6 + f64.const 2.480158728947673e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.get $7 + local.get $7 + f64.mul + f64.const -2.7557314351390663e-07 + local.get $6 + f64.const 2.087572321298175e-09 + local.get $6 + f64.const -1.1359647557788195e-11 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $8 + f64.const 0.5 + local.get $6 + f64.mul + local.set $9 + f64.const 1 + local.get $9 + f64.sub + local.set $7 + local.get $7 + f64.const 1 + local.get $7 + f64.sub + local.get $9 + f64.sub + local.get $6 + local.get $8 + f64.mul + local.get $5 + local.get $4 + f64.mul + f64.sub + f64.add + f64.add + return + end + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + local.get $0 + f64.sub + return + end + block $~lib/math/rempio2|inlined.0 (result i32) + local.get $0 + local.set $4 + local.get $1 + local.set $11 + local.get $3 + local.set $10 + local.get $11 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 2147483647 + i32.and + local.set $12 + local.get $12 + i32.const 1073928572 + i32.lt_u + if + i32.const 1 + local.set $13 + local.get $10 + i32.eqz + if + local.get $4 + f64.const 1.5707963267341256 + f64.sub + local.set $9 + local.get $12 + i32.const 1073291771 + i32.ne + if + local.get $9 + f64.const 6.077100506506192e-11 + f64.sub + local.set $8 + local.get $9 + local.get $8 + f64.sub + f64.const 6.077100506506192e-11 + f64.sub + local.set $7 + else + local.get $9 + f64.const 6.077100506303966e-11 + f64.sub + local.set $9 + local.get $9 + f64.const 2.0222662487959506e-21 + f64.sub + local.set $8 + local.get $9 + local.get $8 + f64.sub + f64.const 2.0222662487959506e-21 + f64.sub + local.set $7 + end + else + local.get $4 + f64.const 1.5707963267341256 + f64.add + local.set $9 + local.get $12 + i32.const 1073291771 + i32.ne + if + local.get $9 + f64.const 6.077100506506192e-11 + f64.add + local.set $8 + local.get $9 + local.get $8 + f64.sub + f64.const 6.077100506506192e-11 + f64.add + local.set $7 + else + local.get $9 + f64.const 6.077100506303966e-11 + f64.add + local.set $9 + local.get $9 + f64.const 2.0222662487959506e-21 + f64.add + local.set $8 + local.get $9 + local.get $8 + f64.sub + f64.const 2.0222662487959506e-21 + f64.add + local.set $7 + end + i32.const -1 + local.set $13 + end + local.get $8 + global.set $~lib/math/rempio2_y0 + local.get $7 + global.set $~lib/math/rempio2_y1 + local.get $13 + br $~lib/math/rempio2|inlined.0 + end + local.get $12 + i32.const 1094263291 + i32.lt_u + if + local.get $4 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $7 + local.get $4 + local.get $7 + f64.const 1.5707963267341256 + f64.mul + f64.sub + local.set $8 + local.get $7 + f64.const 6.077100506506192e-11 + f64.mul + local.set $9 + local.get $12 + i32.const 20 + i32.shr_u + local.set $13 + local.get $8 + local.get $9 + f64.sub + local.set $6 + local.get $6 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $14 + local.get $13 + local.get $14 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $15 + local.get $15 + i32.const 16 + i32.gt_u + if + local.get $8 + local.set $5 + local.get $7 + f64.const 6.077100506303966e-11 + f64.mul + local.set $9 + local.get $5 + local.get $9 + f64.sub + local.set $8 + local.get $7 + f64.const 2.0222662487959506e-21 + f64.mul + local.get $5 + local.get $8 + f64.sub + local.get $9 + f64.sub + f64.sub + local.set $9 + local.get $8 + local.get $9 + f64.sub + local.set $6 + local.get $6 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $14 + local.get $13 + local.get $14 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $15 + local.get $15 + i32.const 49 + i32.gt_u + if + local.get $8 + local.set $16 + local.get $7 + f64.const 2.0222662487111665e-21 + f64.mul + local.set $9 + local.get $16 + local.get $9 + f64.sub + local.set $8 + local.get $7 + f64.const 8.4784276603689e-32 + f64.mul + local.get $16 + local.get $8 + f64.sub + local.get $9 + f64.sub + f64.sub + local.set $9 + local.get $8 + local.get $9 + f64.sub + local.set $6 + end + end + local.get $8 + local.get $6 + f64.sub + local.get $9 + f64.sub + local.set $5 + local.get $6 + global.set $~lib/math/rempio2_y0 + local.get $5 + global.set $~lib/math/rempio2_y1 + local.get $7 + i32.trunc_f64_s + br $~lib/math/rempio2|inlined.0 + end + local.get $4 + local.get $11 + call $~lib/math/pio2_large_quot + local.set $15 + i32.const 0 + local.get $15 + i32.sub + local.get $15 + local.get $10 + select + end + local.set $17 + global.get $~lib/math/rempio2_y0 + local.set $18 + global.get $~lib/math/rempio2_y1 + local.set $19 + local.get $17 + i32.const 1 + i32.and + if (result f64) + block $~lib/math/sin_kern|inlined.0 (result f64) + local.get $18 + local.set $7 + local.get $19 + local.set $16 + i32.const 1 + local.set $13 + local.get $7 + local.get $7 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const 0.00833333333332249 + local.get $4 + f64.const -1.984126982985795e-04 + local.get $4 + f64.const 2.7557313707070068e-06 + f64.mul + f64.add + f64.mul + f64.add + local.get $4 + local.get $5 + f64.mul + f64.const -2.5050760253406863e-08 + local.get $4 + f64.const 1.58969099521155e-10 + f64.mul + f64.add + f64.mul + f64.add + local.set $6 + local.get $4 + local.get $7 + f64.mul + local.set $9 + local.get $13 + i32.eqz + if + local.get $7 + local.get $9 + f64.const -0.16666666666666632 + local.get $4 + local.get $6 + f64.mul + f64.add + f64.mul + f64.add + br $~lib/math/sin_kern|inlined.0 + else + local.get $7 + local.get $4 + f64.const 0.5 + local.get $16 + f64.mul + local.get $9 + local.get $6 + f64.mul + f64.sub + f64.mul + local.get $16 + f64.sub + local.get $9 + f64.const -0.16666666666666632 + f64.mul + f64.sub + f64.sub + br $~lib/math/sin_kern|inlined.0 + end + unreachable + end + else + local.get $18 + local.set $16 + local.get $19 + local.set $8 + local.get $16 + local.get $16 + f64.mul + local.set $9 + local.get $9 + local.get $9 + f64.mul + local.set $6 + local.get $9 + f64.const 0.0416666666666666 + local.get $9 + f64.const -0.001388888888887411 + local.get $9 + f64.const 2.480158728947673e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.get $6 + local.get $6 + f64.mul + f64.const -2.7557314351390663e-07 + local.get $9 + f64.const 2.087572321298175e-09 + local.get $9 + f64.const -1.1359647557788195e-11 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $5 + f64.const 0.5 + local.get $9 + f64.mul + local.set $4 + f64.const 1 + local.get $4 + f64.sub + local.set $6 + local.get $6 + f64.const 1 + local.get $6 + f64.sub + local.get $4 + f64.sub + local.get $9 + local.get $5 + f64.mul + local.get $16 + local.get $8 + f64.mul + f64.sub + f64.add + f64.add + end + local.set $0 + local.get $17 + i32.const 1 + i32.add + i32.const 2 + i32.and + if (result f64) + local.get $0 + f64.neg + else + local.get $0 + end + ) + (func $../../lib/libm/assembly/libm/cos (; 28 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.cos + ) + (func $~lib/math/NativeMath.expm1 (; 29 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 f64) + (local $14 f64) + (local $15 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i64.const 2147483647 + i64.and + i32.wrap_i64 + local.set $2 + i32.const 0 + local.set $3 + local.get $1 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.set $4 + local.get $2 + i32.const 1078159482 + i32.ge_u + if + local.get $0 + call $~lib/number/isNaN + if + local.get $0 + return + end + local.get $4 + if + f64.const -1 + return + end + local.get $0 + f64.const 709.782712893384 + f64.gt + if + local.get $0 + f64.const 8988465674311579538646525e283 + f64.mul + return + end + end + f64.const 0 + local.set $5 + local.get $2 + i32.const 1071001154 + i32.gt_u + if + i32.const 1 + local.get $4 + i32.const 1 + i32.shl + i32.sub + f64.const 1.4426950408889634 + local.get $0 + f64.mul + f64.const 0.5 + local.get $0 + f64.copysign + f64.add + i32.trunc_f64_s + local.get $2 + i32.const 1072734898 + i32.lt_u + select + local.set $3 + local.get $3 + f64.convert_i32_s + local.set $6 + local.get $0 + local.get $6 + f64.const 0.6931471803691238 + f64.mul + f64.sub + local.set $7 + local.get $6 + f64.const 1.9082149292705877e-10 + f64.mul + local.set $8 + local.get $7 + local.get $8 + f64.sub + local.set $0 + local.get $7 + local.get $0 + f64.sub + local.get $8 + f64.sub + local.set $5 + else + local.get $2 + i32.const 1016070144 + i32.lt_u + if + local.get $0 + return + end + end + f64.const 0.5 + local.get $0 + f64.mul + local.set $9 + local.get $0 + local.get $9 + f64.mul + local.set $10 + local.get $10 + local.get $10 + f64.mul + local.set $11 + f64.const 1 + local.get $10 + f64.const -0.03333333333333313 + f64.mul + f64.add + local.get $11 + f64.const 1.5873015872548146e-03 + local.get $10 + f64.const -7.93650757867488e-05 + f64.mul + f64.add + local.get $11 + f64.const 4.008217827329362e-06 + local.get $10 + f64.const -2.0109921818362437e-07 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $12 + f64.const 3 + local.get $12 + local.get $9 + f64.mul + f64.sub + local.set $6 + local.get $10 + local.get $12 + local.get $6 + f64.sub + f64.const 6 + local.get $0 + local.get $6 + f64.mul + f64.sub + f64.div + f64.mul + local.set $13 + local.get $3 + i32.const 0 + i32.eq + if + local.get $0 + local.get $0 + local.get $13 + f64.mul + local.get $10 + f64.sub + f64.sub + return + end + local.get $0 + local.get $13 + local.get $5 + f64.sub + f64.mul + local.get $5 + f64.sub + local.set $13 + local.get $13 + local.get $10 + f64.sub + local.set $13 + local.get $3 + i32.const -1 + i32.eq + if + f64.const 0.5 + local.get $0 + local.get $13 + f64.sub + f64.mul + f64.const 0.5 + f64.sub + return + end + local.get $3 + i32.const 1 + i32.eq + if + local.get $0 + f64.const -0.25 + f64.lt + if + f64.const -2 + local.get $13 + local.get $0 + f64.const 0.5 + f64.add + f64.sub + f64.mul + return + end + f64.const 1 + f64.const 2 + local.get $0 + local.get $13 + f64.sub + f64.mul + f64.add + return + end + i64.const 1023 + local.get $3 + i64.extend_i32_s + i64.add + i64.const 52 + i64.shl + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $14 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + i32.const 1 + else + local.get $3 + i32.const 56 + i32.gt_s + end + if + local.get $0 + local.get $13 + f64.sub + f64.const 1 + f64.add + local.set $15 + local.get $3 + i32.const 1024 + i32.eq + if + local.get $15 + f64.const 2 + f64.mul + f64.const 8988465674311579538646525e283 + f64.mul + local.set $15 + else + local.get $15 + local.get $14 + f64.mul + local.set $15 + end + local.get $15 + f64.const 1 + f64.sub + return + end + i64.const 1023 + local.get $3 + i64.extend_i32_s + i64.sub + i64.const 52 + i64.shl + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $15 + local.get $3 + i32.const 20 + i32.lt_s + if + f64.const 1 + local.get $15 + f64.sub + local.get $13 + f64.sub + local.set $15 + else + f64.const 1 + local.get $13 + local.get $15 + f64.add + f64.sub + local.set $15 + end + local.get $0 + local.get $15 + f64.add + local.get $14 + f64.mul + ) + (func $~lib/math/NativeMath.scalbn (; 30 ;) (type $FUNCSIG$ddi) (param $0 f64) (param $1 i32) (result f64) + (local $2 f64) + (local $3 i32) + (local $4 i32) + local.get $0 + local.set $2 + local.get $1 + i32.const 1023 + i32.gt_s + if + local.get $2 + f64.const 8988465674311579538646525e283 + f64.mul + local.set $2 + local.get $1 + i32.const 1023 + i32.sub + local.set $1 + local.get $1 + i32.const 1023 + i32.gt_s + if + local.get $2 + f64.const 8988465674311579538646525e283 + f64.mul + local.set $2 + local.get $1 + i32.const 1023 + i32.sub + local.tee $3 + i32.const 1023 + local.tee $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.set $1 + end + else + local.get $1 + i32.const -1022 + i32.lt_s + if + local.get $2 + f64.const 2.2250738585072014e-308 + f64.const 9007199254740992 + f64.mul + f64.mul + local.set $2 + local.get $1 + i32.const 1022 + i32.const 53 + i32.sub + i32.add + local.set $1 + local.get $1 + i32.const -1022 + i32.lt_s + if + local.get $2 + f64.const 2.2250738585072014e-308 + f64.const 9007199254740992 + f64.mul + f64.mul + local.set $2 + local.get $1 + i32.const 1022 + i32.add + i32.const 53 + i32.sub + local.tee $3 + i32.const -1022 + local.tee $4 + local.get $3 + local.get $4 + i32.gt_s + select + local.set $1 + end + end + end + local.get $2 + i64.const 1023 + local.get $1 + i64.extend_i32_s + i64.add + i64.const 52 + i64.shl + f64.reinterpret_i64 + f64.mul + ) + (func $~lib/math/NativeMath.exp (; 31 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i32) + (local $2 i32) + (local $3 f64) + (local $4 f64) + (local $5 i32) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + local.get $0 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $1 + local.get $1 + i32.const 31 + i32.shr_u + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1082532651 + i32.ge_u + if + local.get $0 + call $~lib/number/isNaN + if + local.get $0 + return + end + local.get $0 + f64.const 709.782712893384 + f64.gt + if + local.get $0 + f64.const 8988465674311579538646525e283 + f64.mul + return + end + local.get $0 + f64.const -745.1332191019411 + f64.lt + if + f64.const 0 + return + end + end + f64.const 0 + local.set $4 + i32.const 0 + local.set $5 + local.get $1 + i32.const 1071001154 + i32.gt_u + if + local.get $1 + i32.const 1072734898 + i32.ge_u + if + f64.const 1.4426950408889634 + local.get $0 + f64.mul + f64.const 0.5 + local.get $0 + f64.copysign + f64.add + i32.trunc_f64_s + local.set $5 + else + i32.const 1 + local.get $2 + i32.const 1 + i32.shl + i32.sub + local.set $5 + end + local.get $0 + local.get $5 + f64.convert_i32_s + f64.const 0.6931471803691238 + f64.mul + f64.sub + local.set $3 + local.get $5 + f64.convert_i32_s + f64.const 1.9082149292705877e-10 + f64.mul + local.set $4 + local.get $3 + local.get $4 + f64.sub + local.set $0 + else + local.get $1 + i32.const 1043333120 + i32.gt_u + if + local.get $0 + local.set $3 + else + f64.const 1 + local.get $0 + f64.add + return + end + end + local.get $0 + local.get $0 + f64.mul + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $0 + local.get $6 + f64.const 0.16666666666666602 + f64.mul + local.get $7 + f64.const -2.7777777777015593e-03 + local.get $6 + f64.const 6.613756321437934e-05 + f64.mul + f64.add + local.get $7 + f64.const -1.6533902205465252e-06 + local.get $6 + f64.const 4.1381367970572385e-08 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.sub + local.set $8 + f64.const 1 + local.get $0 + local.get $8 + f64.mul + f64.const 2 + local.get $8 + f64.sub + f64.div + local.get $4 + f64.sub + local.get $3 + f64.add + f64.add + local.set $9 + local.get $5 + i32.const 0 + i32.eq + if + local.get $9 + return + end + local.get $9 + local.get $5 + call $~lib/math/NativeMath.scalbn + ) + (func $~lib/math/NativeMath.cosh (; 32 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 f64) + (local $4 f64) + (local $5 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 9223372036854775807 + i64.and + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $0 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + local.get $2 + i32.const 1072049730 + i32.lt_u + if + local.get $2 + i32.const 1045430272 + i32.lt_u + if + f64.const 1 + return + end + local.get $0 + call $~lib/math/NativeMath.expm1 + local.set $3 + f64.const 1 + local.get $3 + local.get $3 + f64.mul + f64.const 2 + f64.const 2 + local.get $3 + f64.mul + f64.add + f64.div + f64.add + return + end + local.get $2 + i32.const 1082535490 + i32.lt_u + if + local.get $0 + call $~lib/math/NativeMath.exp + local.set $3 + f64.const 0.5 + local.get $3 + f64.const 1 + local.get $3 + f64.div + f64.add + f64.mul + return + end + local.get $0 + local.set $4 + i32.const 1023 + i32.const 2043 + i32.const 2 + i32.div_u + i32.add + i32.const 20 + i32.shl + i64.extend_i32_u + i64.const 32 + i64.shl + f64.reinterpret_i64 + local.set $5 + local.get $4 + f64.const 1416.0996898839683 + f64.sub + call $~lib/math/NativeMath.exp + local.get $5 + f64.mul + local.get $5 + f64.mul + local.set $3 + local.get $3 + ) + (func $../../lib/libm/assembly/libm/cosh (; 33 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.cosh + ) + (func $../../lib/libm/assembly/libm/exp (; 34 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.exp + ) + (func $../../lib/libm/assembly/libm/expm1 (; 35 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.expm1 + ) + (func $../../lib/libm/assembly/libm/floor (; 36 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 f64) + local.get $0 + local.set $1 + local.get $1 + f64.floor + ) + (func $../../lib/libm/assembly/libm/fround (; 37 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 f64) + local.get $0 + local.set $1 + local.get $1 + f32.demote_f64 + f64.promote_f32 + ) + (func $~lib/math/NativeMath.hypot (; 38 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (local $2 i64) + (local $3 i64) + (local $4 i64) + (local $5 i32) + (local $6 i32) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 f64) + (local $14 f64) + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $1 + i64.reinterpret_f64 + local.set $3 + local.get $2 + i64.const 9223372036854775807 + i64.and + local.set $2 + local.get $3 + i64.const 9223372036854775807 + i64.and + local.set $3 + local.get $2 + local.get $3 + i64.lt_u + if + local.get $2 + local.set $4 + local.get $3 + local.set $2 + local.get $4 + local.set $3 + end + local.get $2 + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.set $5 + local.get $3 + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.set $6 + local.get $3 + f64.reinterpret_i64 + local.set $1 + local.get $6 + i32.const 2047 + i32.eq + if + local.get $1 + return + end + local.get $2 + f64.reinterpret_i64 + local.set $0 + local.get $5 + i32.const 2047 + i32.eq + if (result i32) + i32.const 1 + else + local.get $3 + i64.const 0 + i64.eq + end + if + local.get $0 + return + end + local.get $5 + local.get $6 + i32.sub + i32.const 64 + i32.gt_s + if + local.get $0 + local.get $1 + f64.add + return + end + f64.const 1 + local.set $7 + local.get $5 + i32.const 1533 + i32.gt_s + if + f64.const 5260135901548373507240989e186 + local.set $7 + local.get $0 + f64.const 1.90109156629516e-211 + f64.mul + local.set $0 + local.get $1 + f64.const 1.90109156629516e-211 + f64.mul + local.set $1 + else + local.get $6 + i32.const 573 + i32.lt_s + if + f64.const 1.90109156629516e-211 + local.set $7 + local.get $0 + f64.const 5260135901548373507240989e186 + f64.mul + local.set $0 + local.get $1 + f64.const 5260135901548373507240989e186 + f64.mul + local.set $1 + end + end + local.get $0 + f64.const 134217729 + f64.mul + local.set $8 + local.get $0 + local.get $8 + f64.sub + local.get $8 + f64.add + local.set $9 + local.get $0 + local.get $9 + f64.sub + local.set $10 + local.get $0 + local.get $0 + f64.mul + local.set $11 + local.get $9 + local.get $9 + f64.mul + local.get $11 + f64.sub + f64.const 2 + local.get $9 + f64.mul + local.get $10 + f64.add + local.get $10 + f64.mul + f64.add + local.set $12 + local.get $1 + f64.const 134217729 + f64.mul + local.set $8 + local.get $1 + local.get $8 + f64.sub + local.get $8 + f64.add + local.set $9 + local.get $1 + local.get $9 + f64.sub + local.set $10 + local.get $1 + local.get $1 + f64.mul + local.set $13 + local.get $9 + local.get $9 + f64.mul + local.get $13 + f64.sub + f64.const 2 + local.get $9 + f64.mul + local.get $10 + f64.add + local.get $10 + f64.mul + f64.add + local.set $14 + local.get $7 + local.get $14 + local.get $12 + f64.add + local.get $13 + f64.add + local.get $11 + f64.add + f64.sqrt + f64.mul + ) + (func $../../lib/libm/assembly/libm/hypot (; 39 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + local.get $0 + local.get $1 + call $~lib/math/NativeMath.hypot + ) + (func $~lib/math/NativeMath.imul (; 40 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + local.get $0 + local.get $1 + f64.add + call $~lib/number/isFinite + i32.eqz + if + f64.const 0 + return + end + local.get $0 + call $~lib/math/dtoi32 + local.get $1 + call $~lib/math/dtoi32 + i32.mul + f64.convert_i32_s + ) + (func $../../lib/libm/assembly/libm/imul (; 41 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + local.get $0 + local.get $1 + call $~lib/math/NativeMath.imul + ) + (func $../../lib/libm/assembly/libm/log (; 42 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.log + ) + (func $~lib/math/NativeMath.log10 (; 43 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 f64) + (local $14 f64) + (local $15 f64) + (local $16 f64) + (local $17 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + i32.const 0 + local.set $3 + local.get $2 + i32.const 1048576 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $2 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i64.const 1 + i64.shl + i64.const 0 + i64.eq + if + f64.const -1 + local.get $0 + local.get $0 + f64.mul + f64.div + return + end + local.get $2 + i32.const 31 + i32.shr_u + if + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.div + return + end + local.get $3 + i32.const 54 + i32.sub + local.set $3 + local.get $0 + f64.const 18014398509481984 + f64.mul + local.set $0 + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + else + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + return + else + local.get $2 + i32.const 1072693248 + i32.eq + if (result i32) + local.get $1 + i64.const 32 + i64.shl + i64.const 0 + i64.eq + else + i32.const 0 + end + if + f64.const 0 + return + end + end + end + local.get $2 + i32.const 1072693248 + i32.const 1072079006 + i32.sub + i32.add + local.set $2 + local.get $3 + local.get $2 + i32.const 20 + i32.shr_u + i32.const 1023 + i32.sub + i32.add + local.set $3 + local.get $2 + i32.const 1048575 + i32.and + i32.const 1072079006 + i32.add + local.set $2 + local.get $2 + i64.extend_i32_u + i64.const 32 + i64.shl + local.get $1 + i64.const 4294967295 + i64.and + i64.or + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $0 + local.get $0 + f64.const 1 + f64.sub + local.set $4 + f64.const 0.5 + local.get $4 + f64.mul + local.get $4 + f64.mul + local.set $5 + local.get $4 + f64.const 2 + local.get $4 + f64.add + f64.div + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $8 + local.get $8 + f64.const 0.3999999999940942 + local.get $8 + f64.const 0.22222198432149784 + local.get $8 + f64.const 0.15313837699209373 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $9 + local.get $7 + f64.const 0.6666666666666735 + local.get $8 + f64.const 0.2857142874366239 + local.get $8 + f64.const 0.1818357216161805 + local.get $8 + f64.const 0.14798198605116586 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $10 + local.get $10 + local.get $9 + f64.add + local.set $11 + local.get $4 + local.get $5 + f64.sub + local.set $12 + local.get $12 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const -4294967296 + i64.and + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $12 + local.get $4 + local.get $12 + f64.sub + local.get $5 + f64.sub + local.get $6 + local.get $5 + local.get $11 + f64.add + f64.mul + f64.add + local.set $13 + local.get $12 + f64.const 0.4342944818781689 + f64.mul + local.set $14 + local.get $3 + f64.convert_i32_s + local.set $15 + local.get $15 + f64.const 0.30102999566361177 + f64.mul + local.set $16 + local.get $15 + f64.const 3.694239077158931e-13 + f64.mul + local.get $13 + local.get $12 + f64.add + f64.const 2.5082946711645275e-11 + f64.mul + f64.add + local.get $13 + f64.const 0.4342944818781689 + f64.mul + f64.add + local.set $17 + local.get $16 + local.get $14 + f64.add + local.set $8 + local.get $17 + local.get $16 + local.get $8 + f64.sub + local.get $14 + f64.add + f64.add + local.set $17 + local.get $17 + local.get $8 + f64.add + ) + (func $../../lib/libm/assembly/libm/log10 (; 44 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.log10 + ) + (func $../../lib/libm/assembly/libm/log1p (; 45 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.log1p + ) + (func $~lib/math/NativeMath.log2 (; 46 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 f64) + (local $14 f64) + (local $15 f64) + (local $16 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + i32.const 0 + local.set $3 + local.get $2 + i32.const 1048576 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $2 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i64.const 1 + i64.shl + i64.const 0 + i64.eq + if + f64.const -1 + local.get $0 + local.get $0 + f64.mul + f64.div + return + end + local.get $2 + i32.const 31 + i32.shr_u + if + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.div + return + end + local.get $3 + i32.const 54 + i32.sub + local.set $3 + local.get $0 + f64.const 18014398509481984 + f64.mul + local.set $0 + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + else + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + return + else + local.get $2 + i32.const 1072693248 + i32.eq + if (result i32) + local.get $1 + i64.const 32 + i64.shl + i64.const 0 + i64.eq + else + i32.const 0 + end + if + f64.const 0 + return + end + end + end + local.get $2 + i32.const 1072693248 + i32.const 1072079006 + i32.sub + i32.add + local.set $2 + local.get $3 + local.get $2 + i32.const 20 + i32.shr_u + i32.const 1023 + i32.sub + i32.add + local.set $3 + local.get $2 + i32.const 1048575 + i32.and + i32.const 1072079006 + i32.add + local.set $2 + local.get $2 + i64.extend_i32_u + i64.const 32 + i64.shl + local.get $1 + i64.const 4294967295 + i64.and + i64.or + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $0 + local.get $0 + f64.const 1 + f64.sub + local.set $4 + f64.const 0.5 + local.get $4 + f64.mul + local.get $4 + f64.mul + local.set $5 + local.get $4 + f64.const 2 + local.get $4 + f64.add + f64.div + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $8 + local.get $8 + f64.const 0.3999999999940942 + local.get $8 + f64.const 0.22222198432149784 + local.get $8 + f64.const 0.15313837699209373 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $9 + local.get $7 + f64.const 0.6666666666666735 + local.get $8 + f64.const 0.2857142874366239 + local.get $8 + f64.const 0.1818357216161805 + local.get $8 + f64.const 0.14798198605116586 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $10 + local.get $10 + local.get $9 + f64.add + local.set $11 + local.get $4 + local.get $5 + f64.sub + local.set $12 + local.get $12 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const -4294967296 + i64.and + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $12 + local.get $4 + local.get $12 + f64.sub + local.get $5 + f64.sub + local.get $6 + local.get $5 + local.get $11 + f64.add + f64.mul + f64.add + local.set $13 + local.get $12 + f64.const 1.4426950407214463 + f64.mul + local.set $14 + local.get $13 + local.get $12 + f64.add + f64.const 1.6751713164886512e-10 + f64.mul + local.get $13 + f64.const 1.4426950407214463 + f64.mul + f64.add + local.set $15 + local.get $3 + f64.convert_i32_s + local.set $16 + local.get $16 + local.get $14 + f64.add + local.set $8 + local.get $15 + local.get $16 + local.get $8 + f64.sub + local.get $14 + f64.add + f64.add + local.set $15 + local.get $8 + local.set $14 + local.get $15 + local.get $14 + f64.add + ) + (func $../../lib/libm/assembly/libm/log2 (; 47 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.log2 + ) + (func $../../lib/libm/assembly/libm/max (; 48 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (local $2 f64) + (local $3 f64) + local.get $0 + local.set $3 + local.get $1 + local.set $2 + local.get $3 + local.get $2 + f64.max + ) + (func $../../lib/libm/assembly/libm/min (; 49 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (local $2 f64) + (local $3 f64) + local.get $0 + local.set $3 + local.get $1 + local.set $2 + local.get $3 + local.get $2 + f64.min + ) + (func $~lib/math/NativeMath.pow (; 50 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (local $2 i64) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 f64) + (local $16 f64) + (local $17 f64) + (local $18 f64) + (local $19 f64) + (local $20 f64) + (local $21 f64) + (local $22 f64) + (local $23 f64) + (local $24 f64) + (local $25 f64) + (local $26 f64) + (local $27 f64) + (local $28 i32) + (local $29 i32) + (local $30 f64) + (local $31 f64) + (local $32 f64) + (local $33 f64) + (local $34 f64) + (local $35 f64) + (local $36 f64) + (local $37 f64) + (local $38 f64) + (local $39 f64) + (local $40 f64) + (local $41 i32) + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $3 + local.get $2 + i32.wrap_i64 + local.set $4 + local.get $1 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $5 + local.get $2 + i32.wrap_i64 + local.set $6 + local.get $3 + i32.const 2147483647 + i32.and + local.set $7 + local.get $5 + i32.const 2147483647 + i32.and + local.set $8 + local.get $8 + local.get $6 + i32.or + i32.const 0 + i32.eq + if + f64.const 1 + return + end + local.get $7 + i32.const 2146435072 + i32.gt_s + if (result i32) + i32.const 1 + else + local.get $7 + i32.const 2146435072 + i32.eq + if (result i32) + local.get $4 + i32.const 0 + i32.ne + else + i32.const 0 + end + end + if (result i32) + i32.const 1 + else + local.get $8 + i32.const 2146435072 + i32.gt_s + end + if (result i32) + i32.const 1 + else + local.get $8 + i32.const 2146435072 + i32.eq + if (result i32) + local.get $6 + i32.const 0 + i32.ne + else + i32.const 0 + end + end + if + local.get $0 + local.get $1 + f64.add + return + end + i32.const 0 + local.set $9 + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $8 + i32.const 1128267776 + i32.ge_s + if + i32.const 2 + local.set $9 + else + local.get $8 + i32.const 1072693248 + i32.ge_s + if + local.get $8 + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + local.set $10 + local.get $10 + i32.const 20 + i32.gt_s + local.set $11 + i32.const 52 + i32.const 20 + local.get $11 + select + local.get $10 + i32.sub + local.set $12 + local.get $6 + local.get $8 + local.get $11 + select + local.set $13 + local.get $13 + local.get $12 + i32.shr_s + local.set $14 + local.get $14 + local.get $12 + i32.shl + local.get $13 + i32.eq + if + i32.const 2 + local.get $14 + i32.const 1 + i32.and + i32.sub + local.set $9 + end + end + end + end + local.get $6 + i32.const 0 + i32.eq + if + local.get $8 + i32.const 2146435072 + i32.eq + if + local.get $7 + i32.const 1072693248 + i32.sub + local.get $4 + i32.or + i32.const 0 + i32.eq + if + f64.const nan:0x8000000000000 + return + else + local.get $7 + i32.const 1072693248 + i32.ge_s + if + local.get $5 + i32.const 0 + i32.ge_s + if (result f64) + local.get $1 + else + f64.const 0 + end + return + else + local.get $5 + i32.const 0 + i32.ge_s + if (result f64) + f64.const 0 + else + local.get $1 + f64.neg + end + return + end + unreachable + end + unreachable + end + local.get $8 + i32.const 1072693248 + i32.eq + if + local.get $5 + i32.const 0 + i32.ge_s + if + local.get $0 + return + end + f64.const 1 + local.get $0 + f64.div + return + end + local.get $5 + i32.const 1073741824 + i32.eq + if + local.get $0 + local.get $0 + f64.mul + return + end + local.get $5 + i32.const 1071644672 + i32.eq + if + local.get $3 + i32.const 0 + i32.ge_s + if + local.get $0 + f64.sqrt + return + end + end + end + local.get $0 + f64.abs + local.set $15 + local.get $4 + i32.const 0 + i32.eq + if + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $7 + i32.const 2146435072 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $7 + i32.const 1072693248 + i32.eq + end + if + local.get $15 + local.set $16 + local.get $5 + i32.const 0 + i32.lt_s + if + f64.const 1 + local.get $16 + f64.div + local.set $16 + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $7 + i32.const 1072693248 + i32.sub + local.get $9 + i32.or + i32.const 0 + i32.eq + if + local.get $16 + local.get $16 + f64.sub + local.set $17 + local.get $17 + local.get $17 + f64.div + local.set $16 + else + local.get $9 + i32.const 1 + i32.eq + if + local.get $16 + f64.neg + local.set $16 + end + end + end + local.get $16 + return + end + end + f64.const 1 + local.set $18 + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $9 + i32.const 0 + i32.eq + if + local.get $0 + local.get $0 + f64.sub + local.set $17 + local.get $17 + local.get $17 + f64.div + return + end + local.get $9 + i32.const 1 + i32.eq + if + f64.const -1 + local.set $18 + end + end + local.get $8 + i32.const 1105199104 + i32.gt_s + if + local.get $8 + i32.const 1139802112 + i32.gt_s + if + local.get $7 + i32.const 1072693247 + i32.le_s + if + local.get $5 + i32.const 0 + i32.lt_s + if (result f64) + f64.const 1.e+300 + f64.const 1.e+300 + f64.mul + else + f64.const 1e-300 + f64.const 1e-300 + f64.mul + end + return + end + local.get $7 + i32.const 1072693248 + i32.ge_s + if + local.get $5 + i32.const 0 + i32.gt_s + if (result f64) + f64.const 1.e+300 + f64.const 1.e+300 + f64.mul + else + f64.const 1e-300 + f64.const 1e-300 + f64.mul + end + return + end + end + local.get $7 + i32.const 1072693247 + i32.lt_s + if + local.get $5 + i32.const 0 + i32.lt_s + if (result f64) + local.get $18 + f64.const 1.e+300 + f64.mul + f64.const 1.e+300 + f64.mul + else + local.get $18 + f64.const 1e-300 + f64.mul + f64.const 1e-300 + f64.mul + end + return + end + local.get $7 + i32.const 1072693248 + i32.gt_s + if + local.get $5 + i32.const 0 + i32.gt_s + if (result f64) + local.get $18 + f64.const 1.e+300 + f64.mul + f64.const 1.e+300 + f64.mul + else + local.get $18 + f64.const 1e-300 + f64.mul + f64.const 1e-300 + f64.mul + end + return + end + local.get $15 + f64.const 1 + f64.sub + local.set $24 + local.get $24 + local.get $24 + f64.mul + f64.const 0.5 + local.get $24 + f64.const 0.3333333333333333 + local.get $24 + f64.const 0.25 + f64.mul + f64.sub + f64.mul + f64.sub + f64.mul + local.set $27 + f64.const 1.4426950216293335 + local.get $24 + f64.mul + local.set $25 + local.get $24 + f64.const 1.9259629911266175e-08 + f64.mul + local.get $27 + f64.const 1.4426950408889634 + f64.mul + f64.sub + local.set $26 + local.get $25 + local.get $26 + f64.add + local.set $19 + local.get $19 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $19 + local.get $26 + local.get $19 + local.get $25 + f64.sub + f64.sub + local.set $20 + else + i32.const 0 + local.set $29 + local.get $7 + i32.const 1048576 + i32.lt_s + if + local.get $15 + f64.const 9007199254740992 + f64.mul + local.set $15 + local.get $29 + i32.const 53 + i32.sub + local.set $29 + local.get $15 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $7 + end + local.get $29 + local.get $7 + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + i32.add + local.set $29 + local.get $7 + i32.const 1048575 + i32.and + local.set $28 + local.get $28 + i32.const 1072693248 + i32.or + local.set $7 + local.get $28 + i32.const 235662 + i32.le_s + if + i32.const 0 + local.set $10 + else + local.get $28 + i32.const 767610 + i32.lt_s + if + i32.const 1 + local.set $10 + else + i32.const 0 + local.set $10 + local.get $29 + i32.const 1 + i32.add + local.set $29 + local.get $7 + i32.const 1048576 + i32.sub + local.set $7 + end + end + local.get $15 + i64.reinterpret_f64 + i64.const 4294967295 + i64.and + local.get $7 + i64.extend_i32_s + i64.const 32 + i64.shl + i64.or + f64.reinterpret_i64 + local.set $15 + f64.const 1.5 + f64.const 1 + local.get $10 + select + local.set $35 + local.get $15 + local.get $35 + f64.sub + local.set $25 + f64.const 1 + local.get $15 + local.get $35 + f64.add + f64.div + local.set $26 + local.get $25 + local.get $26 + f64.mul + local.set $17 + local.get $17 + local.set $31 + local.get $31 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $31 + local.get $7 + i32.const 1 + i32.shr_s + i32.const 536870912 + i32.or + i32.const 524288 + i32.add + local.get $10 + i32.const 18 + i32.shl + i32.add + i64.extend_i32_s + i64.const 32 + i64.shl + f64.reinterpret_i64 + local.set $33 + local.get $15 + local.get $33 + local.get $35 + f64.sub + f64.sub + local.set $34 + local.get $26 + local.get $25 + local.get $31 + local.get $33 + f64.mul + f64.sub + local.get $31 + local.get $34 + f64.mul + f64.sub + f64.mul + local.set $32 + local.get $17 + local.get $17 + f64.mul + local.set $30 + local.get $30 + local.get $30 + f64.mul + f64.const 0.5999999999999946 + local.get $30 + f64.const 0.4285714285785502 + local.get $30 + f64.const 0.33333332981837743 + local.get $30 + f64.const 0.272728123808534 + local.get $30 + f64.const 0.23066074577556175 + local.get $30 + f64.const 0.20697501780033842 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $23 + local.get $23 + local.get $32 + local.get $31 + local.get $17 + f64.add + f64.mul + f64.add + local.set $23 + local.get $31 + local.get $31 + f64.mul + local.set $30 + f64.const 3 + local.get $30 + f64.add + local.get $23 + f64.add + local.set $33 + local.get $33 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $33 + local.get $23 + local.get $33 + f64.const 3 + f64.sub + local.get $30 + f64.sub + f64.sub + local.set $34 + local.get $31 + local.get $33 + f64.mul + local.set $25 + local.get $32 + local.get $33 + f64.mul + local.get $34 + local.get $17 + f64.mul + f64.add + local.set $26 + local.get $25 + local.get $26 + f64.add + local.set $21 + local.get $21 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $21 + local.get $26 + local.get $21 + local.get $25 + f64.sub + f64.sub + local.set $22 + f64.const 0.9617967009544373 + local.get $21 + f64.mul + local.set $36 + f64.const 1.350039202129749e-08 + f64.const 0 + local.get $10 + select + local.set $37 + f64.const -7.028461650952758e-09 + local.get $21 + f64.mul + local.get $22 + f64.const 0.9617966939259756 + f64.mul + f64.add + local.get $37 + f64.add + local.set $38 + local.get $29 + f64.convert_i32_s + local.set $24 + f64.const 0.5849624872207642 + f64.const 0 + local.get $10 + select + local.set $39 + local.get $36 + local.get $38 + f64.add + local.get $39 + f64.add + local.get $24 + f64.add + local.set $19 + local.get $19 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $19 + local.get $38 + local.get $19 + local.get $24 + f64.sub + local.get $39 + f64.sub + local.get $36 + f64.sub + f64.sub + local.set $20 + end + local.get $1 + local.set $40 + local.get $40 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $40 + local.get $1 + local.get $40 + f64.sub + local.get $19 + f64.mul + local.get $1 + local.get $20 + f64.mul + f64.add + local.set $22 + local.get $40 + local.get $19 + f64.mul + local.set $21 + local.get $22 + local.get $21 + f64.add + local.set $16 + local.get $16 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $28 + local.get $2 + i32.wrap_i64 + local.set $41 + local.get $28 + i32.const 1083179008 + i32.ge_s + if + local.get $28 + i32.const 1083179008 + i32.sub + local.get $41 + i32.or + i32.const 0 + i32.ne + if + local.get $18 + f64.const 1.e+300 + f64.mul + f64.const 1.e+300 + f64.mul + return + end + local.get $22 + f64.const 8.008566259537294e-17 + f64.add + local.get $16 + local.get $21 + f64.sub + f64.gt + if + local.get $18 + f64.const 1.e+300 + f64.mul + f64.const 1.e+300 + f64.mul + return + end + else + local.get $28 + i32.const 2147483647 + i32.and + i32.const 1083231232 + i32.ge_s + if + local.get $28 + i32.const -1064252416 + i32.sub + local.get $41 + i32.or + i32.const 0 + i32.ne + if + local.get $18 + f64.const 1e-300 + f64.mul + f64.const 1e-300 + f64.mul + return + end + local.get $22 + local.get $16 + local.get $21 + f64.sub + f64.le + if + local.get $18 + f64.const 1e-300 + f64.mul + f64.const 1e-300 + f64.mul + return + end + end + end + local.get $28 + i32.const 2147483647 + i32.and + local.set $41 + local.get $41 + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + local.set $10 + i32.const 0 + local.set $29 + local.get $41 + i32.const 1071644672 + i32.gt_s + if + local.get $28 + i32.const 1048576 + local.get $10 + i32.const 1 + i32.add + i32.shr_s + i32.add + local.set $29 + local.get $29 + i32.const 2147483647 + i32.and + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + local.set $10 + f64.const 0 + local.set $24 + local.get $29 + i32.const 1048575 + local.get $10 + i32.shr_s + i32.const -1 + i32.xor + i32.and + i64.extend_i32_s + i64.const 32 + i64.shl + f64.reinterpret_i64 + local.set $24 + local.get $29 + i32.const 1048575 + i32.and + i32.const 1048576 + i32.or + i32.const 20 + local.get $10 + i32.sub + i32.shr_s + local.set $29 + local.get $28 + i32.const 0 + i32.lt_s + if + i32.const 0 + local.get $29 + i32.sub + local.set $29 + end + local.get $21 + local.get $24 + f64.sub + local.set $21 + end + local.get $22 + local.get $21 + f64.add + local.set $24 + local.get $24 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $24 + local.get $24 + f64.const 0.6931471824645996 + f64.mul + local.set $25 + local.get $22 + local.get $24 + local.get $21 + f64.sub + f64.sub + f64.const 0.6931471805599453 + f64.mul + local.get $24 + f64.const -1.904654299957768e-09 + f64.mul + f64.add + local.set $26 + local.get $25 + local.get $26 + f64.add + local.set $16 + local.get $26 + local.get $16 + local.get $25 + f64.sub + f64.sub + local.set $27 + local.get $16 + local.get $16 + f64.mul + local.set $24 + local.get $16 + local.get $24 + f64.const 0.16666666666666602 + local.get $24 + f64.const -2.7777777777015593e-03 + local.get $24 + f64.const 6.613756321437934e-05 + local.get $24 + f64.const -1.6533902205465252e-06 + local.get $24 + f64.const 4.1381367970572385e-08 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.sub + local.set $19 + local.get $16 + local.get $19 + f64.mul + local.get $19 + f64.const 2 + f64.sub + f64.div + local.get $27 + local.get $16 + local.get $27 + f64.mul + f64.add + f64.sub + local.set $23 + f64.const 1 + local.get $23 + local.get $16 + f64.sub + f64.sub + local.set $16 + local.get $16 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $28 + local.get $28 + local.get $29 + i32.const 20 + i32.shl + i32.add + local.set $28 + local.get $28 + i32.const 20 + i32.shr_s + i32.const 0 + i32.le_s + if + local.get $16 + local.get $29 + call $~lib/math/NativeMath.scalbn + local.set $16 + else + local.get $16 + i64.reinterpret_f64 + i64.const 4294967295 + i64.and + local.get $28 + i64.extend_i32_s + i64.const 32 + i64.shl + i64.or + f64.reinterpret_i64 + local.set $16 + end + local.get $18 + local.get $16 + f64.mul + ) + (func $../../lib/libm/assembly/libm/pow (; 51 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + local.get $0 + local.get $1 + call $~lib/math/NativeMath.pow + ) + (func $../../lib/libm/assembly/libm/round (; 52 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 f64) + local.get $0 + local.set $1 + local.get $1 + f64.const 0.5 + f64.add + f64.floor + local.get $1 + f64.copysign + ) + (func $../../lib/libm/assembly/libm/sign (; 53 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 f64) + block $~lib/math/NativeMath.sign|inlined.0 (result f64) + local.get $0 + local.set $1 + local.get $1 + f64.const 0 + f64.gt + if (result f64) + f64.const 1 + else + local.get $1 + f64.const 0 + f64.lt + if (result f64) + f64.const -1 + else + local.get $1 + end + end + br $~lib/math/NativeMath.sign|inlined.0 + end + ) + (func $~lib/math/NativeMath.sin (; 54 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 i64) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 f64) + (local $17 i32) + (local $18 f64) + (local $19 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + local.get $2 + i32.const 31 + i32.shr_u + local.set $3 + local.get $2 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1072243195 + i32.le_u + if + local.get $2 + i32.const 1045430272 + i32.lt_u + if + local.get $0 + return + end + block $~lib/math/sin_kern|inlined.1 (result f64) + local.get $0 + local.set $6 + f64.const 0 + local.set $5 + i32.const 0 + local.set $4 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $8 + f64.const 0.00833333333332249 + local.get $7 + f64.const -1.984126982985795e-04 + local.get $7 + f64.const 2.7557313707070068e-06 + f64.mul + f64.add + f64.mul + f64.add + local.get $7 + local.get $8 + f64.mul + f64.const -2.5050760253406863e-08 + local.get $7 + f64.const 1.58969099521155e-10 + f64.mul + f64.add + f64.mul + f64.add + local.set $9 + local.get $7 + local.get $6 + f64.mul + local.set $10 + local.get $4 + i32.eqz + if + local.get $6 + local.get $10 + f64.const -0.16666666666666632 + local.get $7 + local.get $9 + f64.mul + f64.add + f64.mul + f64.add + br $~lib/math/sin_kern|inlined.1 + else + local.get $6 + local.get $7 + f64.const 0.5 + local.get $5 + f64.mul + local.get $10 + local.get $9 + f64.mul + f64.sub + f64.mul + local.get $5 + f64.sub + local.get $10 + f64.const -0.16666666666666632 + f64.mul + f64.sub + f64.sub + br $~lib/math/sin_kern|inlined.1 + end + unreachable + end + return + end + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + local.get $0 + f64.sub + return + end + block $~lib/math/rempio2|inlined.1 (result i32) + local.get $0 + local.set $5 + local.get $1 + local.set $11 + local.get $3 + local.set $4 + local.get $11 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 2147483647 + i32.and + local.set $12 + local.get $12 + i32.const 1073928572 + i32.lt_u + if + i32.const 1 + local.set $13 + local.get $4 + i32.eqz + if + local.get $5 + f64.const 1.5707963267341256 + f64.sub + local.set $10 + local.get $12 + i32.const 1073291771 + i32.ne + if + local.get $10 + f64.const 6.077100506506192e-11 + f64.sub + local.set $9 + local.get $10 + local.get $9 + f64.sub + f64.const 6.077100506506192e-11 + f64.sub + local.set $8 + else + local.get $10 + f64.const 6.077100506303966e-11 + f64.sub + local.set $10 + local.get $10 + f64.const 2.0222662487959506e-21 + f64.sub + local.set $9 + local.get $10 + local.get $9 + f64.sub + f64.const 2.0222662487959506e-21 + f64.sub + local.set $8 + end + else + local.get $5 + f64.const 1.5707963267341256 + f64.add + local.set $10 + local.get $12 + i32.const 1073291771 + i32.ne + if + local.get $10 + f64.const 6.077100506506192e-11 + f64.add + local.set $9 + local.get $10 + local.get $9 + f64.sub + f64.const 6.077100506506192e-11 + f64.add + local.set $8 + else + local.get $10 + f64.const 6.077100506303966e-11 + f64.add + local.set $10 + local.get $10 + f64.const 2.0222662487959506e-21 + f64.add + local.set $9 + local.get $10 + local.get $9 + f64.sub + f64.const 2.0222662487959506e-21 + f64.add + local.set $8 + end + i32.const -1 + local.set $13 + end + local.get $9 + global.set $~lib/math/rempio2_y0 + local.get $8 + global.set $~lib/math/rempio2_y1 + local.get $13 + br $~lib/math/rempio2|inlined.1 + end + local.get $12 + i32.const 1094263291 + i32.lt_u + if + local.get $5 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $8 + local.get $5 + local.get $8 + f64.const 1.5707963267341256 + f64.mul + f64.sub + local.set $9 + local.get $8 + f64.const 6.077100506506192e-11 + f64.mul + local.set $10 + local.get $12 + i32.const 20 + i32.shr_u + local.set $13 + local.get $9 + local.get $10 + f64.sub + local.set $7 + local.get $7 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $14 + local.get $13 + local.get $14 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $15 + local.get $15 + i32.const 16 + i32.gt_u + if + local.get $9 + local.set $6 + local.get $8 + f64.const 6.077100506303966e-11 + f64.mul + local.set $10 + local.get $6 + local.get $10 + f64.sub + local.set $9 + local.get $8 + f64.const 2.0222662487959506e-21 + f64.mul + local.get $6 + local.get $9 + f64.sub + local.get $10 + f64.sub + f64.sub + local.set $10 + local.get $9 + local.get $10 + f64.sub + local.set $7 + local.get $7 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $14 + local.get $13 + local.get $14 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $15 + local.get $15 + i32.const 49 + i32.gt_u + if + local.get $9 + local.set $16 + local.get $8 + f64.const 2.0222662487111665e-21 + f64.mul + local.set $10 + local.get $16 + local.get $10 + f64.sub + local.set $9 + local.get $8 + f64.const 8.4784276603689e-32 + f64.mul + local.get $16 + local.get $9 + f64.sub + local.get $10 + f64.sub + f64.sub + local.set $10 + local.get $9 + local.get $10 + f64.sub + local.set $7 + end + end + local.get $9 + local.get $7 + f64.sub + local.get $10 + f64.sub + local.set $6 + local.get $7 + global.set $~lib/math/rempio2_y0 + local.get $6 + global.set $~lib/math/rempio2_y1 + local.get $8 + i32.trunc_f64_s + br $~lib/math/rempio2|inlined.1 + end + local.get $5 + local.get $11 + call $~lib/math/pio2_large_quot + local.set $15 + i32.const 0 + local.get $15 + i32.sub + local.get $15 + local.get $4 + select + end + local.set $17 + global.get $~lib/math/rempio2_y0 + local.set $18 + global.get $~lib/math/rempio2_y1 + local.set $19 + local.get $17 + i32.const 1 + i32.and + if (result f64) + local.get $18 + local.set $8 + local.get $19 + local.set $16 + local.get $8 + local.get $8 + f64.mul + local.set $5 + local.get $5 + local.get $5 + f64.mul + local.set $6 + local.get $5 + f64.const 0.0416666666666666 + local.get $5 + f64.const -0.001388888888887411 + local.get $5 + f64.const 2.480158728947673e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.get $6 + local.get $6 + f64.mul + f64.const -2.7557314351390663e-07 + local.get $5 + f64.const 2.087572321298175e-09 + local.get $5 + f64.const -1.1359647557788195e-11 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $7 + f64.const 0.5 + local.get $5 + f64.mul + local.set $10 + f64.const 1 + local.get $10 + f64.sub + local.set $6 + local.get $6 + f64.const 1 + local.get $6 + f64.sub + local.get $10 + f64.sub + local.get $5 + local.get $7 + f64.mul + local.get $8 + local.get $16 + f64.mul + f64.sub + f64.add + f64.add + else + block $~lib/math/sin_kern|inlined.2 (result f64) + local.get $18 + local.set $16 + local.get $19 + local.set $9 + i32.const 1 + local.set $13 + local.get $16 + local.get $16 + f64.mul + local.set $10 + local.get $10 + local.get $10 + f64.mul + local.set $7 + f64.const 0.00833333333332249 + local.get $10 + f64.const -1.984126982985795e-04 + local.get $10 + f64.const 2.7557313707070068e-06 + f64.mul + f64.add + f64.mul + f64.add + local.get $10 + local.get $7 + f64.mul + f64.const -2.5050760253406863e-08 + local.get $10 + f64.const 1.58969099521155e-10 + f64.mul + f64.add + f64.mul + f64.add + local.set $6 + local.get $10 + local.get $16 + f64.mul + local.set $5 + local.get $13 + i32.eqz + if + local.get $16 + local.get $5 + f64.const -0.16666666666666632 + local.get $10 + local.get $6 + f64.mul + f64.add + f64.mul + f64.add + br $~lib/math/sin_kern|inlined.2 + else + local.get $16 + local.get $10 + f64.const 0.5 + local.get $9 + f64.mul + local.get $5 + local.get $6 + f64.mul + f64.sub + f64.mul + local.get $9 + f64.sub + local.get $5 + f64.const -0.16666666666666632 + f64.mul + f64.sub + f64.sub + br $~lib/math/sin_kern|inlined.2 + end + unreachable + end + end + local.set $0 + local.get $17 + i32.const 2 + i32.and + if (result f64) + local.get $0 + f64.neg + else + local.get $0 + end + ) + (func $../../lib/libm/assembly/libm/sin (; 55 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.sin + ) + (func $~lib/math/NativeMath.sinh (; 56 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 f64) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + local.get $0 + i64.reinterpret_f64 + i64.const 9223372036854775807 + i64.and + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $2 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $3 + f64.const 0.5 + local.get $0 + f64.copysign + local.set $5 + local.get $3 + i32.const 1082535490 + i32.lt_u + if + local.get $2 + call $~lib/math/NativeMath.expm1 + local.set $4 + local.get $3 + i32.const 1072693248 + i32.lt_u + if + local.get $3 + i32.const 1045430272 + i32.lt_u + if + local.get $0 + return + end + local.get $5 + f64.const 2 + local.get $4 + f64.mul + local.get $4 + local.get $4 + f64.mul + local.get $4 + f64.const 1 + f64.add + f64.div + f64.sub + f64.mul + return + end + local.get $5 + local.get $4 + local.get $4 + local.get $4 + f64.const 1 + f64.add + f64.div + f64.add + f64.mul + return + end + f64.const 2 + local.get $5 + f64.mul + local.get $2 + local.set $6 + i32.const 1023 + i32.const 2043 + i32.const 2 + i32.div_u + i32.add + i32.const 20 + i32.shl + i64.extend_i32_u + i64.const 32 + i64.shl + f64.reinterpret_i64 + local.set $7 + local.get $6 + f64.const 1416.0996898839683 + f64.sub + call $~lib/math/NativeMath.exp + local.get $7 + f64.mul + local.get $7 + f64.mul + f64.mul + local.set $4 + local.get $4 + ) + (func $../../lib/libm/assembly/libm/sinh (; 57 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.sinh + ) + (func $../../lib/libm/assembly/libm/sqrt (; 58 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 f64) + local.get $0 + local.set $1 + local.get $1 + f64.sqrt + ) + (func $~lib/math/tan_kern (; 59 ;) (type $FUNCSIG$dddi) (param $0 f64) (param $1 f64) (param $2 i32) (result f64) + (local $3 f64) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 f64) + (local $12 f64) + local.get $0 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $8 + local.get $8 + i32.const 2147483647 + i32.and + local.set $9 + local.get $9 + i32.const 1072010280 + i32.ge_s + local.set $10 + local.get $10 + if + local.get $8 + i32.const 0 + i32.lt_s + if + local.get $0 + f64.neg + local.set $0 + local.get $1 + f64.neg + local.set $1 + end + f64.const 0.7853981633974483 + local.get $0 + f64.sub + local.set $3 + f64.const 3.061616997868383e-17 + local.get $1 + f64.sub + local.set $6 + local.get $3 + local.get $6 + f64.add + local.set $0 + f64.const 0 + local.set $1 + end + local.get $0 + local.get $0 + f64.mul + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $6 + f64.const 0.13333333333320124 + local.get $6 + f64.const 0.021869488294859542 + local.get $6 + f64.const 3.5920791075913124e-03 + local.get $6 + f64.const 5.880412408202641e-04 + local.get $6 + f64.const 7.817944429395571e-05 + local.get $6 + f64.const -1.8558637485527546e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $4 + local.get $3 + f64.const 0.05396825397622605 + local.get $6 + f64.const 0.0088632398235993 + local.get $6 + f64.const 1.4562094543252903e-03 + local.get $6 + f64.const 2.464631348184699e-04 + local.get $6 + f64.const 7.140724913826082e-05 + local.get $6 + f64.const 2.590730518636337e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $5 + local.get $3 + local.get $0 + f64.mul + local.set $7 + local.get $1 + local.get $3 + local.get $7 + local.get $4 + local.get $5 + f64.add + f64.mul + local.get $1 + f64.add + f64.mul + f64.add + local.set $4 + local.get $4 + f64.const 0.3333333333333341 + local.get $7 + f64.mul + f64.add + local.set $4 + local.get $0 + local.get $4 + f64.add + local.set $6 + local.get $10 + if + local.get $2 + f64.convert_i32_s + local.set $5 + f64.const 1 + local.get $8 + i32.const 30 + i32.shr_s + i32.const 2 + i32.and + f64.convert_i32_s + f64.sub + local.get $5 + f64.const 2 + local.get $0 + local.get $6 + local.get $6 + f64.mul + local.get $6 + local.get $5 + f64.add + f64.div + local.get $4 + f64.sub + f64.sub + f64.mul + f64.sub + f64.mul + return + end + local.get $2 + i32.const 1 + i32.eq + if + local.get $6 + return + end + local.get $6 + local.set $3 + local.get $3 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $3 + local.get $4 + local.get $3 + local.get $0 + f64.sub + f64.sub + local.set $5 + f64.const 1 + f64.neg + local.get $6 + f64.div + local.tee $11 + local.set $12 + local.get $12 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $12 + f64.const 1 + local.get $12 + local.get $3 + f64.mul + f64.add + local.set $7 + local.get $12 + local.get $11 + local.get $7 + local.get $12 + local.get $5 + f64.mul + f64.add + f64.mul + f64.add + ) + (func $~lib/math/NativeMath.tan (; 60 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i64) + (local $6 f64) + (local $7 i32) + (local $8 i32) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 i32) + (local $14 i32) + (local $15 f64) + (local $16 f64) + (local $17 i32) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + local.get $2 + i32.const 31 + i32.shr_u + local.set $3 + local.get $2 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1072243195 + i32.le_s + if + local.get $2 + i32.const 1044381696 + i32.lt_s + if + local.get $0 + return + end + local.get $0 + f64.const 0 + i32.const 1 + call $~lib/math/tan_kern + return + end + local.get $2 + i32.const 2146435072 + i32.ge_s + if + local.get $0 + local.get $0 + f64.sub + return + end + block $~lib/math/rempio2|inlined.2 (result i32) + local.get $0 + local.set $6 + local.get $1 + local.set $5 + local.get $3 + local.set $4 + local.get $5 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 2147483647 + i32.and + local.set $7 + local.get $7 + i32.const 1073928572 + i32.lt_u + if + i32.const 1 + local.set $8 + local.get $4 + i32.eqz + if + local.get $6 + f64.const 1.5707963267341256 + f64.sub + local.set $9 + local.get $7 + i32.const 1073291771 + i32.ne + if + local.get $9 + f64.const 6.077100506506192e-11 + f64.sub + local.set $10 + local.get $9 + local.get $10 + f64.sub + f64.const 6.077100506506192e-11 + f64.sub + local.set $11 + else + local.get $9 + f64.const 6.077100506303966e-11 + f64.sub + local.set $9 + local.get $9 + f64.const 2.0222662487959506e-21 + f64.sub + local.set $10 + local.get $9 + local.get $10 + f64.sub + f64.const 2.0222662487959506e-21 + f64.sub + local.set $11 + end + else + local.get $6 + f64.const 1.5707963267341256 + f64.add + local.set $9 + local.get $7 + i32.const 1073291771 + i32.ne + if + local.get $9 + f64.const 6.077100506506192e-11 + f64.add + local.set $10 + local.get $9 + local.get $10 + f64.sub + f64.const 6.077100506506192e-11 + f64.add + local.set $11 + else + local.get $9 + f64.const 6.077100506303966e-11 + f64.add + local.set $9 + local.get $9 + f64.const 2.0222662487959506e-21 + f64.add + local.set $10 + local.get $9 + local.get $10 + f64.sub + f64.const 2.0222662487959506e-21 + f64.add + local.set $11 + end + i32.const -1 + local.set $8 + end + local.get $10 + global.set $~lib/math/rempio2_y0 + local.get $11 + global.set $~lib/math/rempio2_y1 + local.get $8 + br $~lib/math/rempio2|inlined.2 + end + local.get $7 + i32.const 1094263291 + i32.lt_u + if + local.get $6 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $11 + local.get $6 + local.get $11 + f64.const 1.5707963267341256 + f64.mul + f64.sub + local.set $10 + local.get $11 + f64.const 6.077100506506192e-11 + f64.mul + local.set $9 + local.get $7 + i32.const 20 + i32.shr_u + local.set $8 + local.get $10 + local.get $9 + f64.sub + local.set $12 + local.get $12 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $13 + local.get $8 + local.get $13 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $14 + local.get $14 + i32.const 16 + i32.gt_u + if + local.get $10 + local.set $15 + local.get $11 + f64.const 6.077100506303966e-11 + f64.mul + local.set $9 + local.get $15 + local.get $9 + f64.sub + local.set $10 + local.get $11 + f64.const 2.0222662487959506e-21 + f64.mul + local.get $15 + local.get $10 + f64.sub + local.get $9 + f64.sub + f64.sub + local.set $9 + local.get $10 + local.get $9 + f64.sub + local.set $12 + local.get $12 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $13 + local.get $8 + local.get $13 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $14 + local.get $14 + i32.const 49 + i32.gt_u + if + local.get $10 + local.set $16 + local.get $11 + f64.const 2.0222662487111665e-21 + f64.mul + local.set $9 + local.get $16 + local.get $9 + f64.sub + local.set $10 + local.get $11 + f64.const 8.4784276603689e-32 + f64.mul + local.get $16 + local.get $10 + f64.sub + local.get $9 + f64.sub + f64.sub + local.set $9 + local.get $10 + local.get $9 + f64.sub + local.set $12 + end + end + local.get $10 + local.get $12 + f64.sub + local.get $9 + f64.sub + local.set $15 + local.get $12 + global.set $~lib/math/rempio2_y0 + local.get $15 + global.set $~lib/math/rempio2_y1 + local.get $11 + i32.trunc_f64_s + br $~lib/math/rempio2|inlined.2 + end + local.get $6 + local.get $5 + call $~lib/math/pio2_large_quot + local.set $14 + i32.const 0 + local.get $14 + i32.sub + local.get $14 + local.get $4 + select + end + local.set $17 + global.get $~lib/math/rempio2_y0 + global.get $~lib/math/rempio2_y1 + i32.const 1 + local.get $17 + i32.const 1 + i32.and + i32.const 1 + i32.shl + i32.sub + call $~lib/math/tan_kern + ) + (func $../../lib/libm/assembly/libm/tan (; 61 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.tan + ) + (func $~lib/math/NativeMath.tanh (; 62 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 f64) + (local $3 i32) + (local $4 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 9223372036854775807 + i64.and + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $2 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $3 + local.get $3 + i32.const 1071748074 + i32.gt_u + if + local.get $3 + i32.const 1077149696 + i32.gt_u + if + f64.const 1 + f64.const 0 + local.get $2 + f64.div + f64.sub + local.set $4 + else + f64.const 2 + local.get $2 + f64.mul + call $~lib/math/NativeMath.expm1 + local.set $4 + f64.const 1 + f64.const 2 + local.get $4 + f64.const 2 + f64.add + f64.div + f64.sub + local.set $4 + end + else + local.get $3 + i32.const 1070618798 + i32.gt_u + if + f64.const 2 + local.get $2 + f64.mul + call $~lib/math/NativeMath.expm1 + local.set $4 + local.get $4 + local.get $4 + f64.const 2 + f64.add + f64.div + local.set $4 + else + local.get $3 + i32.const 1048576 + i32.ge_u + if + f64.const -2 + local.get $2 + f64.mul + call $~lib/math/NativeMath.expm1 + local.set $4 + local.get $4 + f64.neg + local.get $4 + f64.const 2 + f64.add + f64.div + local.set $4 + else + local.get $2 + local.set $4 + end + end + end + local.get $4 + local.get $0 + f64.copysign + ) + (func $../../lib/libm/assembly/libm/tanh (; 63 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/math/NativeMath.tanh + ) + (func $../../lib/libm/assembly/libm/trunc (; 64 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 f64) + local.get $0 + local.set $1 + local.get $1 + f64.trunc + ) + (func $../../lib/libm/assembly/libmf/abs (; 65 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 f32) + local.get $0 + local.set $1 + local.get $1 + f32.abs + ) + (func $~lib/math/Rf (; 66 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 f32) + (local $2 f32) + local.get $0 + f32.const 0.16666586697101593 + local.get $0 + f32.const -0.04274342209100723 + local.get $0 + f32.const -0.008656363002955914 + f32.mul + f32.add + f32.mul + f32.add + f32.mul + local.set $1 + f32.const 1 + local.get $0 + f32.const -0.7066296339035034 + f32.mul + f32.add + local.set $2 + local.get $1 + local.get $2 + f32.div + ) + (func $~lib/math/NativeMathf.acos (; 67 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f32) + (local $4 f32) + (local $5 f32) + (local $6 f32) + (local $7 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1065353216 + i32.ge_u + if + local.get $2 + i32.const 1065353216 + i32.eq + if + local.get $1 + i32.const 31 + i32.shr_u + if + f32.const 2 + f32.const 1.570796251296997 + f32.mul + f32.const 7.52316384526264e-37 + f32.add + return + end + f32.const 0 + return + end + f32.const 0 + local.get $0 + local.get $0 + f32.sub + f32.div + return + end + local.get $2 + i32.const 1056964608 + i32.lt_u + if + local.get $2 + i32.const 847249408 + i32.le_u + if + f32.const 1.570796251296997 + f32.const 7.52316384526264e-37 + f32.add + return + end + f32.const 1.570796251296997 + local.get $0 + f32.const 7.549789415861596e-08 + local.get $0 + local.get $0 + local.get $0 + f32.mul + call $~lib/math/Rf + f32.mul + f32.sub + f32.sub + f32.sub + return + end + local.get $1 + i32.const 31 + i32.shr_u + if + f32.const 0.5 + local.get $0 + f32.const 0.5 + f32.mul + f32.add + local.set $3 + local.get $3 + f32.sqrt + local.set $5 + local.get $3 + call $~lib/math/Rf + local.get $5 + f32.mul + f32.const 7.549789415861596e-08 + f32.sub + local.set $4 + f32.const 2 + f32.const 1.570796251296997 + local.get $5 + local.get $4 + f32.add + f32.sub + f32.mul + return + end + f32.const 0.5 + local.get $0 + f32.const 0.5 + f32.mul + f32.sub + local.set $3 + local.get $3 + f32.sqrt + local.set $5 + local.get $5 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $6 + local.get $3 + local.get $6 + local.get $6 + f32.mul + f32.sub + local.get $5 + local.get $6 + f32.add + f32.div + local.set $7 + local.get $3 + call $~lib/math/Rf + local.get $5 + f32.mul + local.get $7 + f32.add + local.set $4 + f32.const 2 + local.get $6 + local.get $4 + f32.add + f32.mul + ) + (func $../../lib/libm/assembly/libmf/acos (; 68 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.acos + ) + (func $~lib/math/NativeMathf.log1p (; 69 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + (local $3 f32) + (local $4 i32) + (local $5 f32) + (local $6 i32) + (local $7 f32) + (local $8 f32) + (local $9 f32) + (local $10 f32) + (local $11 f32) + (local $12 f32) + (local $13 f32) + (local $14 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + f32.const 0 + local.set $2 + f32.const 0 + local.set $3 + i32.const 1 + local.set $4 + local.get $1 + i32.const 1054086096 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i32.const -1082130432 + i32.ge_u + if + local.get $0 + f32.const -1 + f32.eq + if + local.get $0 + f32.const 0 + f32.div + return + end + local.get $0 + local.get $0 + f32.sub + f32.const 0 + f32.div + return + end + local.get $1 + i32.const 1 + i32.shl + i32.const 1728053248 + i32.lt_u + if + local.get $0 + return + end + local.get $1 + i32.const -1097468391 + i32.le_u + if + i32.const 0 + local.set $4 + f32.const 0 + local.set $2 + local.get $0 + local.set $3 + end + else + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + return + end + end + local.get $4 + if + f32.const 1 + local.get $0 + f32.add + local.set $5 + local.get $5 + i32.reinterpret_f32 + local.set $6 + local.get $6 + i32.const 1065353216 + i32.const 1060439283 + i32.sub + i32.add + local.set $6 + local.get $6 + i32.const 23 + i32.shr_u + i32.const 127 + i32.sub + local.set $4 + local.get $4 + i32.const 25 + i32.lt_s + if + local.get $4 + i32.const 2 + i32.ge_s + if (result f32) + f32.const 1 + local.get $5 + local.get $0 + f32.sub + f32.sub + else + local.get $0 + local.get $5 + f32.const 1 + f32.sub + f32.sub + end + local.set $2 + local.get $2 + local.get $5 + f32.div + local.set $2 + else + f32.const 0 + local.set $2 + end + local.get $6 + i32.const 8388607 + i32.and + i32.const 1060439283 + i32.add + local.set $6 + local.get $6 + f32.reinterpret_i32 + f32.const 1 + f32.sub + local.set $3 + end + local.get $3 + f32.const 2 + local.get $3 + f32.add + f32.div + local.set $7 + local.get $7 + local.get $7 + f32.mul + local.set $8 + local.get $8 + local.get $8 + f32.mul + local.set $9 + local.get $9 + f32.const 0.40000972151756287 + local.get $9 + f32.const 0.24279078841209412 + f32.mul + f32.add + f32.mul + local.set $10 + local.get $8 + f32.const 0.6666666269302368 + local.get $9 + f32.const 0.2849878668785095 + f32.mul + f32.add + f32.mul + local.set $11 + local.get $11 + local.get $10 + f32.add + local.set $12 + f32.const 0.5 + local.get $3 + f32.mul + local.get $3 + f32.mul + local.set $13 + local.get $4 + f32.convert_i32_s + local.set $14 + local.get $7 + local.get $13 + local.get $12 + f32.add + f32.mul + local.get $14 + f32.const 9.05800061445916e-06 + f32.mul + local.get $2 + f32.add + f32.add + local.get $13 + f32.sub + local.get $3 + f32.add + local.get $14 + f32.const 0.6931381225585938 + f32.mul + f32.add + ) + (func $~lib/math/NativeMathf.log (; 70 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f32) + (local $4 f32) + (local $5 f32) + (local $6 f32) + (local $7 f32) + (local $8 f32) + (local $9 f32) + (local $10 f32) + (local $11 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + i32.const 0 + local.set $2 + local.get $1 + i32.const 8388608 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i32.const 1 + i32.shl + i32.const 0 + i32.eq + if + f32.const -1 + local.get $0 + local.get $0 + f32.mul + f32.div + return + end + local.get $1 + i32.const 31 + i32.shr_u + if + local.get $0 + local.get $0 + f32.sub + f32.const 0 + f32.div + return + end + local.get $2 + i32.const 25 + i32.sub + local.set $2 + local.get $0 + f32.const 33554432 + f32.mul + local.set $0 + local.get $0 + i32.reinterpret_f32 + local.set $1 + else + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + return + else + local.get $1 + i32.const 1065353216 + i32.eq + if + f32.const 0 + return + end + end + end + local.get $1 + i32.const 1065353216 + i32.const 1060439283 + i32.sub + i32.add + local.set $1 + local.get $2 + local.get $1 + i32.const 23 + i32.shr_s + i32.const 127 + i32.sub + i32.add + local.set $2 + local.get $1 + i32.const 8388607 + i32.and + i32.const 1060439283 + i32.add + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $0 + local.get $0 + f32.const 1 + f32.sub + local.set $3 + local.get $3 + f32.const 2 + local.get $3 + f32.add + f32.div + local.set $4 + local.get $4 + local.get $4 + f32.mul + local.set $5 + local.get $5 + local.get $5 + f32.mul + local.set $6 + local.get $6 + f32.const 0.40000972151756287 + local.get $6 + f32.const 0.24279078841209412 + f32.mul + f32.add + f32.mul + local.set $7 + local.get $5 + f32.const 0.6666666269302368 + local.get $6 + f32.const 0.2849878668785095 + f32.mul + f32.add + f32.mul + local.set $8 + local.get $8 + local.get $7 + f32.add + local.set $9 + f32.const 0.5 + local.get $3 + f32.mul + local.get $3 + f32.mul + local.set $10 + local.get $2 + f32.convert_i32_s + local.set $11 + local.get $4 + local.get $10 + local.get $9 + f32.add + f32.mul + local.get $11 + f32.const 9.05800061445916e-06 + f32.mul + f32.add + local.get $10 + f32.sub + local.get $3 + f32.add + local.get $11 + f32.const 0.6931381225585938 + f32.mul + f32.add + ) + (func $~lib/math/NativeMathf.acosh (; 71 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1073741824 + i32.lt_u + if + local.get $0 + f32.const 1 + f32.sub + local.set $3 + local.get $3 + local.get $3 + local.get $3 + f32.const 2 + f32.add + f32.mul + f32.sqrt + f32.add + call $~lib/math/NativeMathf.log1p + return + end + local.get $2 + i32.const 1166016512 + i32.lt_u + if + f32.const 2 + local.get $0 + f32.mul + f32.const 1 + local.get $0 + local.get $0 + local.get $0 + f32.mul + f32.const 1 + f32.sub + f32.sqrt + f32.add + f32.div + f32.sub + call $~lib/math/NativeMathf.log + return + end + local.get $0 + call $~lib/math/NativeMathf.log + f32.const 0.6931471824645996 + f32.add + ) + (func $../../lib/libm/assembly/libmf/acosh (; 72 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.acosh + ) + (func $~lib/math/NativeMathf.asin (; 73 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 f32) + (local $2 i32) + (local $3 f32) + (local $4 f64) + local.get $0 + local.set $1 + local.get $0 + i32.reinterpret_f32 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1065353216 + i32.ge_u + if + local.get $2 + i32.const 1065353216 + i32.eq + if + local.get $0 + f32.const 1.5707963705062866 + f32.mul + f32.const 7.52316384526264e-37 + f32.add + return + end + f32.const 0 + local.get $0 + local.get $0 + f32.sub + f32.div + return + end + local.get $2 + i32.const 1056964608 + i32.lt_u + if + local.get $2 + i32.const 964689920 + i32.lt_u + if (result i32) + local.get $2 + i32.const 8388608 + i32.ge_u + else + i32.const 0 + end + if + local.get $0 + return + end + local.get $0 + local.get $0 + local.get $0 + local.get $0 + f32.mul + call $~lib/math/Rf + f32.mul + f32.add + return + end + f32.const 0.5 + local.get $0 + f32.abs + f32.const 0.5 + f32.mul + f32.sub + local.set $3 + local.get $3 + f64.promote_f32 + f64.sqrt + local.set $4 + f32.const 1.5707963705062866 + f64.promote_f32 + f32.const 2 + f64.promote_f32 + local.get $4 + local.get $4 + local.get $3 + call $~lib/math/Rf + f64.promote_f32 + f64.mul + f64.add + f64.mul + f64.sub + f32.demote_f64 + local.set $0 + local.get $0 + local.get $1 + f32.copysign + ) + (func $../../lib/libm/assembly/libmf/asin (; 74 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.asin + ) + (func $~lib/math/NativeMathf.asinh (; 75 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + local.get $0 + i32.reinterpret_f32 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $2 + local.get $1 + i32.const 1166016512 + i32.ge_u + if + local.get $2 + call $~lib/math/NativeMathf.log + f32.const 0.6931471824645996 + f32.add + local.set $2 + else + local.get $1 + i32.const 1073741824 + i32.ge_u + if + f32.const 2 + local.get $2 + f32.mul + f32.const 1 + local.get $2 + local.get $2 + f32.mul + f32.const 1 + f32.add + f32.sqrt + local.get $2 + f32.add + f32.div + f32.add + call $~lib/math/NativeMathf.log + local.set $2 + else + local.get $1 + i32.const 964689920 + i32.ge_u + if + local.get $2 + local.get $2 + local.get $2 + f32.mul + local.get $2 + local.get $2 + f32.mul + f32.const 1 + f32.add + f32.sqrt + f32.const 1 + f32.add + f32.div + f32.add + call $~lib/math/NativeMathf.log1p + local.set $2 + end + end + end + local.get $2 + local.get $0 + f32.copysign + ) + (func $../../lib/libm/assembly/libmf/asinh (; 76 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.asinh + ) + (func $~lib/number/isNaN (; 77 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + local.get $0 + local.get $0 + f32.ne + ) + (func $~lib/math/NativeMathf.atan (; 78 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + (local $3 f32) + (local $4 i32) + (local $5 f32) + (local $6 f32) + (local $7 f32) + (local $8 f32) + (local $9 i32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $0 + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1283457024 + i32.ge_u + if + local.get $0 + call $~lib/number/isNaN + if + local.get $0 + return + end + f32.const 1.570796251296997 + f32.const 7.52316384526264e-37 + f32.add + local.set $3 + local.get $3 + local.get $2 + f32.copysign + return + end + local.get $1 + i32.const 1054867456 + i32.lt_u + if + local.get $1 + i32.const 964689920 + i32.lt_u + if + local.get $0 + return + end + i32.const -1 + local.set $4 + else + local.get $0 + f32.abs + local.set $0 + local.get $1 + i32.const 1066926080 + i32.lt_u + if + local.get $1 + i32.const 1060110336 + i32.lt_u + if + i32.const 0 + local.set $4 + f32.const 2 + local.get $0 + f32.mul + f32.const 1 + f32.sub + f32.const 2 + local.get $0 + f32.add + f32.div + local.set $0 + else + i32.const 1 + local.set $4 + local.get $0 + f32.const 1 + f32.sub + local.get $0 + f32.const 1 + f32.add + f32.div + local.set $0 + end + else + local.get $1 + i32.const 1075576832 + i32.lt_u + if + i32.const 2 + local.set $4 + local.get $0 + f32.const 1.5 + f32.sub + f32.const 1 + f32.const 1.5 + local.get $0 + f32.mul + f32.add + f32.div + local.set $0 + else + i32.const 3 + local.set $4 + f32.const -1 + local.get $0 + f32.div + local.set $0 + end + end + end + local.get $0 + local.get $0 + f32.mul + local.set $3 + local.get $3 + local.get $3 + f32.mul + local.set $5 + local.get $3 + f32.const 0.333333283662796 + local.get $5 + f32.const 0.14253635704517365 + local.get $5 + f32.const 0.06168760731816292 + f32.mul + f32.add + f32.mul + f32.add + f32.mul + local.set $6 + local.get $5 + f32.const -0.19999158382415771 + local.get $5 + f32.const -0.106480173766613 + f32.mul + f32.add + f32.mul + local.set $7 + local.get $0 + local.get $6 + local.get $7 + f32.add + f32.mul + local.set $8 + local.get $4 + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $8 + f32.sub + return + end + block $break|0 + block $case4|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $4 + local.set $9 + local.get $9 + i32.const 0 + i32.eq + br_if $case0|0 + local.get $9 + i32.const 1 + i32.eq + br_if $case1|0 + local.get $9 + i32.const 2 + i32.eq + br_if $case2|0 + local.get $9 + i32.const 3 + i32.eq + br_if $case3|0 + br $case4|0 + end + f32.const 0.46364760398864746 + local.get $8 + f32.const 5.01215824399992e-09 + f32.sub + local.get $0 + f32.sub + f32.sub + local.set $3 + br $break|0 + end + f32.const 0.7853981256484985 + local.get $8 + f32.const 3.774894707930798e-08 + f32.sub + local.get $0 + f32.sub + f32.sub + local.set $3 + br $break|0 + end + f32.const 0.9827936887741089 + local.get $8 + f32.const 3.447321716976148e-08 + f32.sub + local.get $0 + f32.sub + f32.sub + local.set $3 + br $break|0 + end + f32.const 1.570796251296997 + local.get $8 + f32.const 7.549789415861596e-08 + f32.sub + local.get $0 + f32.sub + f32.sub + local.set $3 + br $break|0 + end + unreachable + end + local.get $3 + local.get $2 + f32.copysign + ) + (func $../../lib/libm/assembly/libmf/atan (; 79 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.atan + ) + (func $~lib/math/NativeMathf.atanh (; 80 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $0 + f32.abs + local.set $2 + local.get $1 + i32.const 1056964608 + i32.lt_u + if + local.get $1 + i32.const 796917760 + i32.ge_u + if + f32.const 0.5 + f32.const 2 + local.get $2 + f32.mul + f32.const 1 + local.get $2 + f32.const 1 + local.get $2 + f32.sub + f32.div + f32.add + f32.mul + call $~lib/math/NativeMathf.log1p + f32.mul + local.set $2 + end + else + f32.const 0.5 + f32.const 2 + local.get $2 + f32.const 1 + local.get $2 + f32.sub + f32.div + f32.mul + call $~lib/math/NativeMathf.log1p + f32.mul + local.set $2 + end + local.get $2 + local.get $0 + f32.copysign + ) + (func $../../lib/libm/assembly/libmf/atanh (; 81 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.atanh + ) + (func $~lib/math/NativeMathf.atan2 (; 82 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 f32) + (local $7 f32) + local.get $1 + call $~lib/number/isNaN + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/number/isNaN + end + if + local.get $1 + local.get $0 + f32.add + return + end + local.get $1 + i32.reinterpret_f32 + local.set $2 + local.get $0 + i32.reinterpret_f32 + local.set $3 + local.get $2 + i32.const 1065353216 + i32.eq + if + local.get $0 + call $~lib/math/NativeMathf.atan + return + end + local.get $3 + i32.const 31 + i32.shr_u + i32.const 1 + i32.and + local.get $2 + i32.const 30 + i32.shr_u + i32.const 2 + i32.and + i32.or + local.set $4 + local.get $2 + i32.const 2147483647 + i32.and + local.set $2 + local.get $3 + i32.const 2147483647 + i32.and + local.set $3 + local.get $3 + i32.const 0 + i32.eq + if + block $break|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $4 + local.set $5 + local.get $5 + i32.const 0 + i32.eq + br_if $case0|0 + local.get $5 + i32.const 1 + i32.eq + br_if $case1|0 + local.get $5 + i32.const 2 + i32.eq + br_if $case2|0 + local.get $5 + i32.const 3 + i32.eq + br_if $case3|0 + br $break|0 + end + end + local.get $0 + return + end + f32.const 3.1415927410125732 + return + end + f32.const 3.1415927410125732 + f32.neg + return + end + end + local.get $2 + i32.const 0 + i32.eq + if + local.get $4 + i32.const 1 + i32.and + if (result f32) + f32.const 3.1415927410125732 + f32.neg + f32.const 2 + f32.div + else + f32.const 3.1415927410125732 + f32.const 2 + f32.div + end + return + end + local.get $2 + i32.const 2139095040 + i32.eq + if + local.get $3 + i32.const 2139095040 + i32.eq + if + local.get $4 + i32.const 2 + i32.and + if (result f32) + f32.const 3 + f32.const 3.1415927410125732 + f32.mul + f32.const 4 + f32.div + else + f32.const 3.1415927410125732 + f32.const 4 + f32.div + end + local.set $6 + local.get $4 + i32.const 1 + i32.and + if (result f32) + local.get $6 + f32.neg + else + local.get $6 + end + return + else + local.get $4 + i32.const 2 + i32.and + if (result f32) + f32.const 3.1415927410125732 + else + f32.const 0 + end + local.set $6 + local.get $4 + i32.const 1 + i32.and + if (result f32) + local.get $6 + f32.neg + else + local.get $6 + end + return + end + unreachable + end + local.get $2 + i32.const 218103808 + i32.add + local.get $3 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $3 + i32.const 2139095040 + i32.eq + end + if + local.get $4 + i32.const 1 + i32.and + if (result f32) + f32.const 3.1415927410125732 + f32.neg + f32.const 2 + f32.div + else + f32.const 3.1415927410125732 + f32.const 2 + f32.div + end + return + end + local.get $4 + i32.const 2 + i32.and + if (result i32) + local.get $3 + i32.const 218103808 + i32.add + local.get $2 + i32.lt_u + else + i32.const 0 + end + if + f32.const 0 + local.set $7 + else + local.get $0 + local.get $1 + f32.div + f32.abs + call $~lib/math/NativeMathf.atan + local.set $7 + end + block $break|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $4 + local.set $5 + local.get $5 + i32.const 0 + i32.eq + br_if $case0|1 + local.get $5 + i32.const 1 + i32.eq + br_if $case1|1 + local.get $5 + i32.const 2 + i32.eq + br_if $case2|1 + local.get $5 + i32.const 3 + i32.eq + br_if $case3|1 + br $break|1 + end + local.get $7 + return + end + local.get $7 + f32.neg + return + end + f32.const 3.1415927410125732 + local.get $7 + f32.const -8.742277657347586e-08 + f32.sub + f32.sub + return + end + local.get $7 + f32.const -8.742277657347586e-08 + f32.sub + f32.const 3.1415927410125732 + f32.sub + return + end + unreachable + ) + (func $../../lib/libm/assembly/libmf/atan2 (; 83 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + local.get $0 + local.get $1 + call $~lib/math/NativeMathf.atan2 + ) + (func $~lib/math/NativeMathf.cbrt (; 84 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f64) + (local $4 f64) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + local.get $0 + f32.add + return + end + local.get $2 + i32.const 8388608 + i32.lt_u + if + local.get $2 + i32.const 0 + i32.eq + if + local.get $0 + return + end + local.get $0 + f32.const 16777216 + f32.mul + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 3 + i32.div_u + i32.const 642849266 + i32.add + local.set $2 + else + local.get $2 + i32.const 3 + i32.div_u + i32.const 709958130 + i32.add + local.set $2 + end + local.get $1 + i32.const -2147483648 + i32.and + local.set $1 + local.get $1 + local.get $2 + i32.or + local.set $1 + local.get $1 + f32.reinterpret_i32 + f64.promote_f32 + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.get $3 + f64.mul + local.set $4 + local.get $3 + local.get $0 + f64.promote_f32 + local.get $0 + f64.promote_f32 + f64.add + local.get $4 + f64.add + f64.mul + local.get $0 + f64.promote_f32 + local.get $4 + f64.add + local.get $4 + f64.add + f64.div + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.get $3 + f64.mul + local.set $4 + local.get $3 + local.get $0 + f64.promote_f32 + local.get $0 + f64.promote_f32 + f64.add + local.get $4 + f64.add + f64.mul + local.get $0 + f64.promote_f32 + local.get $4 + f64.add + local.get $4 + f64.add + f64.div + local.set $3 + local.get $3 + f32.demote_f64 + ) + (func $../../lib/libm/assembly/libmf/cbrt (; 85 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.cbrt + ) + (func $../../lib/libm/assembly/libmf/ceil (; 86 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 f32) + local.get $0 + local.set $1 + local.get $1 + f32.ceil + ) + (func $~lib/number/isFinite (; 87 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + local.get $0 + local.get $0 + f32.sub + f32.const 0 + f32.eq + ) + (func $~lib/math/NativeMathf.clz32 (; 88 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/number/isFinite + i32.eqz + if + f32.const 32 + return + end + local.get $0 + f64.promote_f32 + call $~lib/math/dtoi32 + i32.clz + f32.convert_i32_s + ) + (func $../../lib/libm/assembly/libmf/clz32 (; 89 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.clz32 + ) + (func $~lib/math/NativeMathf.cos (; 90 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f64) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 i32) + (local $9 i32) + (local $10 f32) + (local $11 i32) + (local $12 f32) + (local $13 i32) + (local $14 i32) + (local $15 i64) + (local $16 i32) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i32) + (local $25 i32) + (local $26 f64) + (local $27 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 31 + i32.shr_u + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1061752794 + i32.le_u + if + local.get $1 + i32.const 964689920 + i32.lt_u + if + f32.const 1 + return + end + local.get $0 + f64.promote_f32 + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const -0.001388676377460993 + local.get $4 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $6 + f32.const 1 + f64.promote_f32 + local.get $4 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $5 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $5 + local.get $4 + f64.mul + local.get $6 + f64.mul + f64.add + f32.demote_f64 + return + end + local.get $1 + i32.const 1081824209 + i32.le_u + if + local.get $1 + i32.const 1075235811 + i32.gt_u + if + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 3.141592653589793 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 3.141592653589793 + f64.sub + end + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $5 + f64.const -0.001388676377460993 + local.get $6 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $4 + f32.const 1 + f64.promote_f32 + local.get $6 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $5 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $5 + local.get $6 + f64.mul + local.get $4 + f64.mul + f64.add + f32.demote_f64 + f32.neg + return + else + local.get $2 + if (result f32) + local.get $0 + f64.promote_f32 + f64.const 1.5707963267948966 + f64.add + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const -1.9839334836096632e-04 + local.get $4 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $6 + local.get $4 + local.get $3 + f64.mul + local.set $7 + local.get $3 + local.get $7 + f64.const -0.16666666641626524 + local.get $4 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $7 + local.get $5 + f64.mul + local.get $6 + f64.mul + f64.add + f32.demote_f64 + else + f64.const 1.5707963267948966 + local.get $0 + f64.promote_f32 + f64.sub + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + f64.const -1.9839334836096632e-04 + local.get $7 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $5 + local.get $7 + local.get $3 + f64.mul + local.set $4 + local.get $3 + local.get $4 + f64.const -0.16666666641626524 + local.get $7 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $4 + local.get $6 + f64.mul + local.get $5 + f64.mul + f64.add + f32.demote_f64 + end + return + end + unreachable + end + local.get $1 + i32.const 1088565717 + i32.le_u + if + local.get $1 + i32.const 1085271519 + i32.gt_u + if + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 6.283185307179586 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 6.283185307179586 + f64.sub + end + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const -0.001388676377460993 + local.get $4 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $6 + f32.const 1 + f64.promote_f32 + local.get $4 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $5 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $5 + local.get $4 + f64.mul + local.get $6 + f64.mul + f64.add + f32.demote_f64 + return + else + local.get $2 + if (result f32) + local.get $0 + f32.neg + f64.promote_f32 + f64.const 4.71238898038469 + f64.sub + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $5 + f64.const -1.9839334836096632e-04 + local.get $6 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $4 + local.get $6 + local.get $7 + f64.mul + local.set $3 + local.get $7 + local.get $3 + f64.const -0.16666666641626524 + local.get $6 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $3 + local.get $5 + f64.mul + local.get $4 + f64.mul + f64.add + f32.demote_f64 + else + local.get $0 + f64.promote_f32 + f64.const 4.71238898038469 + f64.sub + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + f64.const -1.9839334836096632e-04 + local.get $3 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $5 + local.get $3 + local.get $7 + f64.mul + local.set $6 + local.get $7 + local.get $6 + f64.const -0.16666666641626524 + local.get $3 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $6 + local.get $4 + f64.mul + local.get $5 + f64.mul + f64.add + f32.demote_f64 + end + return + end + unreachable + end + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + local.get $0 + f32.sub + return + end + block $~lib/math/rempio2f|inlined.0 (result i32) + local.get $0 + local.set $10 + local.get $1 + local.set $9 + local.get $2 + local.set $8 + local.get $9 + i32.const 1305022427 + i32.lt_u + if + local.get $10 + f64.promote_f32 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $6 + local.get $10 + f64.promote_f32 + local.get $6 + f64.const 1.5707963109016418 + f64.mul + f64.sub + local.get $6 + f64.const 1.5893254773528196e-08 + f64.mul + f64.sub + global.set $~lib/math/rempio2f_y + local.get $6 + i32.trunc_f64_s + br $~lib/math/rempio2f|inlined.0 + end + local.get $10 + local.set $12 + local.get $9 + local.set $11 + i32.const 312 + i32.load offset=4 + local.set $13 + local.get $11 + i32.const 23 + i32.shr_s + i32.const 152 + i32.sub + local.set $14 + local.get $14 + i32.const 63 + i32.and + i64.extend_i32_s + local.set $15 + local.get $13 + local.get $14 + i32.const 6 + i32.shr_s + i32.const 3 + i32.shl + i32.add + local.set $16 + local.get $16 + i64.load + local.set $17 + local.get $16 + i64.load offset=8 + local.set $18 + local.get $15 + i64.const 32 + i64.gt_u + if + local.get $16 + i64.load offset=16 + local.set $20 + local.get $20 + i64.const 96 + local.get $15 + i64.sub + i64.shr_u + local.set $19 + local.get $19 + local.get $18 + local.get $15 + i64.const 32 + i64.sub + i64.shl + i64.or + local.set $19 + else + local.get $18 + i64.const 32 + local.get $15 + i64.sub + i64.shr_u + local.set $19 + end + local.get $18 + i64.const 64 + local.get $15 + i64.sub + i64.shr_u + local.get $17 + local.get $15 + i64.shl + i64.or + local.set $20 + local.get $11 + i32.const 8388607 + i32.and + i32.const 8388608 + i32.or + i64.extend_i32_s + local.set $21 + local.get $21 + local.get $20 + i64.mul + local.get $21 + local.get $19 + i64.mul + i64.const 32 + i64.shr_u + i64.add + local.set $22 + local.get $22 + i64.const 2 + i64.shl + local.set $23 + local.get $22 + i64.const 62 + i64.shr_u + local.get $23 + i64.const 63 + i64.shr_u + i64.add + i32.wrap_i64 + local.set $24 + f64.const 8.515303950216386e-20 + local.get $12 + f64.promote_f32 + f64.copysign + local.get $23 + f64.convert_i64_s + f64.mul + global.set $~lib/math/rempio2f_y + local.get $24 + local.set $24 + i32.const 0 + local.get $24 + i32.sub + local.get $24 + local.get $8 + select + end + local.set $25 + global.get $~lib/math/rempio2f_y + local.set $26 + local.get $25 + i32.const 1 + i32.and + if (result f32) + local.get $26 + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $5 + f64.const -1.9839334836096632e-04 + local.get $6 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $4 + local.get $6 + local.get $7 + f64.mul + local.set $3 + local.get $7 + local.get $3 + f64.const -0.16666666641626524 + local.get $6 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $3 + local.get $5 + f64.mul + local.get $4 + f64.mul + f64.add + f32.demote_f64 + else + local.get $26 + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + f64.const -0.001388676377460993 + local.get $3 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $5 + f32.const 1 + f64.promote_f32 + local.get $3 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $4 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $4 + local.get $3 + f64.mul + local.get $5 + f64.mul + f64.add + f32.demote_f64 + end + local.set $27 + local.get $25 + i32.const 1 + i32.add + i32.const 2 + i32.and + if (result f32) + local.get $27 + f32.neg + else + local.get $27 + end + ) + (func $../../lib/libm/assembly/libmf/cos (; 91 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.cos + ) + (func $~lib/math/NativeMathf.expm1 (; 92 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 f32) + (local $5 f32) + (local $6 i32) + (local $7 f32) + (local $8 f32) + (local $9 f32) + (local $10 f32) + (local $11 f32) + (local $12 f32) + (local $13 f32) + (local $14 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $1 + i32.const 31 + i32.shr_u + local.set $3 + local.get $2 + i32.const 1100331076 + i32.ge_u + if + local.get $2 + i32.const 2139095040 + i32.gt_u + if + local.get $0 + return + end + local.get $3 + if + f32.const -1 + return + end + local.get $0 + f32.const 88.7216796875 + f32.gt + if + local.get $0 + f32.const 1701411834604692317316873e14 + f32.mul + local.set $0 + local.get $0 + return + end + end + f32.const 0 + local.set $4 + local.get $2 + i32.const 1051816472 + i32.gt_u + if + i32.const 1 + local.get $3 + i32.const 1 + i32.shl + i32.sub + f32.const 1.4426950216293335 + local.get $0 + f32.mul + f32.const 0.5 + local.get $0 + f32.copysign + f32.add + i32.trunc_f32_s + local.get $2 + i32.const 1065686418 + i32.lt_u + select + local.set $6 + local.get $6 + f32.convert_i32_s + local.set $5 + local.get $0 + local.get $5 + f32.const 0.6931381225585938 + f32.mul + f32.sub + local.set $7 + local.get $5 + f32.const 9.05800061445916e-06 + f32.mul + local.set $8 + local.get $7 + local.get $8 + f32.sub + local.set $0 + local.get $7 + local.get $0 + f32.sub + local.get $8 + f32.sub + local.set $4 + else + local.get $2 + i32.const 855638016 + i32.lt_u + if + local.get $0 + return + else + i32.const 0 + local.set $6 + end + end + f32.const 0.5 + local.get $0 + f32.mul + local.set $9 + local.get $0 + local.get $9 + f32.mul + local.set $10 + f32.const 1 + local.get $10 + f32.const -0.03333321213722229 + local.get $10 + f32.const 1.5807170420885086e-03 + f32.mul + f32.add + f32.mul + f32.add + local.set $11 + f32.const 3 + local.get $11 + local.get $9 + f32.mul + f32.sub + local.set $5 + local.get $10 + local.get $11 + local.get $5 + f32.sub + f32.const 6 + local.get $0 + local.get $5 + f32.mul + f32.sub + f32.div + f32.mul + local.set $12 + local.get $6 + i32.const 0 + i32.eq + if + local.get $0 + local.get $0 + local.get $12 + f32.mul + local.get $10 + f32.sub + f32.sub + return + end + local.get $0 + local.get $12 + local.get $4 + f32.sub + f32.mul + local.get $4 + f32.sub + local.set $12 + local.get $12 + local.get $10 + f32.sub + local.set $12 + local.get $6 + i32.const -1 + i32.eq + if + f32.const 0.5 + local.get $0 + local.get $12 + f32.sub + f32.mul + f32.const 0.5 + f32.sub + return + end + local.get $6 + i32.const 1 + i32.eq + if + local.get $0 + f32.const -0.25 + f32.lt + if + f32.const -2 + local.get $12 + local.get $0 + f32.const 0.5 + f32.add + f32.sub + f32.mul + return + end + f32.const 1 + f32.const 2 + local.get $0 + local.get $12 + f32.sub + f32.mul + f32.add + return + end + i32.const 127 + local.get $6 + i32.add + i32.const 23 + i32.shl + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $13 + local.get $6 + i32.const 0 + i32.lt_s + if (result i32) + i32.const 1 + else + local.get $6 + i32.const 56 + i32.gt_s + end + if + local.get $0 + local.get $12 + f32.sub + f32.const 1 + f32.add + local.set $14 + local.get $6 + i32.const 128 + i32.eq + if + local.get $14 + f32.const 2 + f32.mul + f32.const 1701411834604692317316873e14 + f32.mul + local.set $14 + else + local.get $14 + local.get $13 + f32.mul + local.set $14 + end + local.get $14 + f32.const 1 + f32.sub + return + end + i32.const 127 + local.get $6 + i32.sub + i32.const 23 + i32.shl + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $14 + local.get $6 + i32.const 20 + i32.lt_s + if + f32.const 1 + local.get $14 + f32.sub + local.get $12 + f32.sub + local.set $14 + else + f32.const 1 + local.get $12 + local.get $14 + f32.add + f32.sub + local.set $14 + end + local.get $0 + local.get $14 + f32.add + local.get $13 + f32.mul + ) + (func $~lib/math/NativeMathf.scalbn (; 93 ;) (type $FUNCSIG$ffi) (param $0 f32) (param $1 i32) (result f32) + (local $2 f32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.set $2 + local.get $1 + i32.const 127 + i32.gt_s + if + local.get $2 + f32.const 1701411834604692317316873e14 + f32.mul + local.set $2 + local.get $1 + i32.const 127 + i32.sub + local.set $1 + local.get $1 + i32.const 127 + i32.gt_s + if + local.get $2 + f32.const 1701411834604692317316873e14 + f32.mul + local.set $2 + local.get $1 + i32.const 127 + i32.sub + local.tee $3 + i32.const 127 + local.tee $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.set $1 + end + else + local.get $1 + i32.const -126 + i32.lt_s + if + local.get $2 + f32.const 1.1754943508222875e-38 + f32.const 16777216 + f32.mul + f32.mul + local.set $2 + local.get $1 + i32.const 126 + i32.const 24 + i32.sub + i32.add + local.set $1 + local.get $1 + i32.const -126 + i32.lt_s + if + local.get $2 + f32.const 1.1754943508222875e-38 + f32.const 16777216 + f32.mul + f32.mul + local.set $2 + local.get $1 + i32.const 126 + i32.add + i32.const 24 + i32.sub + local.tee $3 + i32.const -126 + local.tee $4 + local.get $3 + local.get $4 + i32.gt_s + select + local.set $1 + end + end + end + local.get $2 + i32.const 127 + local.get $1 + i32.add + i32.const 23 + i32.shl + f32.reinterpret_i32 + f32.mul + ) + (func $~lib/math/NativeMathf.exp (; 94 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f32) + (local $4 f32) + (local $5 i32) + (local $6 f32) + (local $7 f32) + (local $8 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 31 + i32.shr_u + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1118743632 + i32.ge_u + if + local.get $1 + i32.const 1118925336 + i32.ge_u + if + local.get $2 + i32.eqz + if + local.get $0 + f32.const 1701411834604692317316873e14 + f32.mul + return + else + local.get $1 + i32.const 1120924085 + i32.ge_u + if + f32.const 0 + return + end + end + end + end + local.get $1 + i32.const 1051816472 + i32.gt_u + if + local.get $1 + i32.const 1065686418 + i32.gt_u + if + f32.const 1.4426950216293335 + local.get $0 + f32.mul + f32.const 0.5 + local.get $0 + f32.copysign + f32.add + i32.trunc_f32_s + local.set $5 + else + i32.const 1 + local.get $2 + i32.const 1 + i32.shl + i32.sub + local.set $5 + end + local.get $0 + local.get $5 + f32.convert_i32_s + f32.const 0.693145751953125 + f32.mul + f32.sub + local.set $3 + local.get $5 + f32.convert_i32_s + f32.const 1.428606765330187e-06 + f32.mul + local.set $4 + local.get $3 + local.get $4 + f32.sub + local.set $0 + else + local.get $1 + i32.const 956301312 + i32.gt_u + if + i32.const 0 + local.set $5 + local.get $0 + local.set $3 + f32.const 0 + local.set $4 + else + f32.const 1 + local.get $0 + f32.add + return + end + end + local.get $0 + local.get $0 + f32.mul + local.set $6 + local.get $0 + local.get $6 + f32.const 0.16666625440120697 + local.get $6 + f32.const -2.7667332906275988e-03 + f32.mul + f32.add + f32.mul + f32.sub + local.set $7 + f32.const 1 + local.get $0 + local.get $7 + f32.mul + f32.const 2 + local.get $7 + f32.sub + f32.div + local.get $4 + f32.sub + local.get $3 + f32.add + f32.add + local.set $8 + local.get $5 + i32.const 0 + i32.eq + if + local.get $8 + return + end + local.get $8 + local.get $5 + call $~lib/math/NativeMathf.scalbn + ) + (func $~lib/math/NativeMathf.cosh (; 95 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + (local $3 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $0 + local.get $1 + i32.const 1060205079 + i32.lt_u + if + local.get $1 + i32.const 964689920 + i32.lt_u + if + f32.const 1 + return + end + local.get $0 + call $~lib/math/NativeMathf.expm1 + local.set $2 + f32.const 1 + local.get $2 + local.get $2 + f32.mul + f32.const 2 + f32.const 2 + local.get $2 + f32.mul + f32.add + f32.div + f32.add + return + end + local.get $1 + i32.const 1118925335 + i32.lt_u + if + local.get $0 + call $~lib/math/NativeMathf.exp + local.set $2 + f32.const 0.5 + local.get $2 + f32.mul + f32.const 0.5 + local.get $2 + f32.div + f32.add + return + end + local.get $0 + local.set $2 + i32.const 127 + i32.const 235 + i32.const 1 + i32.shr_u + i32.add + i32.const 23 + i32.shl + f32.reinterpret_i32 + local.set $3 + local.get $2 + f32.const 162.88958740234375 + f32.sub + call $~lib/math/NativeMathf.exp + local.get $3 + f32.mul + local.get $3 + f32.mul + ) + (func $../../lib/libm/assembly/libmf/cosh (; 96 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.cosh + ) + (func $../../lib/libm/assembly/libmf/exp (; 97 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.exp + ) + (func $../../lib/libm/assembly/libmf/expm1 (; 98 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.expm1 + ) + (func $../../lib/libm/assembly/libmf/floor (; 99 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 f32) + local.get $0 + local.set $1 + local.get $1 + f32.floor + ) + (func $../../lib/libm/assembly/libmf/fround (; 100 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 f32) + local.get $0 + local.set $1 + local.get $1 + ) + (func $~lib/math/NativeMathf.hypot (; 101 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f32) + local.get $0 + i32.reinterpret_f32 + local.set $2 + local.get $1 + i32.reinterpret_f32 + local.set $3 + local.get $2 + i32.const 2147483647 + i32.and + local.set $2 + local.get $3 + i32.const 2147483647 + i32.and + local.set $3 + local.get $2 + local.get $3 + i32.lt_u + if + local.get $2 + local.set $4 + local.get $3 + local.set $2 + local.get $4 + local.set $3 + end + local.get $2 + f32.reinterpret_i32 + local.set $0 + local.get $3 + f32.reinterpret_i32 + local.set $1 + local.get $3 + i32.const 2139095040 + i32.eq + if + local.get $1 + return + end + local.get $2 + i32.const 2139095040 + i32.ge_u + if (result i32) + i32.const 1 + else + local.get $3 + i32.const 0 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $2 + local.get $3 + i32.sub + i32.const 209715200 + i32.ge_u + end + if + local.get $0 + local.get $1 + f32.add + return + end + f32.const 1 + local.set $5 + local.get $2 + i32.const 1568669696 + i32.ge_u + if + f32.const 1237940039285380274899124e3 + local.set $5 + local.get $0 + f32.const 8.077935669463161e-28 + f32.mul + local.set $0 + local.get $1 + f32.const 8.077935669463161e-28 + f32.mul + local.set $1 + else + local.get $3 + i32.const 562036736 + i32.lt_u + if + f32.const 8.077935669463161e-28 + local.set $5 + local.get $0 + f32.const 1237940039285380274899124e3 + f32.mul + local.set $0 + local.get $1 + f32.const 1237940039285380274899124e3 + f32.mul + local.set $1 + end + end + local.get $5 + local.get $0 + f64.promote_f32 + local.get $0 + f64.promote_f32 + f64.mul + local.get $1 + f64.promote_f32 + local.get $1 + f64.promote_f32 + f64.mul + f64.add + f32.demote_f64 + f32.sqrt + f32.mul + ) + (func $../../lib/libm/assembly/libmf/hypot (; 102 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + local.get $0 + local.get $1 + call $~lib/math/NativeMathf.hypot + ) + (func $../../lib/libm/assembly/libmf/imul (; 103 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (local $2 f32) + (local $3 f32) + block $~lib/math/NativeMathf.imul|inlined.0 (result f32) + local.get $0 + local.set $3 + local.get $1 + local.set $2 + local.get $3 + local.get $2 + f32.add + call $~lib/number/isFinite + i32.eqz + if + f32.const 0 + br $~lib/math/NativeMathf.imul|inlined.0 + end + local.get $3 + f64.promote_f32 + call $~lib/math/dtoi32 + local.get $2 + f64.promote_f32 + call $~lib/math/dtoi32 + i32.mul + f32.convert_i32_s + end + ) + (func $../../lib/libm/assembly/libmf/log (; 104 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.log + ) + (func $~lib/math/NativeMathf.log10 (; 105 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f32) + (local $4 f32) + (local $5 f32) + (local $6 f32) + (local $7 f32) + (local $8 f32) + (local $9 f32) + (local $10 f32) + (local $11 f32) + (local $12 f32) + (local $13 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + i32.const 0 + local.set $2 + local.get $1 + i32.const 8388608 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i32.const 1 + i32.shl + i32.const 0 + i32.eq + if + f32.const -1 + local.get $0 + local.get $0 + f32.mul + f32.div + return + end + local.get $1 + i32.const 31 + i32.shr_u + if + local.get $0 + local.get $0 + f32.sub + f32.const 0 + f32.div + return + end + local.get $2 + i32.const 25 + i32.sub + local.set $2 + local.get $0 + f32.const 33554432 + f32.mul + local.set $0 + local.get $0 + i32.reinterpret_f32 + local.set $1 + else + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + return + else + local.get $1 + i32.const 1065353216 + i32.eq + if + f32.const 0 + return + end + end + end + local.get $1 + i32.const 1065353216 + i32.const 1060439283 + i32.sub + i32.add + local.set $1 + local.get $2 + local.get $1 + i32.const 23 + i32.shr_u + i32.const 127 + i32.sub + i32.add + local.set $2 + local.get $1 + i32.const 8388607 + i32.and + i32.const 1060439283 + i32.add + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $0 + local.get $0 + f32.const 1 + f32.sub + local.set $3 + local.get $3 + f32.const 2 + local.get $3 + f32.add + f32.div + local.set $4 + local.get $4 + local.get $4 + f32.mul + local.set $5 + local.get $5 + local.get $5 + f32.mul + local.set $6 + local.get $6 + f32.const 0.40000972151756287 + local.get $6 + f32.const 0.24279078841209412 + f32.mul + f32.add + f32.mul + local.set $7 + local.get $5 + f32.const 0.6666666269302368 + local.get $6 + f32.const 0.2849878668785095 + f32.mul + f32.add + f32.mul + local.set $8 + local.get $8 + local.get $7 + f32.add + local.set $9 + f32.const 0.5 + local.get $3 + f32.mul + local.get $3 + f32.mul + local.set $10 + local.get $3 + local.get $10 + f32.sub + local.set $11 + local.get $11 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const -4096 + i32.and + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $11 + local.get $3 + local.get $11 + f32.sub + local.get $10 + f32.sub + local.get $4 + local.get $10 + local.get $9 + f32.add + f32.mul + f32.add + local.set $12 + local.get $2 + f32.convert_i32_s + local.set $13 + local.get $13 + f32.const 7.903415166765626e-07 + f32.mul + local.get $12 + local.get $11 + f32.add + f32.const -3.168997136526741e-05 + f32.mul + f32.add + local.get $12 + f32.const 0.434326171875 + f32.mul + f32.add + local.get $11 + f32.const 0.434326171875 + f32.mul + f32.add + local.get $13 + f32.const 0.3010292053222656 + f32.mul + f32.add + ) + (func $../../lib/libm/assembly/libmf/log10 (; 106 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.log10 + ) + (func $../../lib/libm/assembly/libmf/log1p (; 107 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.log1p + ) + (func $~lib/math/NativeMathf.log2 (; 108 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f32) + (local $4 f32) + (local $5 f32) + (local $6 f32) + (local $7 f32) + (local $8 f32) + (local $9 f32) + (local $10 f32) + (local $11 f32) + (local $12 i32) + (local $13 f32) + (local $14 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + i32.const 0 + local.set $2 + local.get $1 + i32.const 8388608 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i32.const 1 + i32.shl + i32.const 0 + i32.eq + if + f32.const -1 + local.get $0 + local.get $0 + f32.mul + f32.div + return + end + local.get $1 + i32.const 31 + i32.shr_u + if + local.get $0 + local.get $0 + f32.sub + f32.const 0 + f32.div + return + end + local.get $2 + i32.const 25 + i32.sub + local.set $2 + local.get $0 + f32.const 33554432 + f32.mul + local.set $0 + local.get $0 + i32.reinterpret_f32 + local.set $1 + else + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + return + else + local.get $1 + i32.const 1065353216 + i32.eq + if + f32.const 0 + return + end + end + end + local.get $1 + i32.const 1065353216 + i32.const 1060439283 + i32.sub + i32.add + local.set $1 + local.get $2 + local.get $1 + i32.const 23 + i32.shr_u + i32.const 127 + i32.sub + i32.add + local.set $2 + local.get $1 + i32.const 8388607 + i32.and + i32.const 1060439283 + i32.add + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $0 + local.get $0 + f32.const 1 + f32.sub + local.set $3 + local.get $3 + f32.const 2 + local.get $3 + f32.add + f32.div + local.set $4 + local.get $4 + local.get $4 + f32.mul + local.set $5 + local.get $5 + local.get $5 + f32.mul + local.set $6 + local.get $6 + f32.const 0.40000972151756287 + local.get $6 + f32.const 0.24279078841209412 + f32.mul + f32.add + f32.mul + local.set $7 + local.get $5 + f32.const 0.6666666269302368 + local.get $6 + f32.const 0.2849878668785095 + f32.mul + f32.add + f32.mul + local.set $8 + local.get $8 + local.get $7 + f32.add + local.set $9 + f32.const 0.5 + local.get $3 + f32.mul + local.get $3 + f32.mul + local.set $10 + local.get $3 + local.get $10 + f32.sub + local.set $11 + local.get $11 + i32.reinterpret_f32 + local.set $12 + local.get $12 + i32.const -4096 + i32.and + local.set $12 + local.get $12 + f32.reinterpret_i32 + local.set $11 + local.get $3 + local.get $11 + f32.sub + local.get $10 + f32.sub + local.get $4 + local.get $10 + local.get $9 + f32.add + f32.mul + f32.add + local.set $13 + local.get $2 + f32.convert_i32_s + local.set $14 + local.get $13 + local.get $11 + f32.add + f32.const -1.7605285393074155e-04 + f32.mul + local.get $13 + f32.const 1.44287109375 + f32.mul + f32.add + local.get $11 + f32.const 1.44287109375 + f32.mul + f32.add + local.get $14 + f32.add + ) + (func $../../lib/libm/assembly/libmf/log2 (; 109 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.log2 + ) + (func $../../lib/libm/assembly/libmf/max (; 110 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (local $2 f32) + (local $3 f32) + local.get $0 + local.set $3 + local.get $1 + local.set $2 + local.get $3 + local.get $2 + f32.max + ) + (func $../../lib/libm/assembly/libmf/min (; 111 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (local $2 f32) + (local $3 f32) + local.get $0 + local.set $3 + local.get $1 + local.set $2 + local.get $3 + local.get $2 + f32.min + ) + (func $~lib/math/NativeMathf.pow (; 112 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 f32) + (local $11 f32) + (local $12 f32) + (local $13 f32) + (local $14 f32) + (local $15 f32) + (local $16 f32) + (local $17 f32) + (local $18 f32) + (local $19 f32) + (local $20 f32) + (local $21 f32) + (local $22 f32) + (local $23 f32) + (local $24 i32) + (local $25 i32) + (local $26 f32) + (local $27 f32) + (local $28 f32) + (local $29 f32) + (local $30 f32) + (local $31 f32) + (local $32 f32) + (local $33 f32) + (local $34 f32) + (local $35 f32) + (local $36 i32) + local.get $0 + i32.reinterpret_f32 + local.set $2 + local.get $1 + i32.reinterpret_f32 + local.set $3 + local.get $2 + i32.const 2147483647 + i32.and + local.set $4 + local.get $3 + i32.const 2147483647 + i32.and + local.set $5 + local.get $5 + i32.const 0 + i32.eq + if + f32.const 1 + return + end + local.get $4 + i32.const 2139095040 + i32.gt_s + if (result i32) + i32.const 1 + else + local.get $5 + i32.const 2139095040 + i32.gt_s + end + if + local.get $0 + local.get $1 + f32.add + return + end + i32.const 0 + local.set $6 + local.get $2 + i32.const 0 + i32.lt_s + if + local.get $5 + i32.const 1266679808 + i32.ge_s + if + i32.const 2 + local.set $6 + else + local.get $5 + i32.const 1065353216 + i32.ge_s + if + local.get $5 + i32.const 23 + i32.shr_s + i32.const 127 + i32.sub + local.set $8 + i32.const 23 + local.get $8 + i32.sub + local.set $9 + local.get $5 + local.get $9 + i32.shr_s + local.set $7 + local.get $7 + local.get $9 + i32.shl + local.get $5 + i32.eq + if + i32.const 2 + local.get $7 + i32.const 1 + i32.and + i32.sub + local.set $6 + end + end + end + end + local.get $5 + i32.const 2139095040 + i32.eq + if + local.get $4 + i32.const 1065353216 + i32.eq + if + f32.const nan:0x400000 + return + else + local.get $4 + i32.const 1065353216 + i32.gt_s + if + local.get $3 + i32.const 0 + i32.ge_s + if (result f32) + local.get $1 + else + f32.const 0 + end + return + else + local.get $3 + i32.const 0 + i32.ge_s + if (result f32) + f32.const 0 + else + local.get $1 + f32.neg + end + return + end + unreachable + end + unreachable + end + local.get $5 + i32.const 1065353216 + i32.eq + if + local.get $3 + i32.const 0 + i32.ge_s + if (result f32) + local.get $0 + else + f32.const 1 + local.get $0 + f32.div + end + return + end + local.get $3 + i32.const 1073741824 + i32.eq + if + local.get $0 + local.get $0 + f32.mul + return + end + local.get $3 + i32.const 1056964608 + i32.eq + if + local.get $2 + i32.const 0 + i32.ge_s + if + local.get $0 + f32.sqrt + return + end + end + local.get $0 + f32.abs + local.set $10 + local.get $4 + i32.const 2139095040 + i32.eq + if (result i32) + i32.const 1 + else + local.get $4 + i32.const 0 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $4 + i32.const 1065353216 + i32.eq + end + if + local.get $10 + local.set $11 + local.get $3 + i32.const 0 + i32.lt_s + if + f32.const 1 + local.get $11 + f32.div + local.set $11 + end + local.get $2 + i32.const 0 + i32.lt_s + if + local.get $4 + i32.const 1065353216 + i32.sub + local.get $6 + i32.or + i32.const 0 + i32.eq + if + local.get $11 + local.get $11 + f32.sub + local.set $12 + local.get $12 + local.get $12 + f32.div + local.set $11 + else + local.get $6 + i32.const 1 + i32.eq + if + local.get $11 + f32.neg + local.set $11 + end + end + end + local.get $11 + return + end + f32.const 1 + local.set $13 + local.get $2 + i32.const 0 + i32.lt_s + if + local.get $6 + i32.const 0 + i32.eq + if + local.get $0 + local.get $0 + f32.sub + local.set $12 + local.get $12 + local.get $12 + f32.div + return + end + local.get $6 + i32.const 1 + i32.eq + if + f32.const -1 + local.set $13 + end + end + local.get $5 + i32.const 1291845632 + i32.gt_s + if + local.get $4 + i32.const 1065353208 + i32.lt_s + if + local.get $3 + i32.const 0 + i32.lt_s + if (result f32) + local.get $13 + f32.const 1000000015047466219876688e6 + f32.mul + f32.const 1000000015047466219876688e6 + f32.mul + else + local.get $13 + f32.const 1.0000000031710769e-30 + f32.mul + f32.const 1.0000000031710769e-30 + f32.mul + end + return + end + local.get $4 + i32.const 1065353223 + i32.gt_s + if + local.get $3 + i32.const 0 + i32.gt_s + if (result f32) + local.get $13 + f32.const 1000000015047466219876688e6 + f32.mul + f32.const 1000000015047466219876688e6 + f32.mul + else + local.get $13 + f32.const 1.0000000031710769e-30 + f32.mul + f32.const 1.0000000031710769e-30 + f32.mul + end + return + end + local.get $10 + f32.const 1 + f32.sub + local.set $18 + local.get $18 + local.get $18 + f32.mul + f32.const 0.5 + local.get $18 + f32.const 0.3333333432674408 + local.get $18 + f32.const 0.25 + f32.mul + f32.sub + f32.mul + f32.sub + f32.mul + local.set $21 + f32.const 1.44268798828125 + local.get $18 + f32.mul + local.set $19 + local.get $18 + f32.const 7.052607543300837e-06 + f32.mul + local.get $21 + f32.const 1.4426950216293335 + f32.mul + f32.sub + local.set $20 + local.get $19 + local.get $20 + f32.add + local.set $14 + local.get $14 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $14 + local.get $20 + local.get $14 + local.get $19 + f32.sub + f32.sub + local.set $15 + else + i32.const 0 + local.set $24 + local.get $4 + i32.const 8388608 + i32.lt_s + if + local.get $10 + f32.const 16777216 + f32.mul + local.set $10 + local.get $24 + i32.const 24 + i32.sub + local.set $24 + local.get $10 + i32.reinterpret_f32 + local.set $4 + end + local.get $24 + local.get $4 + i32.const 23 + i32.shr_s + i32.const 127 + i32.sub + i32.add + local.set $24 + local.get $4 + i32.const 8388607 + i32.and + local.set $7 + local.get $7 + i32.const 1065353216 + i32.or + local.set $4 + local.get $7 + i32.const 1885297 + i32.le_s + if + i32.const 0 + local.set $8 + else + local.get $7 + i32.const 6140887 + i32.lt_s + if + i32.const 1 + local.set $8 + else + i32.const 0 + local.set $8 + local.get $24 + i32.const 1 + i32.add + local.set $24 + local.get $4 + i32.const 8388608 + i32.sub + local.set $4 + end + end + local.get $4 + f32.reinterpret_i32 + local.set $10 + f32.const 1.5 + f32.const 1 + local.get $8 + select + local.set $30 + local.get $10 + local.get $30 + f32.sub + local.set $19 + f32.const 1 + local.get $10 + local.get $30 + f32.add + f32.div + local.set $20 + local.get $19 + local.get $20 + f32.mul + local.set $17 + local.get $17 + local.set $26 + local.get $26 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $26 + local.get $4 + i32.const 1 + i32.shr_s + i32.const -4096 + i32.and + i32.const 536870912 + i32.or + local.set $25 + local.get $25 + i32.const 4194304 + i32.add + local.get $8 + i32.const 21 + i32.shl + i32.add + f32.reinterpret_i32 + local.set $28 + local.get $10 + local.get $28 + local.get $30 + f32.sub + f32.sub + local.set $29 + local.get $20 + local.get $19 + local.get $26 + local.get $28 + f32.mul + f32.sub + local.get $26 + local.get $29 + f32.mul + f32.sub + f32.mul + local.set $27 + local.get $17 + local.get $17 + f32.mul + local.set $12 + local.get $12 + local.get $12 + f32.mul + f32.const 0.6000000238418579 + local.get $12 + f32.const 0.4285714328289032 + local.get $12 + f32.const 0.3333333432674408 + local.get $12 + f32.const 0.2727281153202057 + local.get $12 + f32.const 0.23066075146198273 + local.get $12 + f32.const 0.20697501301765442 + f32.mul + f32.add + f32.mul + f32.add + f32.mul + f32.add + f32.mul + f32.add + f32.mul + f32.add + f32.mul + local.set $16 + local.get $16 + local.get $27 + local.get $26 + local.get $17 + f32.add + f32.mul + f32.add + local.set $16 + local.get $26 + local.get $26 + f32.mul + local.set $12 + f32.const 3 + local.get $12 + f32.add + local.get $16 + f32.add + local.set $28 + local.get $28 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $28 + local.get $16 + local.get $28 + f32.const 3 + f32.sub + local.get $12 + f32.sub + f32.sub + local.set $29 + local.get $26 + local.get $28 + f32.mul + local.set $19 + local.get $27 + local.get $28 + f32.mul + local.get $29 + local.get $17 + f32.mul + f32.add + local.set $20 + local.get $19 + local.get $20 + f32.add + local.set $22 + local.get $22 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $22 + local.get $20 + local.get $22 + local.get $19 + f32.sub + f32.sub + local.set $23 + f32.const 0.9619140625 + local.get $22 + f32.mul + local.set $31 + f32.const 1.5632208487659227e-06 + f32.const 0 + local.get $8 + select + local.set $32 + f32.const -1.1736857413779944e-04 + local.get $22 + f32.mul + local.get $23 + f32.const 0.9617967009544373 + f32.mul + f32.add + local.get $32 + f32.add + local.set $33 + local.get $24 + f32.convert_i32_s + local.set $18 + f32.const 0.5849609375 + f32.const 0 + local.get $8 + select + local.set $34 + local.get $31 + local.get $33 + f32.add + local.get $34 + f32.add + local.get $18 + f32.add + local.set $14 + local.get $14 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $14 + local.get $33 + local.get $14 + local.get $18 + f32.sub + local.get $34 + f32.sub + local.get $31 + f32.sub + f32.sub + local.set $15 + end + local.get $1 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $35 + local.get $1 + local.get $35 + f32.sub + local.get $14 + f32.mul + local.get $1 + local.get $15 + f32.mul + f32.add + local.set $23 + local.get $35 + local.get $14 + f32.mul + local.set $22 + local.get $23 + local.get $22 + f32.add + local.set $11 + local.get $11 + i32.reinterpret_f32 + local.set $7 + local.get $7 + i32.const 1124073472 + i32.gt_s + if + local.get $13 + f32.const 1000000015047466219876688e6 + f32.mul + f32.const 1000000015047466219876688e6 + f32.mul + return + else + local.get $7 + i32.const 1124073472 + i32.eq + if + local.get $23 + f32.const 4.299566569443414e-08 + f32.add + local.get $11 + local.get $22 + f32.sub + f32.gt + if + local.get $13 + f32.const 1000000015047466219876688e6 + f32.mul + f32.const 1000000015047466219876688e6 + f32.mul + return + end + else + local.get $7 + i32.const 2147483647 + i32.and + i32.const 1125515264 + i32.gt_s + if + local.get $13 + f32.const 1.0000000031710769e-30 + f32.mul + f32.const 1.0000000031710769e-30 + f32.mul + return + else + local.get $7 + i32.const -1021968384 + i32.eq + if + local.get $23 + local.get $11 + local.get $22 + f32.sub + f32.le + if + local.get $13 + f32.const 1.0000000031710769e-30 + f32.mul + f32.const 1.0000000031710769e-30 + f32.mul + return + end + end + end + end + end + local.get $7 + i32.const 2147483647 + i32.and + local.set $36 + local.get $36 + i32.const 23 + i32.shr_s + i32.const 127 + i32.sub + local.set $8 + i32.const 0 + local.set $24 + local.get $36 + i32.const 1056964608 + i32.gt_s + if + local.get $7 + i32.const 8388608 + local.get $8 + i32.const 1 + i32.add + i32.shr_s + i32.add + local.set $24 + local.get $24 + i32.const 2147483647 + i32.and + i32.const 23 + i32.shr_s + i32.const 127 + i32.sub + local.set $8 + local.get $24 + i32.const 8388607 + local.get $8 + i32.shr_s + i32.const -1 + i32.xor + i32.and + f32.reinterpret_i32 + local.set $18 + local.get $24 + i32.const 8388607 + i32.and + i32.const 8388608 + i32.or + i32.const 23 + local.get $8 + i32.sub + i32.shr_s + local.set $24 + local.get $7 + i32.const 0 + i32.lt_s + if + i32.const 0 + local.get $24 + i32.sub + local.set $24 + end + local.get $22 + local.get $18 + f32.sub + local.set $22 + end + local.get $23 + local.get $22 + f32.add + local.set $18 + local.get $18 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -32768 + i32.and + f32.reinterpret_i32 + local.set $18 + local.get $18 + f32.const 0.693145751953125 + f32.mul + local.set $19 + local.get $23 + local.get $18 + local.get $22 + f32.sub + f32.sub + f32.const 0.6931471824645996 + f32.mul + local.get $18 + f32.const 1.4286065379565116e-06 + f32.mul + f32.add + local.set $20 + local.get $19 + local.get $20 + f32.add + local.set $11 + local.get $20 + local.get $11 + local.get $19 + f32.sub + f32.sub + local.set $21 + local.get $11 + local.get $11 + f32.mul + local.set $18 + local.get $11 + local.get $18 + f32.const 0.1666666716337204 + local.get $18 + f32.const -2.7777778450399637e-03 + local.get $18 + f32.const 6.61375597701408e-05 + local.get $18 + f32.const -1.6533901998627698e-06 + local.get $18 + f32.const 4.138136944220605e-08 + f32.mul + f32.add + f32.mul + f32.add + f32.mul + f32.add + f32.mul + f32.add + f32.mul + f32.sub + local.set $14 + local.get $11 + local.get $14 + f32.mul + local.get $14 + f32.const 2 + f32.sub + f32.div + local.get $21 + local.get $11 + local.get $21 + f32.mul + f32.add + f32.sub + local.set $16 + f32.const 1 + local.get $16 + local.get $11 + f32.sub + f32.sub + local.set $11 + local.get $11 + i32.reinterpret_f32 + local.set $7 + local.get $7 + local.get $24 + i32.const 23 + i32.shl + i32.add + local.set $7 + local.get $7 + i32.const 23 + i32.shr_s + i32.const 0 + i32.le_s + if + local.get $11 + local.get $24 + call $~lib/math/NativeMathf.scalbn + local.set $11 + else + local.get $7 + f32.reinterpret_i32 + local.set $11 + end + local.get $13 + local.get $11 + f32.mul + ) + (func $../../lib/libm/assembly/libmf/pow (; 113 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + local.get $0 + local.get $1 + call $~lib/math/NativeMathf.pow + ) + (func $../../lib/libm/assembly/libmf/round (; 114 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 f32) + local.get $0 + local.set $1 + local.get $1 + f32.const 0.5 + f32.add + f32.floor + local.get $1 + f32.copysign + ) + (func $../../lib/libm/assembly/libmf/sign (; 115 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 f32) + block $~lib/math/NativeMathf.sign|inlined.0 (result f32) + local.get $0 + local.set $1 + local.get $1 + f32.const 0 + f32.gt + if (result f32) + f32.const 1 + else + local.get $1 + f32.const 0 + f32.lt + if (result f32) + f32.const -1 + else + local.get $1 + end + end + br $~lib/math/NativeMathf.sign|inlined.0 + end + ) + (func $~lib/math/NativeMathf.sin (; 116 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f64) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 i32) + (local $9 i32) + (local $10 f32) + (local $11 i32) + (local $12 f32) + (local $13 i32) + (local $14 i32) + (local $15 i64) + (local $16 i32) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i32) + (local $25 i32) + (local $26 f64) + (local $27 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 31 + i32.shr_u + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1061752794 + i32.le_u + if + local.get $1 + i32.const 964689920 + i32.lt_u + if + local.get $0 + return + end + local.get $0 + f64.promote_f32 + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const -1.9839334836096632e-04 + local.get $4 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $6 + local.get $4 + local.get $3 + f64.mul + local.set $7 + local.get $3 + local.get $7 + f64.const -0.16666666641626524 + local.get $4 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $7 + local.get $5 + f64.mul + local.get $6 + f64.mul + f64.add + f32.demote_f64 + return + end + local.get $1 + i32.const 1081824209 + i32.le_u + if + local.get $1 + i32.const 1075235811 + i32.le_u + if + local.get $2 + if (result f32) + local.get $0 + f64.promote_f32 + f64.const 1.5707963267948966 + f64.add + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + f64.const -0.001388676377460993 + local.get $7 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $5 + f32.const 1 + f64.promote_f32 + local.get $7 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $6 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $6 + local.get $7 + f64.mul + local.get $5 + f64.mul + f64.add + f32.demote_f64 + f32.neg + else + local.get $0 + f64.promote_f32 + f64.const 1.5707963267948966 + f64.sub + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + local.get $5 + local.get $5 + f64.mul + local.set $6 + f64.const -0.001388676377460993 + local.get $5 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $7 + f32.const 1 + f64.promote_f32 + local.get $5 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $6 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $6 + local.get $5 + f64.mul + local.get $7 + f64.mul + f64.add + f32.demote_f64 + end + return + end + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 3.141592653589793 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 3.141592653589793 + f64.sub + end + f64.neg + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + f64.const -1.9839334836096632e-04 + local.get $7 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $5 + local.get $7 + local.get $3 + f64.mul + local.set $4 + local.get $3 + local.get $4 + f64.const -0.16666666641626524 + local.get $7 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $4 + local.get $6 + f64.mul + local.get $5 + f64.mul + f64.add + f32.demote_f64 + return + end + local.get $1 + i32.const 1088565717 + i32.le_u + if + local.get $1 + i32.const 1085271519 + i32.le_u + if + local.get $2 + if (result f32) + local.get $0 + f64.promote_f32 + f64.const 4.71238898038469 + f64.add + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const -0.001388676377460993 + local.get $4 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $6 + f32.const 1 + f64.promote_f32 + local.get $4 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $5 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $5 + local.get $4 + f64.mul + local.get $6 + f64.mul + f64.add + f32.demote_f64 + else + local.get $0 + f64.promote_f32 + f64.const 4.71238898038469 + f64.sub + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $5 + f64.const -0.001388676377460993 + local.get $6 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $4 + f32.const 1 + f64.promote_f32 + local.get $6 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $5 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $5 + local.get $6 + f64.mul + local.get $4 + f64.mul + f64.add + f32.demote_f64 + f32.neg + end + return + end + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 6.283185307179586 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 6.283185307179586 + f64.sub + end + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const -1.9839334836096632e-04 + local.get $4 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $6 + local.get $4 + local.get $3 + f64.mul + local.set $7 + local.get $3 + local.get $7 + f64.const -0.16666666641626524 + local.get $4 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $7 + local.get $5 + f64.mul + local.get $6 + f64.mul + f64.add + f32.demote_f64 + return + end + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + local.get $0 + f32.sub + return + end + block $~lib/math/rempio2f|inlined.1 (result i32) + local.get $0 + local.set $10 + local.get $1 + local.set $9 + local.get $2 + local.set $8 + local.get $9 + i32.const 1305022427 + i32.lt_u + if + local.get $10 + f64.promote_f32 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $7 + local.get $10 + f64.promote_f32 + local.get $7 + f64.const 1.5707963109016418 + f64.mul + f64.sub + local.get $7 + f64.const 1.5893254773528196e-08 + f64.mul + f64.sub + global.set $~lib/math/rempio2f_y + local.get $7 + i32.trunc_f64_s + br $~lib/math/rempio2f|inlined.1 + end + local.get $10 + local.set $12 + local.get $9 + local.set $11 + i32.const 312 + i32.load offset=4 + local.set $13 + local.get $11 + i32.const 23 + i32.shr_s + i32.const 152 + i32.sub + local.set $14 + local.get $14 + i32.const 63 + i32.and + i64.extend_i32_s + local.set $15 + local.get $13 + local.get $14 + i32.const 6 + i32.shr_s + i32.const 3 + i32.shl + i32.add + local.set $16 + local.get $16 + i64.load + local.set $17 + local.get $16 + i64.load offset=8 + local.set $18 + local.get $15 + i64.const 32 + i64.gt_u + if + local.get $16 + i64.load offset=16 + local.set $20 + local.get $20 + i64.const 96 + local.get $15 + i64.sub + i64.shr_u + local.set $19 + local.get $19 + local.get $18 + local.get $15 + i64.const 32 + i64.sub + i64.shl + i64.or + local.set $19 + else + local.get $18 + i64.const 32 + local.get $15 + i64.sub + i64.shr_u + local.set $19 + end + local.get $18 + i64.const 64 + local.get $15 + i64.sub + i64.shr_u + local.get $17 + local.get $15 + i64.shl + i64.or + local.set $20 + local.get $11 + i32.const 8388607 + i32.and + i32.const 8388608 + i32.or + i64.extend_i32_s + local.set $21 + local.get $21 + local.get $20 + i64.mul + local.get $21 + local.get $19 + i64.mul + i64.const 32 + i64.shr_u + i64.add + local.set $22 + local.get $22 + i64.const 2 + i64.shl + local.set $23 + local.get $22 + i64.const 62 + i64.shr_u + local.get $23 + i64.const 63 + i64.shr_u + i64.add + i32.wrap_i64 + local.set $24 + f64.const 8.515303950216386e-20 + local.get $12 + f64.promote_f32 + f64.copysign + local.get $23 + f64.convert_i64_s + f64.mul + global.set $~lib/math/rempio2f_y + local.get $24 + local.set $24 + i32.const 0 + local.get $24 + i32.sub + local.get $24 + local.get $8 + select + end + local.set $25 + global.get $~lib/math/rempio2f_y + local.set $26 + local.get $25 + i32.const 1 + i32.and + if (result f32) + local.get $26 + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + f64.const -0.001388676377460993 + local.get $7 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $5 + f32.const 1 + f64.promote_f32 + local.get $7 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $6 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $6 + local.get $7 + f64.mul + local.get $5 + f64.mul + f64.add + f32.demote_f64 + else + local.get $26 + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + local.get $5 + local.get $5 + f64.mul + local.set $6 + f64.const -1.9839334836096632e-04 + local.get $5 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $7 + local.get $5 + local.get $4 + f64.mul + local.set $3 + local.get $4 + local.get $3 + f64.const -0.16666666641626524 + local.get $5 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $3 + local.get $6 + f64.mul + local.get $7 + f64.mul + f64.add + f32.demote_f64 + end + local.set $27 + local.get $25 + i32.const 2 + i32.and + if (result f32) + local.get $27 + f32.neg + else + local.get $27 + end + ) + (func $../../lib/libm/assembly/libmf/sin (; 117 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.sin + ) + (func $~lib/math/NativeMathf.sinh (; 118 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + (local $3 f32) + (local $4 f32) + (local $5 f32) + (local $6 f32) + local.get $0 + i32.reinterpret_f32 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $2 + f32.const 0.5 + local.get $0 + f32.copysign + local.set $4 + local.get $1 + i32.const 1118925335 + i32.lt_u + if + local.get $2 + call $~lib/math/NativeMathf.expm1 + local.set $3 + local.get $1 + i32.const 1065353216 + i32.lt_u + if + local.get $1 + i32.const 964689920 + i32.lt_u + if + local.get $0 + return + end + local.get $4 + f32.const 2 + local.get $3 + f32.mul + local.get $3 + local.get $3 + f32.mul + local.get $3 + f32.const 1 + f32.add + f32.div + f32.sub + f32.mul + return + end + local.get $4 + local.get $3 + local.get $3 + local.get $3 + f32.const 1 + f32.add + f32.div + f32.add + f32.mul + return + end + f32.const 2 + local.get $4 + f32.mul + local.get $2 + local.set $5 + i32.const 127 + i32.const 235 + i32.const 1 + i32.shr_u + i32.add + i32.const 23 + i32.shl + f32.reinterpret_i32 + local.set $6 + local.get $5 + f32.const 162.88958740234375 + f32.sub + call $~lib/math/NativeMathf.exp + local.get $6 + f32.mul + local.get $6 + f32.mul + f32.mul + local.set $3 + local.get $3 + ) + (func $../../lib/libm/assembly/libmf/sinh (; 119 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.sinh + ) + (func $../../lib/libm/assembly/libmf/sqrt (; 120 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 f32) + local.get $0 + local.set $1 + local.get $1 + f32.sqrt + ) + (func $~lib/math/NativeMathf.tan (; 121 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 i32) + (local $12 f32) + (local $13 i32) + (local $14 f32) + (local $15 i32) + (local $16 i32) + (local $17 i64) + (local $18 i32) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i64) + (local $25 i64) + (local $26 i32) + (local $27 i32) + (local $28 f64) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 31 + i32.shr_u + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1061752794 + i32.le_u + if + local.get $1 + i32.const 964689920 + i32.lt_u + if + local.get $0 + return + end + local.get $0 + f64.promote_f32 + local.set $4 + i32.const 0 + local.set $3 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const 0.002974357433599673 + local.get $5 + f64.const 0.009465647849436732 + f64.mul + f64.add + local.set $6 + f64.const 0.05338123784456704 + local.get $5 + f64.const 0.024528318116654728 + f64.mul + f64.add + local.set $7 + local.get $5 + local.get $5 + f64.mul + local.set $8 + local.get $5 + local.get $4 + f64.mul + local.set $9 + f64.const 0.3333313950307914 + local.get $5 + f64.const 0.13339200271297674 + f64.mul + f64.add + local.set $10 + local.get $4 + local.get $9 + local.get $10 + f64.mul + f64.add + local.get $9 + local.get $8 + f64.mul + local.get $7 + local.get $8 + local.get $6 + f64.mul + f64.add + f64.mul + f64.add + local.set $6 + local.get $3 + if (result f64) + f32.const -1 + f64.promote_f32 + local.get $6 + f64.div + else + local.get $6 + end + f32.demote_f64 + return + end + local.get $1 + i32.const 1081824209 + i32.le_u + if + local.get $1 + i32.const 1075235811 + i32.le_u + if + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 1.5707963267948966 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 1.5707963267948966 + f64.sub + end + local.set $4 + i32.const 1 + local.set $3 + local.get $4 + local.get $4 + f64.mul + local.set $10 + f64.const 0.002974357433599673 + local.get $10 + f64.const 0.009465647849436732 + f64.mul + f64.add + local.set $9 + f64.const 0.05338123784456704 + local.get $10 + f64.const 0.024528318116654728 + f64.mul + f64.add + local.set $8 + local.get $10 + local.get $10 + f64.mul + local.set $7 + local.get $10 + local.get $4 + f64.mul + local.set $6 + f64.const 0.3333313950307914 + local.get $10 + f64.const 0.13339200271297674 + f64.mul + f64.add + local.set $5 + local.get $4 + local.get $6 + local.get $5 + f64.mul + f64.add + local.get $6 + local.get $7 + f64.mul + local.get $8 + local.get $7 + local.get $9 + f64.mul + f64.add + f64.mul + f64.add + local.set $9 + local.get $3 + if (result f64) + f32.const -1 + f64.promote_f32 + local.get $9 + f64.div + else + local.get $9 + end + f32.demote_f64 + return + else + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 3.141592653589793 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 3.141592653589793 + f64.sub + end + local.set $4 + i32.const 0 + local.set $3 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const 0.002974357433599673 + local.get $5 + f64.const 0.009465647849436732 + f64.mul + f64.add + local.set $6 + f64.const 0.05338123784456704 + local.get $5 + f64.const 0.024528318116654728 + f64.mul + f64.add + local.set $7 + local.get $5 + local.get $5 + f64.mul + local.set $8 + local.get $5 + local.get $4 + f64.mul + local.set $9 + f64.const 0.3333313950307914 + local.get $5 + f64.const 0.13339200271297674 + f64.mul + f64.add + local.set $10 + local.get $4 + local.get $9 + local.get $10 + f64.mul + f64.add + local.get $9 + local.get $8 + f64.mul + local.get $7 + local.get $8 + local.get $6 + f64.mul + f64.add + f64.mul + f64.add + local.set $6 + local.get $3 + if (result f64) + f32.const -1 + f64.promote_f32 + local.get $6 + f64.div + else + local.get $6 + end + f32.demote_f64 + return + end + unreachable + end + local.get $1 + i32.const 1088565717 + i32.le_u + if + local.get $1 + i32.const 1085271519 + i32.le_u + if + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 4.71238898038469 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 4.71238898038469 + f64.sub + end + local.set $4 + i32.const 1 + local.set $3 + local.get $4 + local.get $4 + f64.mul + local.set $10 + f64.const 0.002974357433599673 + local.get $10 + f64.const 0.009465647849436732 + f64.mul + f64.add + local.set $9 + f64.const 0.05338123784456704 + local.get $10 + f64.const 0.024528318116654728 + f64.mul + f64.add + local.set $8 + local.get $10 + local.get $10 + f64.mul + local.set $7 + local.get $10 + local.get $4 + f64.mul + local.set $6 + f64.const 0.3333313950307914 + local.get $10 + f64.const 0.13339200271297674 + f64.mul + f64.add + local.set $5 + local.get $4 + local.get $6 + local.get $5 + f64.mul + f64.add + local.get $6 + local.get $7 + f64.mul + local.get $8 + local.get $7 + local.get $9 + f64.mul + f64.add + f64.mul + f64.add + local.set $9 + local.get $3 + if (result f64) + f32.const -1 + f64.promote_f32 + local.get $9 + f64.div + else + local.get $9 + end + f32.demote_f64 + return + else + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 6.283185307179586 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 6.283185307179586 + f64.sub + end + local.set $4 + i32.const 0 + local.set $3 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const 0.002974357433599673 + local.get $5 + f64.const 0.009465647849436732 + f64.mul + f64.add + local.set $6 + f64.const 0.05338123784456704 + local.get $5 + f64.const 0.024528318116654728 + f64.mul + f64.add + local.set $7 + local.get $5 + local.get $5 + f64.mul + local.set $8 + local.get $5 + local.get $4 + f64.mul + local.set $9 + f64.const 0.3333313950307914 + local.get $5 + f64.const 0.13339200271297674 + f64.mul + f64.add + local.set $10 + local.get $4 + local.get $9 + local.get $10 + f64.mul + f64.add + local.get $9 + local.get $8 + f64.mul + local.get $7 + local.get $8 + local.get $6 + f64.mul + f64.add + f64.mul + f64.add + local.set $6 + local.get $3 + if (result f64) + f32.const -1 + f64.promote_f32 + local.get $6 + f64.div + else + local.get $6 + end + f32.demote_f64 + return + end + unreachable + end + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + local.get $0 + f32.sub + return + end + block $~lib/math/rempio2f|inlined.2 (result i32) + local.get $0 + local.set $12 + local.get $1 + local.set $11 + local.get $2 + local.set $3 + local.get $11 + i32.const 1305022427 + i32.lt_u + if + local.get $12 + f64.promote_f32 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $10 + local.get $12 + f64.promote_f32 + local.get $10 + f64.const 1.5707963109016418 + f64.mul + f64.sub + local.get $10 + f64.const 1.5893254773528196e-08 + f64.mul + f64.sub + global.set $~lib/math/rempio2f_y + local.get $10 + i32.trunc_f64_s + br $~lib/math/rempio2f|inlined.2 + end + local.get $12 + local.set $14 + local.get $11 + local.set $13 + i32.const 312 + i32.load offset=4 + local.set $15 + local.get $13 + i32.const 23 + i32.shr_s + i32.const 152 + i32.sub + local.set $16 + local.get $16 + i32.const 63 + i32.and + i64.extend_i32_s + local.set $17 + local.get $15 + local.get $16 + i32.const 6 + i32.shr_s + i32.const 3 + i32.shl + i32.add + local.set $18 + local.get $18 + i64.load + local.set $19 + local.get $18 + i64.load offset=8 + local.set $20 + local.get $17 + i64.const 32 + i64.gt_u + if + local.get $18 + i64.load offset=16 + local.set $22 + local.get $22 + i64.const 96 + local.get $17 + i64.sub + i64.shr_u + local.set $21 + local.get $21 + local.get $20 + local.get $17 + i64.const 32 + i64.sub + i64.shl + i64.or + local.set $21 + else + local.get $20 + i64.const 32 + local.get $17 + i64.sub + i64.shr_u + local.set $21 + end + local.get $20 + i64.const 64 + local.get $17 + i64.sub + i64.shr_u + local.get $19 + local.get $17 + i64.shl + i64.or + local.set $22 + local.get $13 + i32.const 8388607 + i32.and + i32.const 8388608 + i32.or + i64.extend_i32_s + local.set $23 + local.get $23 + local.get $22 + i64.mul + local.get $23 + local.get $21 + i64.mul + i64.const 32 + i64.shr_u + i64.add + local.set $24 + local.get $24 + i64.const 2 + i64.shl + local.set $25 + local.get $24 + i64.const 62 + i64.shr_u + local.get $25 + i64.const 63 + i64.shr_u + i64.add + i32.wrap_i64 + local.set $26 + f64.const 8.515303950216386e-20 + local.get $14 + f64.promote_f32 + f64.copysign + local.get $25 + f64.convert_i64_s + f64.mul + global.set $~lib/math/rempio2f_y + local.get $26 + local.set $26 + i32.const 0 + local.get $26 + i32.sub + local.get $26 + local.get $3 + select + end + local.set $27 + global.get $~lib/math/rempio2f_y + local.set $28 + local.get $28 + local.set $4 + local.get $27 + i32.const 1 + i32.and + local.set $13 + local.get $4 + local.get $4 + f64.mul + local.set $10 + f64.const 0.002974357433599673 + local.get $10 + f64.const 0.009465647849436732 + f64.mul + f64.add + local.set $9 + f64.const 0.05338123784456704 + local.get $10 + f64.const 0.024528318116654728 + f64.mul + f64.add + local.set $8 + local.get $10 + local.get $10 + f64.mul + local.set $7 + local.get $10 + local.get $4 + f64.mul + local.set $6 + f64.const 0.3333313950307914 + local.get $10 + f64.const 0.13339200271297674 + f64.mul + f64.add + local.set $5 + local.get $4 + local.get $6 + local.get $5 + f64.mul + f64.add + local.get $6 + local.get $7 + f64.mul + local.get $8 + local.get $7 + local.get $9 + f64.mul + f64.add + f64.mul + f64.add + local.set $9 + local.get $13 + if (result f64) + f32.const -1 + f64.promote_f32 + local.get $9 + f64.div + else + local.get $9 + end + f32.demote_f64 + ) + (func $../../lib/libm/assembly/libmf/tan (; 122 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.tan + ) + (func $~lib/math/NativeMathf.tanh (; 123 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + (local $3 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $2 + local.get $1 + i32.const 1057791828 + i32.gt_u + if + local.get $1 + i32.const 1092616192 + i32.gt_u + if + f32.const 1 + f32.const 0 + local.get $2 + f32.div + f32.add + local.set $3 + else + f32.const 2 + local.get $2 + f32.mul + call $~lib/math/NativeMathf.expm1 + local.set $3 + f32.const 1 + f32.const 2 + local.get $3 + f32.const 2 + f32.add + f32.div + f32.sub + local.set $3 + end + else + local.get $1 + i32.const 1048757624 + i32.gt_u + if + f32.const 2 + local.get $2 + f32.mul + call $~lib/math/NativeMathf.expm1 + local.set $3 + local.get $3 + local.get $3 + f32.const 2 + f32.add + f32.div + local.set $3 + else + local.get $1 + i32.const 8388608 + i32.ge_u + if + f32.const -2 + local.get $2 + f32.mul + call $~lib/math/NativeMathf.expm1 + local.set $3 + local.get $3 + f32.neg + local.get $3 + f32.const 2 + f32.add + f32.div + local.set $3 + else + local.get $2 + local.set $3 + end + end + end + local.get $3 + local.get $0 + f32.copysign + ) + (func $../../lib/libm/assembly/libmf/tanh (; 124 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + local.get $0 + call $~lib/math/NativeMathf.tanh + ) + (func $../../lib/libm/assembly/libmf/trunc (; 125 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 f32) + local.get $0 + local.set $1 + local.get $1 + f32.trunc + ) + (func $null (; 126 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/std/math.untouched.wat b/tests/compiler/std/math.untouched.wat index e69de29bb2..c0cfb234a3 100644 --- a/tests/compiler/std/math.untouched.wat +++ b/tests/compiler/std/math.untouched.wat @@ -0,0 +1,54516 @@ +(module + (type $FUNCSIG$idddi (func (param f64 f64 f64 i32) (result i32))) + (type $FUNCSIG$id (func (param f64) (result i32))) + (type $FUNCSIG$dddd (func (param f64 f64 f64) (result f64))) + (type $FUNCSIG$ddi (func (param f64 i32) (result f64))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$ifffi (func (param f32 f32 f32 i32) (result i32))) + (type $FUNCSIG$if (func (param f32) (result i32))) + (type $FUNCSIG$ffff (func (param f32 f32 f32) (result f32))) + (type $FUNCSIG$ffi (func (param f32 i32) (result f32))) + (type $FUNCSIG$ididdi (func (param f64 i32 f64 f64 i32) (result i32))) + (type $FUNCSIG$ififfi (func (param f32 i32 f32 f32 i32) (result i32))) + (type $FUNCSIG$dd (func (param f64) (result f64))) + (type $FUNCSIG$ff (func (param f32) (result f32))) + (type $FUNCSIG$iddddi (func (param f64 f64 f64 f64 i32) (result i32))) + (type $FUNCSIG$ddd (func (param f64 f64) (result f64))) + (type $FUNCSIG$iffffi (func (param f32 f32 f32 f32 i32) (result i32))) + (type $FUNCSIG$fff (func (param f32 f32) (result f32))) + (type $FUNCSIG$idj (func (param f64 i64) (result i32))) + (type $FUNCSIG$d (func (result f64))) + (type $FUNCSIG$vj (func (param i64))) + (type $FUNCSIG$jj (func (param i64) (result i64))) + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$f (func (result f32))) + (type $FUNCSIG$dddi (func (param f64 f64 i32) (result f64))) + (type $FUNCSIG$ijjjjji (func (param i64 i64 i64 i64 i64 i32) (result i32))) + (type $FUNCSIG$vd (func (param f64))) + (type $FUNCSIG$jji (func (param i64 i32) (result i64))) + (type $FUNCSIG$v (func)) + (import "Math" "E" (global $~lib/bindings/Math/E f64)) + (import "Math" "LN2" (global $~lib/bindings/Math/LN2 f64)) + (import "Math" "LN10" (global $~lib/bindings/Math/LN10 f64)) + (import "Math" "LOG2E" (global $~lib/bindings/Math/LOG2E f64)) + (import "Math" "PI" (global $~lib/bindings/Math/PI f64)) + (import "Math" "SQRT1_2" (global $~lib/bindings/Math/SQRT1_2 f64)) + (import "Math" "SQRT2" (global $~lib/bindings/Math/SQRT2 f64)) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "Math" "abs" (func $~lib/bindings/Math/abs (param f64) (result f64))) + (import "Math" "acos" (func $~lib/bindings/Math/acos (param f64) (result f64))) + (import "Math" "acosh" (func $~lib/bindings/Math/acosh (param f64) (result f64))) + (import "Math" "asin" (func $~lib/bindings/Math/asin (param f64) (result f64))) + (import "Math" "asinh" (func $~lib/bindings/Math/asinh (param f64) (result f64))) + (import "Math" "atan" (func $~lib/bindings/Math/atan (param f64) (result f64))) + (import "Math" "atanh" (func $~lib/bindings/Math/atanh (param f64) (result f64))) + (import "Math" "atan2" (func $~lib/bindings/Math/atan2 (param f64 f64) (result f64))) + (import "Math" "cbrt" (func $~lib/bindings/Math/cbrt (param f64) (result f64))) + (import "Math" "ceil" (func $~lib/bindings/Math/ceil (param f64) (result f64))) + (import "Math" "cos" (func $~lib/bindings/Math/cos (param f64) (result f64))) + (import "Math" "cosh" (func $~lib/bindings/Math/cosh (param f64) (result f64))) + (import "Math" "exp" (func $~lib/bindings/Math/exp (param f64) (result f64))) + (import "Math" "expm1" (func $~lib/bindings/Math/expm1 (param f64) (result f64))) + (import "Math" "floor" (func $~lib/bindings/Math/floor (param f64) (result f64))) + (import "Math" "hypot" (func $~lib/bindings/Math/hypot (param f64 f64) (result f64))) + (import "Math" "log" (func $~lib/bindings/Math/log (param f64) (result f64))) + (import "Math" "log10" (func $~lib/bindings/Math/log10 (param f64) (result f64))) + (import "Math" "log1p" (func $~lib/bindings/Math/log1p (param f64) (result f64))) + (import "Math" "log2" (func $~lib/bindings/Math/log2 (param f64) (result f64))) + (import "Math" "max" (func $~lib/bindings/Math/max (param f64 f64) (result f64))) + (import "Math" "min" (func $~lib/bindings/Math/min (param f64 f64) (result f64))) + (import "math" "mod" (func $std/math/mod (param f64 f64) (result f64))) + (import "Math" "pow" (func $~lib/bindings/Math/pow (param f64 f64) (result f64))) + (import "Math" "random" (func $~lib/bindings/Math/random (result f64))) + (import "Math" "sign" (func $~lib/bindings/Math/sign (param f64) (result f64))) + (import "Math" "sin" (func $~lib/bindings/Math/sin (param f64) (result f64))) + (import "Math" "sinh" (func $~lib/bindings/Math/sinh (param f64) (result f64))) + (import "Math" "sqrt" (func $~lib/bindings/Math/sqrt (param f64) (result f64))) + (import "Math" "tan" (func $~lib/bindings/Math/tan (param f64) (result f64))) + (import "Math" "tanh" (func $~lib/bindings/Math/tanh (param f64) (result f64))) + (import "Math" "trunc" (func $~lib/bindings/Math/trunc (param f64) (result f64))) + (memory $0 1) + (data (i32.const 8) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\00s\00t\00d\00/\00m\00a\00t\00h\00.\00t\00s\00") + (data (i32.const 48) "\c0\00\00\00\01\00\00\00\00\00\00\00\c0\00\00\00n\83\f9\a2\00\00\00\00\d1W\'\fc)\15DN\99\95b\db\c0\dd4\f5\abcQ\feA\90C<:n$\b7a\c5\bb\de\ea.I\06\e0\d2MB\1c\eb\1d\fe\1c\92\d1\t\f55\82\e8>\a7)\b1&p\9c\e9\84D\bb.9\d6\919A~_\b4\8b_\84\9c\f49S\83\ff\97\f8\1f;(\f9\bd\8b\11/\ef\0f\98\05\de\cf~6m\1fm\nZf?FO\b7\t\cb\'\c7\ba\'u-\ea_\9e\f79\07={\f1\e5\eb\b1_\fbk\ea\92R\8aF0\03V\08]\8d\1f \bc\cf\f0\abk{\fca\91\e3\a9\1d6\f4\9a_\85\99e\08\1b\e6^\80\d8\ff\8d@h\a0\14W\15\06\061\'sM") + (data (i32.const 256) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00@\00\00\00@\00\00\00\c0\00\00\00\18\00\00\00") + (data (i32.const 288) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00)\15DNn\83\f9\a2\c0\dd4\f5\d1W\'\fcA\90C<\99\95b\dba\c5\bb\de\abcQ\fe") + (data (i32.const 336) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\000\01\00\000\01\00\00 \00\00\00\04\00\00\00") + (data (i32.const 368) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s\00") + (data (i32.const 408) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00P\00R\00N\00G\00 \00m\00u\00s\00t\00 \00b\00e\00 \00s\00e\00e\00d\00e\00d\00.\00") + (table $0 1 funcref) + (elem (i32.const 0) $null) + (global $std/math/js i32 (i32.const 1)) + (global $std/math/INEXACT i32 (i32.const 1)) + (global $std/math/INVALID i32 (i32.const 2)) + (global $std/math/DIVBYZERO i32 (i32.const 4)) + (global $std/math/UNDERFLOW i32 (i32.const 8)) + (global $std/math/OVERFLOW i32 (i32.const 16)) + (global $std/math/kPI f64 (f64.const 3.141592653589793)) + (global $std/math/kTwo120 f64 (f64.const 1329227995784915872903807e12)) + (global $~lib/math/NativeMath.E f64 (f64.const 2.718281828459045)) + (global $~lib/math/NativeMathf.E f32 (f32.const 2.7182817459106445)) + (global $~lib/math/NativeMath.LN2 f64 (f64.const 0.6931471805599453)) + (global $~lib/math/NativeMath.LN10 f64 (f64.const 2.302585092994046)) + (global $~lib/math/NativeMath.LOG2E f64 (f64.const 1.4426950408889634)) + (global $~lib/math/NativeMath.PI f64 (f64.const 3.141592653589793)) + (global $~lib/math/NativeMath.SQRT1_2 f64 (f64.const 0.7071067811865476)) + (global $~lib/math/NativeMath.SQRT2 f64 (f64.const 1.4142135623730951)) + (global $~lib/math/NativeMathf.LN2 f32 (f32.const 0.6931471824645996)) + (global $~lib/math/NativeMathf.LN10 f32 (f32.const 2.3025851249694824)) + (global $~lib/math/NativeMathf.LOG2E f32 (f32.const 1.4426950216293335)) + (global $~lib/math/NativeMathf.PI f32 (f32.const 3.1415927410125732)) + (global $~lib/math/NativeMathf.SQRT1_2 f32 (f32.const 0.7071067690849304)) + (global $~lib/math/NativeMathf.SQRT2 f32 (f32.const 1.4142135381698608)) + (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) + (global $~lib/math/rempio2_y0 (mut f64) (f64.const 0)) + (global $~lib/math/rempio2_y1 (mut f64) (f64.const 0)) + (global $~lib/math/PIO2_TABLE i32 (i32.const 272)) + (global $~lib/math/res128_hi (mut i64) (i64.const 0)) + (global $~lib/math/rempio2f_y (mut f64) (f64.const 0)) + (global $~lib/math/PIO2F_TABLE i32 (i32.const 352)) + (global $~lib/builtins/f32.MAX_VALUE f32 (f32.const 3402823466385288598117041e14)) + (global $~lib/builtins/f64.MIN_VALUE f64 (f64.const 5e-324)) + (global $~lib/math/random_seeded (mut i32) (i32.const 0)) + (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) + (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) + (global $~lib/math/NativeMath.sincos_sin (mut f64) (f64.const 0)) + (global $~lib/math/NativeMath.sincos_cos (mut f64) (f64.const 0)) + (global $~lib/builtins/f64.MAX_VALUE f64 (f64.const 1797693134862315708145274e284)) + (global $~lib/builtins/f64.MAX_SAFE_INTEGER f64 (f64.const 9007199254740991)) + (global $~lib/builtins/f64.EPSILON f64 (f64.const 2.220446049250313e-16)) + (global $~lib/builtins/f32.MIN_VALUE f32 (f32.const 1.401298464324817e-45)) + (export "memory" (memory $0)) + (start $start) + (func $~lib/number/isNaN (; 33 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.ne + ) + (func $~lib/number/isFinite (; 34 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.eq + ) + (func $std/math/eulp (; 35 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (local $1 i64) + (local $2 i32) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + i32.wrap_i64 + local.set $2 + local.get $2 + i32.eqz + if + local.get $2 + i32.const 1 + i32.add + local.set $2 + end + local.get $2 + i32.const 1023 + i32.sub + i32.const 52 + i32.sub + ) + (func $~lib/math/NativeMath.scalbn (; 36 ;) (type $FUNCSIG$ddi) (param $0 f64) (param $1 i32) (result f64) + (local $2 f64) + (local $3 i32) + (local $4 i32) + local.get $0 + local.set $2 + local.get $1 + i32.const 1023 + i32.gt_s + if + local.get $2 + f64.const 8988465674311579538646525e283 + f64.mul + local.set $2 + local.get $1 + i32.const 1023 + i32.sub + local.set $1 + local.get $1 + i32.const 1023 + i32.gt_s + if + local.get $2 + f64.const 8988465674311579538646525e283 + f64.mul + local.set $2 + local.get $1 + i32.const 1023 + i32.sub + local.tee $3 + i32.const 1023 + local.tee $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.set $1 + end + else + local.get $1 + i32.const -1022 + i32.lt_s + if + local.get $2 + f64.const 2.2250738585072014e-308 + f64.const 9007199254740992 + f64.mul + f64.mul + local.set $2 + local.get $1 + i32.const 1022 + i32.const 53 + i32.sub + i32.add + local.set $1 + local.get $1 + i32.const -1022 + i32.lt_s + if + local.get $2 + f64.const 2.2250738585072014e-308 + f64.const 9007199254740992 + f64.mul + f64.mul + local.set $2 + local.get $1 + i32.const 1022 + i32.add + i32.const 53 + i32.sub + local.tee $3 + i32.const -1022 + local.tee $4 + local.get $3 + local.get $4 + i32.gt_s + select + local.set $1 + end + end + end + local.get $2 + i64.const 1023 + local.get $1 + i64.extend_i32_s + i64.add + i64.const 52 + i64.shl + f64.reinterpret_i64 + f64.mul + ) + (func $std/math/ulperr (; 37 ;) (type $FUNCSIG$dddd) (param $0 f64) (param $1 f64) (param $2 f64) (result f64) + (local $3 f64) + local.get $0 + call $~lib/number/isNaN + if (result i32) + local.get $1 + call $~lib/number/isNaN + else + i32.const 0 + end + if + f64.const 0 + return + end + local.get $0 + local.get $1 + f64.eq + if + local.get $0 + local.set $3 + local.get $3 + i64.reinterpret_f64 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.get $3 + local.get $3 + f64.eq + i32.and + i32.const 0 + i32.ne + local.get $1 + local.set $3 + local.get $3 + i64.reinterpret_f64 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.get $3 + local.get $3 + f64.eq + i32.and + i32.const 0 + i32.ne + i32.eq + if + local.get $2 + return + end + f64.const inf + return + end + local.get $0 + call $~lib/number/isFinite + i32.eqz + if + f64.const 8988465674311579538646525e283 + local.get $0 + f64.copysign + local.set $0 + local.get $1 + f64.const 0.5 + f64.mul + local.set $1 + end + local.get $0 + local.get $1 + f64.sub + i32.const 0 + local.get $1 + call $std/math/eulp + i32.sub + call $~lib/math/NativeMath.scalbn + local.get $2 + f64.add + ) + (func $std/math/check (; 38 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (local $4 f64) + local.get $0 + local.get $1 + f64.eq + if + i32.const 1 + return + end + local.get $1 + call $~lib/number/isNaN + if + local.get $0 + call $~lib/number/isNaN + return + end + local.get $0 + local.get $1 + local.get $2 + call $std/math/ulperr + local.set $4 + local.get $4 + f64.abs + f64.const 1.5 + f64.ge + if + i32.const 0 + return + end + i32.const 1 + ) + (func $~lib/number/isNaN (; 39 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + local.get $0 + local.get $0 + f32.ne + ) + (func $~lib/number/isFinite (; 40 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + local.get $0 + local.get $0 + f32.sub + f32.const 0 + f32.eq + ) + (func $std/math/eulpf (; 41 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 23 + i32.shr_u + i32.const 255 + i32.and + local.set $2 + local.get $2 + i32.eqz + if + local.get $2 + i32.const 1 + i32.add + local.set $2 + end + local.get $2 + i32.const 127 + i32.sub + i32.const 23 + i32.sub + ) + (func $~lib/math/NativeMathf.scalbn (; 42 ;) (type $FUNCSIG$ffi) (param $0 f32) (param $1 i32) (result f32) + (local $2 f32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.set $2 + local.get $1 + i32.const 127 + i32.gt_s + if + local.get $2 + f32.const 1701411834604692317316873e14 + f32.mul + local.set $2 + local.get $1 + i32.const 127 + i32.sub + local.set $1 + local.get $1 + i32.const 127 + i32.gt_s + if + local.get $2 + f32.const 1701411834604692317316873e14 + f32.mul + local.set $2 + local.get $1 + i32.const 127 + i32.sub + local.tee $3 + i32.const 127 + local.tee $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.set $1 + end + else + local.get $1 + i32.const -126 + i32.lt_s + if + local.get $2 + f32.const 1.1754943508222875e-38 + f32.const 16777216 + f32.mul + f32.mul + local.set $2 + local.get $1 + i32.const 126 + i32.const 24 + i32.sub + i32.add + local.set $1 + local.get $1 + i32.const -126 + i32.lt_s + if + local.get $2 + f32.const 1.1754943508222875e-38 + f32.const 16777216 + f32.mul + f32.mul + local.set $2 + local.get $1 + i32.const 126 + i32.add + i32.const 24 + i32.sub + local.tee $3 + i32.const -126 + local.tee $4 + local.get $3 + local.get $4 + i32.gt_s + select + local.set $1 + end + end + end + local.get $2 + i32.const 127 + local.get $1 + i32.add + i32.const 23 + i32.shl + f32.reinterpret_i32 + f32.mul + ) + (func $std/math/ulperrf (; 43 ;) (type $FUNCSIG$ffff) (param $0 f32) (param $1 f32) (param $2 f32) (result f32) + (local $3 f32) + local.get $0 + call $~lib/number/isNaN + if (result i32) + local.get $1 + call $~lib/number/isNaN + else + i32.const 0 + end + if + f32.const 0 + return + end + local.get $0 + local.get $1 + f32.eq + if + local.get $0 + local.set $3 + local.get $3 + i32.reinterpret_f32 + i32.const 31 + i32.shr_u + local.get $3 + local.get $3 + f32.eq + i32.and + i32.const 0 + i32.ne + local.get $1 + local.set $3 + local.get $3 + i32.reinterpret_f32 + i32.const 31 + i32.shr_u + local.get $3 + local.get $3 + f32.eq + i32.and + i32.const 0 + i32.ne + i32.eq + if + local.get $2 + return + end + f32.const inf + return + end + local.get $0 + call $~lib/number/isFinite + i32.eqz + if + f32.const 1701411834604692317316873e14 + local.get $0 + f32.copysign + local.set $0 + local.get $1 + f32.const 0.5 + f32.mul + local.set $1 + end + local.get $0 + local.get $1 + f32.sub + i32.const 0 + local.get $1 + call $std/math/eulpf + i32.sub + call $~lib/math/NativeMathf.scalbn + local.get $2 + f32.add + ) + (func $std/math/check (; 44 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (local $4 f32) + local.get $0 + local.get $1 + f32.eq + if + i32.const 1 + return + end + local.get $1 + call $~lib/number/isNaN + if + local.get $0 + call $~lib/number/isNaN + return + end + local.get $0 + local.get $1 + local.get $2 + call $std/math/ulperrf + local.set $4 + local.get $4 + f32.abs + f32.const 1.5 + f32.ge + if + i32.const 0 + return + end + i32.const 1 + ) + (func $std/math/test_scalbn (; 45 ;) (type $FUNCSIG$ididdi) (param $0 f64) (param $1 i32) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) + local.get $0 + local.get $1 + call $~lib/math/NativeMath.scalbn + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + ) + (func $std/math/test_scalbnf (; 46 ;) (type $FUNCSIG$ififfi) (param $0 f32) (param $1 i32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) + local.get $0 + local.get $1 + call $~lib/math/NativeMathf.scalbn + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + ) + (func $std/math/test_abs (; 47 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (local $4 f64) + local.get $0 + local.set $4 + local.get $4 + f64.abs + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/abs + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $std/math/test_absf (; 48 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (local $4 f32) + local.get $0 + local.set $4 + local.get $4 + f32.abs + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/R (; 49 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 f64) + (local $2 f64) + local.get $0 + f64.const 0.16666666666666666 + local.get $0 + f64.const -0.3255658186224009 + local.get $0 + f64.const 0.20121253213486293 + local.get $0 + f64.const -0.04005553450067941 + local.get $0 + f64.const 7.915349942898145e-04 + local.get $0 + f64.const 3.479331075960212e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $1 + f64.const 1 + local.get $0 + f64.const -2.403394911734414 + local.get $0 + f64.const 2.0209457602335057 + local.get $0 + f64.const -0.6882839716054533 + local.get $0 + f64.const 0.07703815055590194 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $2 + local.get $1 + local.get $2 + f64.div + ) + (func $~lib/math/NativeMath.acos (; 50 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + local.get $0 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1072693248 + i32.ge_u + if + local.get $0 + i64.reinterpret_f64 + i32.wrap_i64 + local.set $3 + local.get $2 + i32.const 1072693248 + i32.sub + local.get $3 + i32.or + i32.const 0 + i32.eq + if + local.get $1 + i32.const 31 + i32.shr_u + if + f64.const 2 + f64.const 1.5707963267948966 + f64.mul + f32.const 7.52316384526264e-37 + f64.promote_f32 + f64.add + return + end + f64.const 0 + return + end + f64.const 0 + local.get $0 + local.get $0 + f64.sub + f64.div + return + end + local.get $2 + i32.const 1071644672 + i32.lt_u + if + local.get $2 + i32.const 1012924416 + i32.le_u + if + f64.const 1.5707963267948966 + f32.const 7.52316384526264e-37 + f64.promote_f32 + f64.add + return + end + f64.const 1.5707963267948966 + local.get $0 + f64.const 6.123233995736766e-17 + local.get $0 + local.get $0 + local.get $0 + f64.mul + call $~lib/math/R + f64.mul + f64.sub + f64.sub + f64.sub + return + end + local.get $1 + i32.const 31 + i32.shr_u + if + f64.const 0.5 + local.get $0 + f64.const 0.5 + f64.mul + f64.add + local.set $6 + local.get $6 + f64.sqrt + local.set $4 + local.get $6 + call $~lib/math/R + local.get $4 + f64.mul + f64.const 6.123233995736766e-17 + f64.sub + local.set $5 + f64.const 2 + f64.const 1.5707963267948966 + local.get $4 + local.get $5 + f64.add + f64.sub + f64.mul + return + end + f64.const 0.5 + local.get $0 + f64.const 0.5 + f64.mul + f64.sub + local.set $6 + local.get $6 + f64.sqrt + local.set $4 + local.get $4 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $7 + local.get $6 + local.get $7 + local.get $7 + f64.mul + f64.sub + local.get $4 + local.get $7 + f64.add + f64.div + local.set $8 + local.get $6 + call $~lib/math/R + local.get $4 + f64.mul + local.get $8 + f64.add + local.set $5 + f64.const 2 + local.get $7 + local.get $5 + f64.add + f64.mul + ) + (func $std/math/test_acos (; 51 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.acos + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/acos + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/Rf (; 52 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 f32) + (local $2 f32) + local.get $0 + f32.const 0.16666586697101593 + local.get $0 + f32.const -0.04274342209100723 + local.get $0 + f32.const -0.008656363002955914 + f32.mul + f32.add + f32.mul + f32.add + f32.mul + local.set $1 + f32.const 1 + local.get $0 + f32.const -0.7066296339035034 + f32.mul + f32.add + local.set $2 + local.get $1 + local.get $2 + f32.div + ) + (func $~lib/math/NativeMathf.acos (; 53 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f32) + (local $4 f32) + (local $5 f32) + (local $6 f32) + (local $7 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1065353216 + i32.ge_u + if + local.get $2 + i32.const 1065353216 + i32.eq + if + local.get $1 + i32.const 31 + i32.shr_u + if + f32.const 2 + f32.const 1.570796251296997 + f32.mul + f32.const 7.52316384526264e-37 + f32.add + return + end + f32.const 0 + return + end + f32.const 0 + local.get $0 + local.get $0 + f32.sub + f32.div + return + end + local.get $2 + i32.const 1056964608 + i32.lt_u + if + local.get $2 + i32.const 847249408 + i32.le_u + if + f32.const 1.570796251296997 + f32.const 7.52316384526264e-37 + f32.add + return + end + f32.const 1.570796251296997 + local.get $0 + f32.const 7.549789415861596e-08 + local.get $0 + local.get $0 + local.get $0 + f32.mul + call $~lib/math/Rf + f32.mul + f32.sub + f32.sub + f32.sub + return + end + local.get $1 + i32.const 31 + i32.shr_u + if + f32.const 0.5 + local.get $0 + f32.const 0.5 + f32.mul + f32.add + local.set $3 + local.get $3 + f32.sqrt + local.set $5 + local.get $3 + call $~lib/math/Rf + local.get $5 + f32.mul + f32.const 7.549789415861596e-08 + f32.sub + local.set $4 + f32.const 2 + f32.const 1.570796251296997 + local.get $5 + local.get $4 + f32.add + f32.sub + f32.mul + return + end + f32.const 0.5 + local.get $0 + f32.const 0.5 + f32.mul + f32.sub + local.set $3 + local.get $3 + f32.sqrt + local.set $5 + local.get $5 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $6 + local.get $3 + local.get $6 + local.get $6 + f32.mul + f32.sub + local.get $5 + local.get $6 + f32.add + f32.div + local.set $7 + local.get $3 + call $~lib/math/Rf + local.get $5 + f32.mul + local.get $7 + f32.add + local.set $4 + f32.const 2 + local.get $6 + local.get $4 + f32.add + f32.mul + ) + (func $std/math/test_acosf (; 54 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.acos + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.log1p (; 55 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 i32) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 f64) + (local $14 f64) + (local $15 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + i32.const 1 + local.set $3 + f64.const 0 + local.set $4 + f64.const 0 + local.set $5 + local.get $2 + i32.const 1071284858 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $2 + i32.const 31 + i32.shr_u + end + if + local.get $2 + i32.const -1074790400 + i32.ge_u + if + local.get $0 + f64.const -1 + f64.eq + if + local.get $0 + f64.const 0 + f64.div + return + end + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.div + return + end + local.get $2 + i32.const 1 + i32.shl + i32.const 2034237440 + i32.lt_u + if + local.get $0 + return + end + local.get $2 + i32.const -1076707644 + i32.le_u + if + i32.const 0 + local.set $3 + f64.const 0 + local.set $4 + local.get $0 + local.set $5 + end + else + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + return + end + end + local.get $3 + if + f64.const 1 + local.get $0 + f64.add + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $6 + local.get $6 + i32.const 1072693248 + i32.const 1072079006 + i32.sub + i32.add + local.set $6 + local.get $6 + i32.const 20 + i32.shr_u + i32.const 1023 + i32.sub + local.set $3 + local.get $3 + i32.const 54 + i32.lt_s + if + local.get $1 + f64.reinterpret_i64 + local.set $7 + local.get $3 + i32.const 2 + i32.ge_s + if (result f64) + f64.const 1 + local.get $7 + local.get $0 + f64.sub + f64.sub + else + local.get $0 + local.get $7 + f64.const 1 + f64.sub + f64.sub + end + local.set $4 + local.get $4 + local.get $7 + f64.div + local.set $4 + else + f64.const 0 + local.set $4 + end + local.get $6 + i32.const 1048575 + i32.and + i32.const 1072079006 + i32.add + local.set $6 + local.get $6 + i64.extend_i32_u + i64.const 32 + i64.shl + local.get $1 + i64.const 4294967295 + i64.and + i64.or + local.set $1 + local.get $1 + f64.reinterpret_i64 + f64.const 1 + f64.sub + local.set $5 + end + f64.const 0.5 + local.get $5 + f64.mul + local.get $5 + f64.mul + local.set $8 + local.get $5 + f64.const 2 + local.get $5 + f64.add + f64.div + local.set $9 + local.get $9 + local.get $9 + f64.mul + local.set $10 + local.get $10 + local.get $10 + f64.mul + local.set $11 + local.get $11 + f64.const 0.3999999999940942 + local.get $11 + f64.const 0.22222198432149784 + local.get $11 + f64.const 0.15313837699209373 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $12 + local.get $10 + f64.const 0.6666666666666735 + local.get $11 + f64.const 0.2857142874366239 + local.get $11 + f64.const 0.1818357216161805 + local.get $11 + f64.const 0.14798198605116586 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $13 + local.get $13 + local.get $12 + f64.add + local.set $14 + local.get $3 + f64.convert_i32_s + local.set $15 + local.get $9 + local.get $8 + local.get $14 + f64.add + f64.mul + local.get $15 + f64.const 1.9082149292705877e-10 + f64.mul + local.get $4 + f64.add + f64.add + local.get $8 + f64.sub + local.get $5 + f64.add + local.get $15 + f64.const 0.6931471803691238 + f64.mul + f64.add + ) + (func $~lib/math/NativeMath.log (; 56 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + i32.const 0 + local.set $3 + local.get $2 + i32.const 1048576 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $2 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i64.const 1 + i64.shl + i64.const 0 + i64.eq + if + f64.const -1 + local.get $0 + local.get $0 + f64.mul + f64.div + return + end + local.get $2 + i32.const 31 + i32.shr_u + if + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.div + return + end + local.get $3 + i32.const 54 + i32.sub + local.set $3 + local.get $0 + f64.const 18014398509481984 + f64.mul + local.set $0 + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + else + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + return + else + local.get $2 + i32.const 1072693248 + i32.eq + if (result i32) + local.get $1 + i64.const 32 + i64.shl + i64.const 0 + i64.eq + else + i32.const 0 + end + if + f64.const 0 + return + end + end + end + local.get $2 + i32.const 1072693248 + i32.const 1072079006 + i32.sub + i32.add + local.set $2 + local.get $3 + local.get $2 + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + i32.add + local.set $3 + local.get $2 + i32.const 1048575 + i32.and + i32.const 1072079006 + i32.add + local.set $2 + local.get $2 + i64.extend_i32_u + i64.const 32 + i64.shl + local.get $1 + i64.const 4294967295 + i64.and + i64.or + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $0 + local.get $0 + f64.const 1 + f64.sub + local.set $4 + f64.const 0.5 + local.get $4 + f64.mul + local.get $4 + f64.mul + local.set $5 + local.get $4 + f64.const 2 + local.get $4 + f64.add + f64.div + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $8 + local.get $8 + f64.const 0.3999999999940942 + local.get $8 + f64.const 0.22222198432149784 + local.get $8 + f64.const 0.15313837699209373 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $9 + local.get $7 + f64.const 0.6666666666666735 + local.get $8 + f64.const 0.2857142874366239 + local.get $8 + f64.const 0.1818357216161805 + local.get $8 + f64.const 0.14798198605116586 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $10 + local.get $10 + local.get $9 + f64.add + local.set $11 + local.get $3 + f64.convert_i32_s + local.set $12 + local.get $6 + local.get $5 + local.get $11 + f64.add + f64.mul + local.get $12 + f64.const 1.9082149292705877e-10 + f64.mul + f64.add + local.get $5 + f64.sub + local.get $4 + f64.add + local.get $12 + f64.const 0.6931471803691238 + f64.mul + f64.add + ) + (func $~lib/math/NativeMath.acosh (; 57 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + local.get $0 + i64.reinterpret_f64 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $1 + local.get $1 + i64.const 1024 + i64.lt_u + if + local.get $0 + f64.const 1 + f64.sub + local.get $0 + f64.const 1 + f64.sub + local.get $0 + f64.const 1 + f64.sub + f64.mul + f64.const 2 + local.get $0 + f64.const 1 + f64.sub + f64.mul + f64.add + f64.sqrt + f64.add + call $~lib/math/NativeMath.log1p + return + end + local.get $1 + i64.const 1049 + i64.lt_u + if + f64.const 2 + local.get $0 + f64.mul + f64.const 1 + local.get $0 + local.get $0 + local.get $0 + f64.mul + f64.const 1 + f64.sub + f64.sqrt + f64.add + f64.div + f64.sub + call $~lib/math/NativeMath.log + return + end + local.get $0 + call $~lib/math/NativeMath.log + f64.const 0.6931471805599453 + f64.add + ) + (func $std/math/test_acosh (; 58 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.acosh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/acosh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.log1p (; 59 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + (local $3 f32) + (local $4 i32) + (local $5 f32) + (local $6 i32) + (local $7 f32) + (local $8 f32) + (local $9 f32) + (local $10 f32) + (local $11 f32) + (local $12 f32) + (local $13 f32) + (local $14 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + f32.const 0 + local.set $2 + f32.const 0 + local.set $3 + i32.const 1 + local.set $4 + local.get $1 + i32.const 1054086096 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i32.const -1082130432 + i32.ge_u + if + local.get $0 + f32.const -1 + f32.eq + if + local.get $0 + f32.const 0 + f32.div + return + end + local.get $0 + local.get $0 + f32.sub + f32.const 0 + f32.div + return + end + local.get $1 + i32.const 1 + i32.shl + i32.const 1728053248 + i32.lt_u + if + local.get $0 + return + end + local.get $1 + i32.const -1097468391 + i32.le_u + if + i32.const 0 + local.set $4 + f32.const 0 + local.set $2 + local.get $0 + local.set $3 + end + else + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + return + end + end + local.get $4 + if + f32.const 1 + local.get $0 + f32.add + local.set $5 + local.get $5 + i32.reinterpret_f32 + local.set $6 + local.get $6 + i32.const 1065353216 + i32.const 1060439283 + i32.sub + i32.add + local.set $6 + local.get $6 + i32.const 23 + i32.shr_u + i32.const 127 + i32.sub + local.set $4 + local.get $4 + i32.const 25 + i32.lt_s + if + local.get $4 + i32.const 2 + i32.ge_s + if (result f32) + f32.const 1 + local.get $5 + local.get $0 + f32.sub + f32.sub + else + local.get $0 + local.get $5 + f32.const 1 + f32.sub + f32.sub + end + local.set $2 + local.get $2 + local.get $5 + f32.div + local.set $2 + else + f32.const 0 + local.set $2 + end + local.get $6 + i32.const 8388607 + i32.and + i32.const 1060439283 + i32.add + local.set $6 + local.get $6 + f32.reinterpret_i32 + f32.const 1 + f32.sub + local.set $3 + end + local.get $3 + f32.const 2 + local.get $3 + f32.add + f32.div + local.set $7 + local.get $7 + local.get $7 + f32.mul + local.set $8 + local.get $8 + local.get $8 + f32.mul + local.set $9 + local.get $9 + f32.const 0.40000972151756287 + local.get $9 + f32.const 0.24279078841209412 + f32.mul + f32.add + f32.mul + local.set $10 + local.get $8 + f32.const 0.6666666269302368 + local.get $9 + f32.const 0.2849878668785095 + f32.mul + f32.add + f32.mul + local.set $11 + local.get $11 + local.get $10 + f32.add + local.set $12 + f32.const 0.5 + local.get $3 + f32.mul + local.get $3 + f32.mul + local.set $13 + local.get $4 + f32.convert_i32_s + local.set $14 + local.get $7 + local.get $13 + local.get $12 + f32.add + f32.mul + local.get $14 + f32.const 9.05800061445916e-06 + f32.mul + local.get $2 + f32.add + f32.add + local.get $13 + f32.sub + local.get $3 + f32.add + local.get $14 + f32.const 0.6931381225585938 + f32.mul + f32.add + ) + (func $~lib/math/NativeMathf.log (; 60 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f32) + (local $4 f32) + (local $5 f32) + (local $6 f32) + (local $7 f32) + (local $8 f32) + (local $9 f32) + (local $10 f32) + (local $11 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + i32.const 0 + local.set $2 + local.get $1 + i32.const 8388608 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i32.const 1 + i32.shl + i32.const 0 + i32.eq + if + f32.const -1 + local.get $0 + local.get $0 + f32.mul + f32.div + return + end + local.get $1 + i32.const 31 + i32.shr_u + if + local.get $0 + local.get $0 + f32.sub + f32.const 0 + f32.div + return + end + local.get $2 + i32.const 25 + i32.sub + local.set $2 + local.get $0 + f32.const 33554432 + f32.mul + local.set $0 + local.get $0 + i32.reinterpret_f32 + local.set $1 + else + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + return + else + local.get $1 + i32.const 1065353216 + i32.eq + if + f32.const 0 + return + end + end + end + local.get $1 + i32.const 1065353216 + i32.const 1060439283 + i32.sub + i32.add + local.set $1 + local.get $2 + local.get $1 + i32.const 23 + i32.shr_s + i32.const 127 + i32.sub + i32.add + local.set $2 + local.get $1 + i32.const 8388607 + i32.and + i32.const 1060439283 + i32.add + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $0 + local.get $0 + f32.const 1 + f32.sub + local.set $3 + local.get $3 + f32.const 2 + local.get $3 + f32.add + f32.div + local.set $4 + local.get $4 + local.get $4 + f32.mul + local.set $5 + local.get $5 + local.get $5 + f32.mul + local.set $6 + local.get $6 + f32.const 0.40000972151756287 + local.get $6 + f32.const 0.24279078841209412 + f32.mul + f32.add + f32.mul + local.set $7 + local.get $5 + f32.const 0.6666666269302368 + local.get $6 + f32.const 0.2849878668785095 + f32.mul + f32.add + f32.mul + local.set $8 + local.get $8 + local.get $7 + f32.add + local.set $9 + f32.const 0.5 + local.get $3 + f32.mul + local.get $3 + f32.mul + local.set $10 + local.get $2 + f32.convert_i32_s + local.set $11 + local.get $4 + local.get $10 + local.get $9 + f32.add + f32.mul + local.get $11 + f32.const 9.05800061445916e-06 + f32.mul + f32.add + local.get $10 + f32.sub + local.get $3 + f32.add + local.get $11 + f32.const 0.6931381225585938 + f32.mul + f32.add + ) + (func $~lib/math/NativeMathf.acosh (; 61 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1073741824 + i32.lt_u + if + local.get $0 + f32.const 1 + f32.sub + local.set $3 + local.get $3 + local.get $3 + local.get $3 + f32.const 2 + f32.add + f32.mul + f32.sqrt + f32.add + call $~lib/math/NativeMathf.log1p + return + end + local.get $2 + i32.const 1166016512 + i32.lt_u + if + f32.const 2 + local.get $0 + f32.mul + f32.const 1 + local.get $0 + local.get $0 + local.get $0 + f32.mul + f32.const 1 + f32.sub + f32.sqrt + f32.add + f32.div + f32.sub + call $~lib/math/NativeMathf.log + return + end + local.get $0 + call $~lib/math/NativeMathf.log + f32.const 0.6931471824645996 + f32.add + ) + (func $std/math/test_acoshf (; 62 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.acosh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.asin (; 63 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + local.get $0 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1072693248 + i32.ge_u + if + local.get $0 + i64.reinterpret_f64 + i32.wrap_i64 + local.set $3 + local.get $2 + i32.const 1072693248 + i32.sub + local.get $3 + i32.or + i32.const 0 + i32.eq + if + local.get $0 + f64.const 1.5707963267948966 + f64.mul + f32.const 7.52316384526264e-37 + f64.promote_f32 + f64.add + return + end + f64.const 0 + local.get $0 + local.get $0 + f64.sub + f64.div + return + end + local.get $2 + i32.const 1071644672 + i32.lt_u + if + local.get $2 + i32.const 1045430272 + i32.lt_u + if (result i32) + local.get $2 + i32.const 1048576 + i32.ge_u + else + i32.const 0 + end + if + local.get $0 + return + end + local.get $0 + local.get $0 + local.get $0 + local.get $0 + f64.mul + call $~lib/math/R + f64.mul + f64.add + return + end + f64.const 0.5 + local.get $0 + f64.abs + f64.const 0.5 + f64.mul + f64.sub + local.set $4 + local.get $4 + f64.sqrt + local.set $5 + local.get $4 + call $~lib/math/R + local.set $6 + local.get $2 + i32.const 1072640819 + i32.ge_u + if + f64.const 1.5707963267948966 + f64.const 2 + local.get $5 + local.get $5 + local.get $6 + f64.mul + f64.add + f64.mul + f64.const 6.123233995736766e-17 + f64.sub + f64.sub + local.set $0 + else + local.get $5 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $7 + local.get $4 + local.get $7 + local.get $7 + f64.mul + f64.sub + local.get $5 + local.get $7 + f64.add + f64.div + local.set $8 + f64.const 0.5 + f64.const 1.5707963267948966 + f64.mul + f64.const 2 + local.get $5 + f64.mul + local.get $6 + f64.mul + f64.const 6.123233995736766e-17 + f64.const 2 + local.get $8 + f64.mul + f64.sub + f64.sub + f64.const 0.5 + f64.const 1.5707963267948966 + f64.mul + f64.const 2 + local.get $7 + f64.mul + f64.sub + f64.sub + f64.sub + local.set $0 + end + local.get $1 + i32.const 31 + i32.shr_u + if + local.get $0 + f64.neg + return + end + local.get $0 + ) + (func $std/math/test_asin (; 64 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.asin + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/asin + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.asin (; 65 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 f32) + (local $2 i32) + (local $3 f32) + (local $4 f64) + local.get $0 + local.set $1 + local.get $0 + i32.reinterpret_f32 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1065353216 + i32.ge_u + if + local.get $2 + i32.const 1065353216 + i32.eq + if + local.get $0 + f32.const 1.5707963705062866 + f32.mul + f32.const 7.52316384526264e-37 + f32.add + return + end + f32.const 0 + local.get $0 + local.get $0 + f32.sub + f32.div + return + end + local.get $2 + i32.const 1056964608 + i32.lt_u + if + local.get $2 + i32.const 964689920 + i32.lt_u + if (result i32) + local.get $2 + i32.const 8388608 + i32.ge_u + else + i32.const 0 + end + if + local.get $0 + return + end + local.get $0 + local.get $0 + local.get $0 + local.get $0 + f32.mul + call $~lib/math/Rf + f32.mul + f32.add + return + end + f32.const 0.5 + local.get $0 + f32.abs + f32.const 0.5 + f32.mul + f32.sub + local.set $3 + local.get $3 + f64.promote_f32 + f64.sqrt + local.set $4 + f32.const 1.5707963705062866 + f64.promote_f32 + f32.const 2 + f64.promote_f32 + local.get $4 + local.get $4 + local.get $3 + call $~lib/math/Rf + f64.promote_f32 + f64.mul + f64.add + f64.mul + f64.sub + f32.demote_f64 + local.set $0 + local.get $0 + local.get $1 + f32.copysign + ) + (func $std/math/test_asinf (; 66 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.asin + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.asinh (; 67 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i64) + (local $3 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $2 + local.get $1 + i64.const 9223372036854775807 + i64.and + f64.reinterpret_i64 + local.set $3 + local.get $2 + i64.const 1049 + i64.ge_u + if + local.get $3 + call $~lib/math/NativeMath.log + f64.const 0.6931471805599453 + f64.add + local.set $3 + else + local.get $2 + i64.const 1024 + i64.ge_u + if + f64.const 2 + local.get $3 + f64.mul + f64.const 1 + local.get $3 + local.get $3 + f64.mul + f64.const 1 + f64.add + f64.sqrt + local.get $3 + f64.add + f64.div + f64.add + call $~lib/math/NativeMath.log + local.set $3 + else + local.get $2 + i64.const 997 + i64.ge_u + if + local.get $3 + local.get $3 + local.get $3 + f64.mul + local.get $3 + local.get $3 + f64.mul + f64.const 1 + f64.add + f64.sqrt + f64.const 1 + f64.add + f64.div + f64.add + call $~lib/math/NativeMath.log1p + local.set $3 + end + end + end + local.get $3 + local.get $0 + f64.copysign + ) + (func $std/math/test_asinh (; 68 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.asinh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/asinh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.asinh (; 69 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + local.get $0 + i32.reinterpret_f32 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $2 + local.get $1 + i32.const 1166016512 + i32.ge_u + if + local.get $2 + call $~lib/math/NativeMathf.log + f32.const 0.6931471824645996 + f32.add + local.set $2 + else + local.get $1 + i32.const 1073741824 + i32.ge_u + if + f32.const 2 + local.get $2 + f32.mul + f32.const 1 + local.get $2 + local.get $2 + f32.mul + f32.const 1 + f32.add + f32.sqrt + local.get $2 + f32.add + f32.div + f32.add + call $~lib/math/NativeMathf.log + local.set $2 + else + local.get $1 + i32.const 964689920 + i32.ge_u + if + local.get $2 + local.get $2 + local.get $2 + f32.mul + local.get $2 + local.get $2 + f32.mul + f32.const 1 + f32.add + f32.sqrt + f32.const 1 + f32.add + f32.div + f32.add + call $~lib/math/NativeMathf.log1p + local.set $2 + end + end + end + local.get $2 + local.get $0 + f32.copysign + ) + (func $std/math/test_asinhf (; 70 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.asinh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.atan (; 71 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i32) + (local $2 f64) + (local $3 f64) + (local $4 i32) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 i32) + local.get $0 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $1 + local.get $0 + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1141899264 + i32.ge_u + if + local.get $0 + call $~lib/number/isNaN + if + local.get $0 + return + end + f64.const 1.5707963267948966 + f32.const 7.52316384526264e-37 + f64.promote_f32 + f64.add + local.set $3 + local.get $3 + local.get $2 + f64.copysign + return + end + local.get $1 + i32.const 1071382528 + i32.lt_u + if + local.get $1 + i32.const 1044381696 + i32.lt_u + if + local.get $0 + return + end + i32.const -1 + local.set $4 + else + local.get $0 + f64.abs + local.set $0 + local.get $1 + i32.const 1072889856 + i32.lt_u + if + local.get $1 + i32.const 1072037888 + i32.lt_u + if + i32.const 0 + local.set $4 + f64.const 2 + local.get $0 + f64.mul + f64.const 1 + f64.sub + f64.const 2 + local.get $0 + f64.add + f64.div + local.set $0 + else + i32.const 1 + local.set $4 + local.get $0 + f64.const 1 + f64.sub + local.get $0 + f64.const 1 + f64.add + f64.div + local.set $0 + end + else + local.get $1 + i32.const 1073971200 + i32.lt_u + if + i32.const 2 + local.set $4 + local.get $0 + f64.const 1.5 + f64.sub + f64.const 1 + f64.const 1.5 + local.get $0 + f64.mul + f64.add + f64.div + local.set $0 + else + i32.const 3 + local.set $4 + f64.const -1 + local.get $0 + f64.div + local.set $0 + end + end + end + local.get $0 + local.get $0 + f64.mul + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $5 + local.get $3 + f64.const 0.3333333333333293 + local.get $5 + f64.const 0.14285714272503466 + local.get $5 + f64.const 0.09090887133436507 + local.get $5 + f64.const 0.06661073137387531 + local.get $5 + f64.const 0.049768779946159324 + local.get $5 + f64.const 0.016285820115365782 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $6 + local.get $5 + f64.const -0.19999999999876483 + local.get $5 + f64.const -0.11111110405462356 + local.get $5 + f64.const -0.0769187620504483 + local.get $5 + f64.const -0.058335701337905735 + local.get $5 + f64.const -0.036531572744216916 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $7 + local.get $0 + local.get $6 + local.get $7 + f64.add + f64.mul + local.set $8 + local.get $4 + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $8 + f64.sub + return + end + block $break|0 + block $case4|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $4 + local.set $9 + local.get $9 + i32.const 0 + i32.eq + br_if $case0|0 + local.get $9 + i32.const 1 + i32.eq + br_if $case1|0 + local.get $9 + i32.const 2 + i32.eq + br_if $case2|0 + local.get $9 + i32.const 3 + i32.eq + br_if $case3|0 + br $case4|0 + end + f64.const 0.4636476090008061 + local.get $8 + f64.const 2.2698777452961687e-17 + f64.sub + local.get $0 + f64.sub + f64.sub + local.set $3 + br $break|0 + end + f64.const 0.7853981633974483 + local.get $8 + f64.const 3.061616997868383e-17 + f64.sub + local.get $0 + f64.sub + f64.sub + local.set $3 + br $break|0 + end + f64.const 0.982793723247329 + local.get $8 + f64.const 1.3903311031230998e-17 + f64.sub + local.get $0 + f64.sub + f64.sub + local.set $3 + br $break|0 + end + f64.const 1.5707963267948966 + local.get $8 + f64.const 6.123233995736766e-17 + f64.sub + local.get $0 + f64.sub + f64.sub + local.set $3 + br $break|0 + end + unreachable + end + local.get $3 + local.get $2 + f64.copysign + ) + (func $std/math/test_atan (; 72 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.atan + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/atan + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.atan (; 73 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + (local $3 f32) + (local $4 i32) + (local $5 f32) + (local $6 f32) + (local $7 f32) + (local $8 f32) + (local $9 i32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $0 + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1283457024 + i32.ge_u + if + local.get $0 + call $~lib/number/isNaN + if + local.get $0 + return + end + f32.const 1.570796251296997 + f32.const 7.52316384526264e-37 + f32.add + local.set $3 + local.get $3 + local.get $2 + f32.copysign + return + end + local.get $1 + i32.const 1054867456 + i32.lt_u + if + local.get $1 + i32.const 964689920 + i32.lt_u + if + local.get $0 + return + end + i32.const -1 + local.set $4 + else + local.get $0 + f32.abs + local.set $0 + local.get $1 + i32.const 1066926080 + i32.lt_u + if + local.get $1 + i32.const 1060110336 + i32.lt_u + if + i32.const 0 + local.set $4 + f32.const 2 + local.get $0 + f32.mul + f32.const 1 + f32.sub + f32.const 2 + local.get $0 + f32.add + f32.div + local.set $0 + else + i32.const 1 + local.set $4 + local.get $0 + f32.const 1 + f32.sub + local.get $0 + f32.const 1 + f32.add + f32.div + local.set $0 + end + else + local.get $1 + i32.const 1075576832 + i32.lt_u + if + i32.const 2 + local.set $4 + local.get $0 + f32.const 1.5 + f32.sub + f32.const 1 + f32.const 1.5 + local.get $0 + f32.mul + f32.add + f32.div + local.set $0 + else + i32.const 3 + local.set $4 + f32.const -1 + local.get $0 + f32.div + local.set $0 + end + end + end + local.get $0 + local.get $0 + f32.mul + local.set $3 + local.get $3 + local.get $3 + f32.mul + local.set $5 + local.get $3 + f32.const 0.333333283662796 + local.get $5 + f32.const 0.14253635704517365 + local.get $5 + f32.const 0.06168760731816292 + f32.mul + f32.add + f32.mul + f32.add + f32.mul + local.set $6 + local.get $5 + f32.const -0.19999158382415771 + local.get $5 + f32.const -0.106480173766613 + f32.mul + f32.add + f32.mul + local.set $7 + local.get $0 + local.get $6 + local.get $7 + f32.add + f32.mul + local.set $8 + local.get $4 + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $8 + f32.sub + return + end + block $break|0 + block $case4|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $4 + local.set $9 + local.get $9 + i32.const 0 + i32.eq + br_if $case0|0 + local.get $9 + i32.const 1 + i32.eq + br_if $case1|0 + local.get $9 + i32.const 2 + i32.eq + br_if $case2|0 + local.get $9 + i32.const 3 + i32.eq + br_if $case3|0 + br $case4|0 + end + f32.const 0.46364760398864746 + local.get $8 + f32.const 5.01215824399992e-09 + f32.sub + local.get $0 + f32.sub + f32.sub + local.set $3 + br $break|0 + end + f32.const 0.7853981256484985 + local.get $8 + f32.const 3.774894707930798e-08 + f32.sub + local.get $0 + f32.sub + f32.sub + local.set $3 + br $break|0 + end + f32.const 0.9827936887741089 + local.get $8 + f32.const 3.447321716976148e-08 + f32.sub + local.get $0 + f32.sub + f32.sub + local.set $3 + br $break|0 + end + f32.const 1.570796251296997 + local.get $8 + f32.const 7.549789415861596e-08 + f32.sub + local.get $0 + f32.sub + f32.sub + local.set $3 + br $break|0 + end + unreachable + end + local.get $3 + local.get $2 + f32.copysign + ) + (func $std/math/test_atanf (; 74 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.atan + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.atanh (; 75 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i64) + (local $3 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $2 + local.get $0 + f64.abs + local.set $3 + local.get $2 + i64.const 1022 + i64.lt_u + if + local.get $2 + i64.const 991 + i64.ge_u + if + f64.const 0.5 + f64.const 2 + local.get $3 + f64.mul + f64.const 2 + local.get $3 + f64.mul + local.get $3 + f64.mul + f64.const 1 + local.get $3 + f64.sub + f64.div + f64.add + call $~lib/math/NativeMath.log1p + f64.mul + local.set $3 + end + else + f64.const 0.5 + f64.const 2 + local.get $3 + f64.const 1 + local.get $3 + f64.sub + f64.div + f64.mul + call $~lib/math/NativeMath.log1p + f64.mul + local.set $3 + end + local.get $3 + local.get $0 + f64.copysign + ) + (func $std/math/test_atanh (; 76 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.atanh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/atanh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.atanh (; 77 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $0 + f32.abs + local.set $2 + local.get $1 + i32.const 1056964608 + i32.lt_u + if + local.get $1 + i32.const 796917760 + i32.ge_u + if + f32.const 0.5 + f32.const 2 + local.get $2 + f32.mul + f32.const 1 + local.get $2 + f32.const 1 + local.get $2 + f32.sub + f32.div + f32.add + f32.mul + call $~lib/math/NativeMathf.log1p + f32.mul + local.set $2 + end + else + f32.const 0.5 + f32.const 2 + local.get $2 + f32.const 1 + local.get $2 + f32.sub + f32.div + f32.mul + call $~lib/math/NativeMathf.log1p + f32.mul + local.set $2 + end + local.get $2 + local.get $0 + f32.copysign + ) + (func $std/math/test_atanhf (; 78 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.atanh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.atan2 (; 79 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (local $2 i64) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 f64) + (local $10 f64) + local.get $1 + call $~lib/number/isNaN + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/number/isNaN + end + if + local.get $1 + local.get $0 + f64.add + return + end + local.get $1 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $3 + local.get $2 + i32.wrap_i64 + local.set $4 + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $5 + local.get $2 + i32.wrap_i64 + local.set $6 + local.get $3 + i32.const 1072693248 + i32.sub + local.get $4 + i32.or + i32.const 0 + i32.eq + if + local.get $0 + call $~lib/math/NativeMath.atan + return + end + local.get $5 + i32.const 31 + i32.shr_u + i32.const 1 + i32.and + local.get $3 + i32.const 30 + i32.shr_u + i32.const 2 + i32.and + i32.or + local.set $7 + local.get $3 + i32.const 2147483647 + i32.and + local.set $3 + local.get $5 + i32.const 2147483647 + i32.and + local.set $5 + local.get $5 + local.get $6 + i32.or + i32.const 0 + i32.eq + if + block $break|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $7 + local.set $8 + local.get $8 + i32.const 0 + i32.eq + br_if $case0|0 + local.get $8 + i32.const 1 + i32.eq + br_if $case1|0 + local.get $8 + i32.const 2 + i32.eq + br_if $case2|0 + local.get $8 + i32.const 3 + i32.eq + br_if $case3|0 + br $break|0 + end + end + local.get $0 + return + end + global.get $~lib/math/NativeMath.PI + return + end + global.get $~lib/math/NativeMath.PI + f64.neg + return + end + end + local.get $3 + local.get $4 + i32.or + i32.const 0 + i32.eq + if + local.get $7 + i32.const 1 + i32.and + if (result f64) + global.get $~lib/math/NativeMath.PI + f64.neg + f64.const 2 + f64.div + else + global.get $~lib/math/NativeMath.PI + f64.const 2 + f64.div + end + return + end + local.get $3 + i32.const 2146435072 + i32.eq + if + local.get $5 + i32.const 2146435072 + i32.eq + if + local.get $7 + i32.const 2 + i32.and + if (result f64) + i32.const 3 + f64.convert_i32_s + global.get $~lib/math/NativeMath.PI + f64.mul + f64.const 4 + f64.div + else + global.get $~lib/math/NativeMath.PI + f64.const 4 + f64.div + end + local.set $9 + local.get $7 + i32.const 1 + i32.and + if (result f64) + local.get $9 + f64.neg + else + local.get $9 + end + return + else + local.get $7 + i32.const 2 + i32.and + if (result f64) + global.get $~lib/math/NativeMath.PI + else + i32.const 0 + f64.convert_i32_s + end + local.set $9 + local.get $7 + i32.const 1 + i32.and + if (result f64) + local.get $9 + f64.neg + else + local.get $9 + end + return + end + unreachable + end + local.get $3 + i32.const 67108864 + i32.add + local.get $5 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $5 + i32.const 2146435072 + i32.eq + end + if + local.get $7 + i32.const 1 + i32.and + if (result f64) + global.get $~lib/math/NativeMath.PI + f64.neg + f64.const 2 + f64.div + else + global.get $~lib/math/NativeMath.PI + f64.const 2 + f64.div + end + return + end + local.get $7 + i32.const 2 + i32.and + if (result i32) + local.get $5 + i32.const 67108864 + i32.add + local.get $3 + i32.lt_u + else + i32.const 0 + end + if + f64.const 0 + local.set $10 + else + local.get $0 + local.get $1 + f64.div + f64.abs + call $~lib/math/NativeMath.atan + local.set $10 + end + block $break|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $7 + local.set $8 + local.get $8 + i32.const 0 + i32.eq + br_if $case0|1 + local.get $8 + i32.const 1 + i32.eq + br_if $case1|1 + local.get $8 + i32.const 2 + i32.eq + br_if $case2|1 + local.get $8 + i32.const 3 + i32.eq + br_if $case3|1 + br $break|1 + end + local.get $10 + return + end + local.get $10 + f64.neg + return + end + global.get $~lib/math/NativeMath.PI + local.get $10 + f64.const 1.2246467991473532e-16 + f64.sub + f64.sub + return + end + local.get $10 + f64.const 1.2246467991473532e-16 + f64.sub + global.get $~lib/math/NativeMath.PI + f64.sub + return + end + unreachable + ) + (func $std/math/test_atan2 (; 80 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) + local.get $0 + local.get $1 + call $~lib/math/NativeMath.atan2 + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + local.get $1 + call $~lib/bindings/Math/atan2 + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.atan2 (; 81 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 f32) + (local $7 f32) + local.get $1 + call $~lib/number/isNaN + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/number/isNaN + end + if + local.get $1 + local.get $0 + f32.add + return + end + local.get $1 + i32.reinterpret_f32 + local.set $2 + local.get $0 + i32.reinterpret_f32 + local.set $3 + local.get $2 + i32.const 1065353216 + i32.eq + if + local.get $0 + call $~lib/math/NativeMathf.atan + return + end + local.get $3 + i32.const 31 + i32.shr_u + i32.const 1 + i32.and + local.get $2 + i32.const 30 + i32.shr_u + i32.const 2 + i32.and + i32.or + local.set $4 + local.get $2 + i32.const 2147483647 + i32.and + local.set $2 + local.get $3 + i32.const 2147483647 + i32.and + local.set $3 + local.get $3 + i32.const 0 + i32.eq + if + block $break|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $4 + local.set $5 + local.get $5 + i32.const 0 + i32.eq + br_if $case0|0 + local.get $5 + i32.const 1 + i32.eq + br_if $case1|0 + local.get $5 + i32.const 2 + i32.eq + br_if $case2|0 + local.get $5 + i32.const 3 + i32.eq + br_if $case3|0 + br $break|0 + end + end + local.get $0 + return + end + f32.const 3.1415927410125732 + return + end + f32.const 3.1415927410125732 + f32.neg + return + end + end + local.get $2 + i32.const 0 + i32.eq + if + local.get $4 + i32.const 1 + i32.and + if (result f32) + f32.const 3.1415927410125732 + f32.neg + f32.const 2 + f32.div + else + f32.const 3.1415927410125732 + f32.const 2 + f32.div + end + return + end + local.get $2 + i32.const 2139095040 + i32.eq + if + local.get $3 + i32.const 2139095040 + i32.eq + if + local.get $4 + i32.const 2 + i32.and + if (result f32) + f32.const 3 + f32.const 3.1415927410125732 + f32.mul + f32.const 4 + f32.div + else + f32.const 3.1415927410125732 + f32.const 4 + f32.div + end + local.set $6 + local.get $4 + i32.const 1 + i32.and + if (result f32) + local.get $6 + f32.neg + else + local.get $6 + end + return + else + local.get $4 + i32.const 2 + i32.and + if (result f32) + f32.const 3.1415927410125732 + else + f32.const 0 + end + local.set $6 + local.get $4 + i32.const 1 + i32.and + if (result f32) + local.get $6 + f32.neg + else + local.get $6 + end + return + end + unreachable + end + local.get $2 + i32.const 218103808 + i32.add + local.get $3 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $3 + i32.const 2139095040 + i32.eq + end + if + local.get $4 + i32.const 1 + i32.and + if (result f32) + f32.const 3.1415927410125732 + f32.neg + f32.const 2 + f32.div + else + f32.const 3.1415927410125732 + f32.const 2 + f32.div + end + return + end + local.get $4 + i32.const 2 + i32.and + if (result i32) + local.get $3 + i32.const 218103808 + i32.add + local.get $2 + i32.lt_u + else + i32.const 0 + end + if + f32.const 0 + local.set $7 + else + local.get $0 + local.get $1 + f32.div + f32.abs + call $~lib/math/NativeMathf.atan + local.set $7 + end + block $break|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $4 + local.set $5 + local.get $5 + i32.const 0 + i32.eq + br_if $case0|1 + local.get $5 + i32.const 1 + i32.eq + br_if $case1|1 + local.get $5 + i32.const 2 + i32.eq + br_if $case2|1 + local.get $5 + i32.const 3 + i32.eq + br_if $case3|1 + br $break|1 + end + local.get $7 + return + end + local.get $7 + f32.neg + return + end + f32.const 3.1415927410125732 + local.get $7 + f32.const -8.742277657347586e-08 + f32.sub + f32.sub + return + end + local.get $7 + f32.const -8.742277657347586e-08 + f32.sub + f32.const 3.1415927410125732 + f32.sub + return + end + unreachable + ) + (func $std/math/test_atan2f (; 82 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) + local.get $0 + local.get $1 + call $~lib/math/NativeMathf.atan2 + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + ) + (func $~lib/math/NativeMath.cbrt (; 83 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 f64) + (local $4 f64) + (local $5 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + local.get $0 + f64.add + return + end + local.get $2 + i32.const 1048576 + i32.lt_u + if + local.get $0 + f64.const 18014398509481984 + f64.mul + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 0 + i32.eq + if + local.get $0 + return + end + local.get $2 + i32.const 3 + i32.div_u + i32.const 696219795 + i32.add + local.set $2 + else + local.get $2 + i32.const 3 + i32.div_u + i32.const 715094163 + i32.add + local.set $2 + end + local.get $1 + i64.const 1 + i64.const 63 + i64.shl + i64.and + local.set $1 + local.get $1 + local.get $2 + i64.extend_i32_u + i64.const 32 + i64.shl + i64.or + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.get $3 + local.get $0 + f64.div + f64.mul + local.set $4 + local.get $3 + f64.const 1.87595182427177 + local.get $4 + f64.const -1.8849797954337717 + local.get $4 + f64.const 1.6214297201053545 + f64.mul + f64.add + f64.mul + f64.add + local.get $4 + local.get $4 + f64.mul + local.get $4 + f64.mul + f64.const -0.758397934778766 + local.get $4 + f64.const 0.14599619288661245 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $3 + local.get $3 + i64.reinterpret_f64 + i64.const 2147483648 + i64.add + i64.const -1073741824 + i64.and + f64.reinterpret_i64 + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $5 + local.get $0 + local.get $5 + f64.div + local.set $4 + local.get $4 + local.get $3 + f64.sub + f64.const 2 + local.get $3 + f64.mul + local.get $4 + f64.add + f64.div + local.set $4 + local.get $3 + local.get $3 + local.get $4 + f64.mul + f64.add + local.set $3 + local.get $3 + ) + (func $std/math/test_cbrt (; 84 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.cbrt + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/cbrt + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.cbrt (; 85 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f64) + (local $4 f64) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + local.get $0 + f32.add + return + end + local.get $2 + i32.const 8388608 + i32.lt_u + if + local.get $2 + i32.const 0 + i32.eq + if + local.get $0 + return + end + local.get $0 + f32.const 16777216 + f32.mul + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 3 + i32.div_u + i32.const 642849266 + i32.add + local.set $2 + else + local.get $2 + i32.const 3 + i32.div_u + i32.const 709958130 + i32.add + local.set $2 + end + local.get $1 + i32.const -2147483648 + i32.and + local.set $1 + local.get $1 + local.get $2 + i32.or + local.set $1 + local.get $1 + f32.reinterpret_i32 + f64.promote_f32 + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.get $3 + f64.mul + local.set $4 + local.get $3 + local.get $0 + f64.promote_f32 + local.get $0 + f64.promote_f32 + f64.add + local.get $4 + f64.add + f64.mul + local.get $0 + f64.promote_f32 + local.get $4 + f64.add + local.get $4 + f64.add + f64.div + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.get $3 + f64.mul + local.set $4 + local.get $3 + local.get $0 + f64.promote_f32 + local.get $0 + f64.promote_f32 + f64.add + local.get $4 + f64.add + f64.mul + local.get $0 + f64.promote_f32 + local.get $4 + f64.add + local.get $4 + f64.add + f64.div + local.set $3 + local.get $3 + f32.demote_f64 + ) + (func $std/math/test_cbrtf (; 86 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.cbrt + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $std/math/test_ceil (; 87 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (local $4 f64) + local.get $0 + local.set $4 + local.get $4 + f64.ceil + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/ceil + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $std/math/test_ceilf (; 88 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (local $4 f32) + local.get $0 + local.set $4 + local.get $4 + f32.ceil + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/pio2_large_quot (; 89 ;) (type $FUNCSIG$idj) (param $0 f64) (param $1 i64) (result i32) + (local $2 i32) + (local $3 i64) + (local $4 i64) + (local $5 i64) + (local $6 i32) + (local $7 i64) + (local $8 i64) + (local $9 i64) + (local $10 i64) + (local $11 i64) + (local $12 i64) + (local $13 i64) + (local $14 i64) + (local $15 i64) + (local $16 i64) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i64) + (local $25 i64) + (local $26 i64) + (local $27 i64) + (local $28 i64) + (local $29 i64) + (local $30 i64) + (local $31 i64) + (local $32 i64) + (local $33 i64) + (local $34 i64) + (local $35 i64) + (local $36 i64) + (local $37 f64) + i32.const 272 + i32.load offset=4 + local.set $2 + local.get $1 + i64.const 9223372036854775807 + i64.and + local.set $3 + local.get $3 + i64.const 52 + i64.shr_s + i64.const 1045 + i64.sub + local.set $4 + local.get $4 + i64.const 63 + i64.and + local.set $5 + local.get $2 + local.get $4 + i64.const 6 + i64.shr_s + i32.wrap_i64 + i32.const 3 + i32.shl + i32.add + local.set $6 + local.get $6 + i64.load + local.set $10 + local.get $6 + i64.load offset=8 + local.set $11 + local.get $6 + i64.load offset=16 + local.set $12 + local.get $5 + i64.const 0 + i64.ne + if + i32.const 64 + i64.extend_i32_s + local.get $5 + i64.sub + local.set $13 + local.get $6 + i64.load offset=24 + local.set $14 + local.get $11 + local.get $13 + i64.shr_u + local.get $10 + local.get $5 + i64.shl + i64.or + local.set $7 + local.get $12 + local.get $13 + i64.shr_u + local.get $11 + local.get $5 + i64.shl + i64.or + local.set $8 + local.get $14 + local.get $13 + i64.shr_u + local.get $12 + local.get $5 + i64.shl + i64.or + local.set $9 + else + local.get $10 + local.set $7 + local.get $11 + local.set $8 + local.get $12 + local.set $9 + end + local.get $1 + i64.const 4503599627370495 + i64.and + i64.const 4503599627370496 + i64.or + local.set $15 + local.get $8 + local.set $14 + local.get $15 + local.set $13 + local.get $14 + i64.const 4294967295 + i64.and + local.set $16 + local.get $13 + i64.const 4294967295 + i64.and + local.set $17 + local.get $14 + i64.const 32 + i64.shr_u + local.set $14 + local.get $13 + i64.const 32 + i64.shr_u + local.set $13 + local.get $16 + local.get $17 + i64.mul + local.set $20 + local.get $20 + i64.const 4294967295 + i64.and + local.set $18 + local.get $14 + local.get $17 + i64.mul + local.get $20 + i64.const 32 + i64.shr_u + i64.add + local.set $20 + local.get $20 + i64.const 32 + i64.shr_u + local.set $19 + local.get $16 + local.get $13 + i64.mul + local.get $20 + i64.const 4294967295 + i64.and + i64.add + local.set $20 + local.get $14 + local.get $13 + i64.mul + local.get $19 + i64.add + local.get $20 + i64.const 32 + i64.shr_u + i64.add + global.set $~lib/math/res128_hi + local.get $20 + i64.const 32 + i64.shl + local.get $18 + i64.add + local.set $21 + global.get $~lib/math/res128_hi + local.set $22 + local.get $7 + local.get $15 + i64.mul + local.set $23 + local.get $9 + i64.const 32 + i64.shr_u + local.get $15 + i64.const 32 + i64.shr_s + i64.mul + local.set $24 + local.get $21 + local.get $24 + i64.add + local.set $25 + local.get $23 + local.get $22 + i64.add + local.get $25 + local.get $24 + i64.lt_u + i64.extend_i32_u + i64.add + local.set $26 + local.get $25 + i64.const 2 + i64.shl + local.set $27 + local.get $26 + i64.const 2 + i64.shl + local.get $25 + i64.const 62 + i64.shr_u + i64.or + local.set $28 + local.get $28 + i64.const 63 + i64.shr_s + local.set $29 + local.get $29 + i64.const 1 + i64.shr_s + local.set $30 + local.get $26 + i64.const 62 + i64.shr_s + local.get $29 + i64.sub + local.set $31 + i64.const 4372995238176751616 + local.get $27 + local.get $29 + i64.xor + local.set $14 + local.get $28 + local.get $30 + i64.xor + local.set $13 + local.get $13 + i64.clz + local.set $20 + local.get $13 + local.get $20 + i64.shl + local.get $14 + i64.const 64 + local.get $20 + i64.sub + i64.shr_u + i64.or + local.set $13 + local.get $14 + local.get $20 + i64.shl + local.set $14 + i64.const -3958705157555305932 + local.set $17 + local.get $13 + local.set $16 + local.get $17 + i64.const 4294967295 + i64.and + local.set $19 + local.get $16 + i64.const 4294967295 + i64.and + local.set $18 + local.get $17 + i64.const 32 + i64.shr_u + local.set $17 + local.get $16 + i64.const 32 + i64.shr_u + local.set $16 + local.get $19 + local.get $18 + i64.mul + local.set $34 + local.get $34 + i64.const 4294967295 + i64.and + local.set $32 + local.get $17 + local.get $18 + i64.mul + local.get $34 + i64.const 32 + i64.shr_u + i64.add + local.set $34 + local.get $34 + i64.const 32 + i64.shr_u + local.set $33 + local.get $19 + local.get $16 + i64.mul + local.get $34 + i64.const 4294967295 + i64.and + i64.add + local.set $34 + local.get $17 + local.get $16 + i64.mul + local.get $33 + i64.add + local.get $34 + i64.const 32 + i64.shr_u + i64.add + global.set $~lib/math/res128_hi + local.get $34 + i64.const 32 + i64.shl + local.get $32 + i64.add + local.set $34 + global.get $~lib/math/res128_hi + local.set $33 + local.get $33 + i64.const 11 + i64.shr_u + local.set $32 + local.get $34 + i64.const 11 + i64.shr_u + local.get $33 + i64.const 53 + i64.shl + i64.or + local.set $18 + f64.const 2.6469779601696886e-23 + i64.const -4267615245585081135 + f64.convert_i64_u + f64.mul + local.get $13 + f64.convert_i64_u + f64.mul + f64.const 2.6469779601696886e-23 + i64.const -3958705157555305932 + f64.convert_i64_u + f64.mul + local.get $14 + f64.convert_i64_u + f64.mul + f64.add + i64.trunc_f64_u + local.set $19 + local.get $32 + local.get $34 + local.get $19 + i64.lt_u + i64.extend_i32_u + i64.add + f64.convert_i64_u + global.set $~lib/math/rempio2_y0 + f64.const 5.421010862427522e-20 + local.get $18 + local.get $19 + i64.add + f64.convert_i64_u + f64.mul + global.set $~lib/math/rempio2_y1 + local.get $20 + i64.const 52 + i64.shl + i64.sub + local.set $35 + local.get $1 + local.get $28 + i64.xor + i64.const -9223372036854775808 + i64.and + local.set $36 + local.get $35 + local.get $36 + i64.or + f64.reinterpret_i64 + local.set $37 + global.get $~lib/math/rempio2_y0 + local.get $37 + f64.mul + global.set $~lib/math/rempio2_y0 + global.get $~lib/math/rempio2_y1 + local.get $37 + f64.mul + global.set $~lib/math/rempio2_y1 + local.get $31 + i32.wrap_i64 + ) + (func $~lib/math/NativeMath.cos (; 90 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 i32) + (local $11 i64) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 f64) + (local $17 i32) + (local $18 f64) + (local $19 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + local.get $2 + i32.const 31 + i32.shr_u + local.set $3 + local.get $2 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1072243195 + i32.le_u + if + local.get $2 + i32.const 1044816030 + i32.lt_u + if + f64.const 1 + return + end + local.get $0 + local.set $5 + f64.const 0 + local.set $4 + local.get $5 + local.get $5 + f64.mul + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $6 + f64.const 0.0416666666666666 + local.get $6 + f64.const -0.001388888888887411 + local.get $6 + f64.const 2.480158728947673e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.get $7 + local.get $7 + f64.mul + f64.const -2.7557314351390663e-07 + local.get $6 + f64.const 2.087572321298175e-09 + local.get $6 + f64.const -1.1359647557788195e-11 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $8 + f64.const 0.5 + local.get $6 + f64.mul + local.set $9 + f64.const 1 + local.get $9 + f64.sub + local.set $7 + local.get $7 + f64.const 1 + local.get $7 + f64.sub + local.get $9 + f64.sub + local.get $6 + local.get $8 + f64.mul + local.get $5 + local.get $4 + f64.mul + f64.sub + f64.add + f64.add + return + end + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + local.get $0 + f64.sub + return + end + block $~lib/math/rempio2|inlined.0 (result i32) + local.get $0 + local.set $4 + local.get $1 + local.set $11 + local.get $3 + local.set $10 + local.get $11 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 2147483647 + i32.and + local.set $12 + local.get $12 + i32.const 1073928572 + i32.lt_u + if + i32.const 1 + local.set $13 + local.get $10 + i32.eqz + if + local.get $4 + f64.const 1.5707963267341256 + f64.sub + local.set $9 + local.get $12 + i32.const 1073291771 + i32.ne + if + local.get $9 + f64.const 6.077100506506192e-11 + f64.sub + local.set $8 + local.get $9 + local.get $8 + f64.sub + f64.const 6.077100506506192e-11 + f64.sub + local.set $7 + else + local.get $9 + f64.const 6.077100506303966e-11 + f64.sub + local.set $9 + local.get $9 + f64.const 2.0222662487959506e-21 + f64.sub + local.set $8 + local.get $9 + local.get $8 + f64.sub + f64.const 2.0222662487959506e-21 + f64.sub + local.set $7 + end + else + local.get $4 + f64.const 1.5707963267341256 + f64.add + local.set $9 + local.get $12 + i32.const 1073291771 + i32.ne + if + local.get $9 + f64.const 6.077100506506192e-11 + f64.add + local.set $8 + local.get $9 + local.get $8 + f64.sub + f64.const 6.077100506506192e-11 + f64.add + local.set $7 + else + local.get $9 + f64.const 6.077100506303966e-11 + f64.add + local.set $9 + local.get $9 + f64.const 2.0222662487959506e-21 + f64.add + local.set $8 + local.get $9 + local.get $8 + f64.sub + f64.const 2.0222662487959506e-21 + f64.add + local.set $7 + end + i32.const -1 + local.set $13 + end + local.get $8 + global.set $~lib/math/rempio2_y0 + local.get $7 + global.set $~lib/math/rempio2_y1 + local.get $13 + br $~lib/math/rempio2|inlined.0 + end + local.get $12 + i32.const 1094263291 + i32.lt_u + if + local.get $4 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $7 + local.get $4 + local.get $7 + f64.const 1.5707963267341256 + f64.mul + f64.sub + local.set $8 + local.get $7 + f64.const 6.077100506506192e-11 + f64.mul + local.set $9 + local.get $12 + i32.const 20 + i32.shr_u + local.set $13 + local.get $8 + local.get $9 + f64.sub + local.set $6 + local.get $6 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $14 + local.get $13 + local.get $14 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $15 + local.get $15 + i32.const 16 + i32.gt_u + if + local.get $8 + local.set $5 + local.get $7 + f64.const 6.077100506303966e-11 + f64.mul + local.set $9 + local.get $5 + local.get $9 + f64.sub + local.set $8 + local.get $7 + f64.const 2.0222662487959506e-21 + f64.mul + local.get $5 + local.get $8 + f64.sub + local.get $9 + f64.sub + f64.sub + local.set $9 + local.get $8 + local.get $9 + f64.sub + local.set $6 + local.get $6 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $14 + local.get $13 + local.get $14 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $15 + local.get $15 + i32.const 49 + i32.gt_u + if + local.get $8 + local.set $16 + local.get $7 + f64.const 2.0222662487111665e-21 + f64.mul + local.set $9 + local.get $16 + local.get $9 + f64.sub + local.set $8 + local.get $7 + f64.const 8.4784276603689e-32 + f64.mul + local.get $16 + local.get $8 + f64.sub + local.get $9 + f64.sub + f64.sub + local.set $9 + local.get $8 + local.get $9 + f64.sub + local.set $6 + end + end + local.get $8 + local.get $6 + f64.sub + local.get $9 + f64.sub + local.set $5 + local.get $6 + global.set $~lib/math/rempio2_y0 + local.get $5 + global.set $~lib/math/rempio2_y1 + local.get $7 + i32.trunc_f64_s + br $~lib/math/rempio2|inlined.0 + end + local.get $4 + local.get $11 + call $~lib/math/pio2_large_quot + local.set $15 + i32.const 0 + local.get $15 + i32.sub + local.get $15 + local.get $10 + select + end + local.set $17 + global.get $~lib/math/rempio2_y0 + local.set $18 + global.get $~lib/math/rempio2_y1 + local.set $19 + local.get $17 + i32.const 1 + i32.and + if (result f64) + block $~lib/math/sin_kern|inlined.0 (result f64) + local.get $18 + local.set $7 + local.get $19 + local.set $16 + i32.const 1 + local.set $13 + local.get $7 + local.get $7 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const 0.00833333333332249 + local.get $4 + f64.const -1.984126982985795e-04 + local.get $4 + f64.const 2.7557313707070068e-06 + f64.mul + f64.add + f64.mul + f64.add + local.get $4 + local.get $5 + f64.mul + f64.const -2.5050760253406863e-08 + local.get $4 + f64.const 1.58969099521155e-10 + f64.mul + f64.add + f64.mul + f64.add + local.set $6 + local.get $4 + local.get $7 + f64.mul + local.set $9 + local.get $13 + i32.eqz + if + local.get $7 + local.get $9 + f64.const -0.16666666666666632 + local.get $4 + local.get $6 + f64.mul + f64.add + f64.mul + f64.add + br $~lib/math/sin_kern|inlined.0 + else + local.get $7 + local.get $4 + f64.const 0.5 + local.get $16 + f64.mul + local.get $9 + local.get $6 + f64.mul + f64.sub + f64.mul + local.get $16 + f64.sub + local.get $9 + f64.const -0.16666666666666632 + f64.mul + f64.sub + f64.sub + br $~lib/math/sin_kern|inlined.0 + end + unreachable + end + else + local.get $18 + local.set $16 + local.get $19 + local.set $8 + local.get $16 + local.get $16 + f64.mul + local.set $9 + local.get $9 + local.get $9 + f64.mul + local.set $6 + local.get $9 + f64.const 0.0416666666666666 + local.get $9 + f64.const -0.001388888888887411 + local.get $9 + f64.const 2.480158728947673e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.get $6 + local.get $6 + f64.mul + f64.const -2.7557314351390663e-07 + local.get $9 + f64.const 2.087572321298175e-09 + local.get $9 + f64.const -1.1359647557788195e-11 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $5 + f64.const 0.5 + local.get $9 + f64.mul + local.set $4 + f64.const 1 + local.get $4 + f64.sub + local.set $6 + local.get $6 + f64.const 1 + local.get $6 + f64.sub + local.get $4 + f64.sub + local.get $9 + local.get $5 + f64.mul + local.get $16 + local.get $8 + f64.mul + f64.sub + f64.add + f64.add + end + local.set $0 + local.get $17 + i32.const 1 + i32.add + i32.const 2 + i32.and + if (result f64) + local.get $0 + f64.neg + else + local.get $0 + end + ) + (func $std/math/test_cos (; 91 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.cos + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/cos + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.cos (; 92 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f64) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 i32) + (local $9 i32) + (local $10 f32) + (local $11 i32) + (local $12 f32) + (local $13 i32) + (local $14 i32) + (local $15 i64) + (local $16 i32) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i32) + (local $25 i32) + (local $26 f64) + (local $27 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 31 + i32.shr_u + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1061752794 + i32.le_u + if + local.get $1 + i32.const 964689920 + i32.lt_u + if + f32.const 1 + return + end + local.get $0 + f64.promote_f32 + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const -0.001388676377460993 + local.get $4 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $6 + f32.const 1 + f64.promote_f32 + local.get $4 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $5 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $5 + local.get $4 + f64.mul + local.get $6 + f64.mul + f64.add + f32.demote_f64 + return + end + local.get $1 + i32.const 1081824209 + i32.le_u + if + local.get $1 + i32.const 1075235811 + i32.gt_u + if + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 3.141592653589793 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 3.141592653589793 + f64.sub + end + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $5 + f64.const -0.001388676377460993 + local.get $6 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $4 + f32.const 1 + f64.promote_f32 + local.get $6 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $5 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $5 + local.get $6 + f64.mul + local.get $4 + f64.mul + f64.add + f32.demote_f64 + f32.neg + return + else + local.get $2 + if (result f32) + local.get $0 + f64.promote_f32 + f64.const 1.5707963267948966 + f64.add + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const -1.9839334836096632e-04 + local.get $4 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $6 + local.get $4 + local.get $3 + f64.mul + local.set $7 + local.get $3 + local.get $7 + f64.const -0.16666666641626524 + local.get $4 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $7 + local.get $5 + f64.mul + local.get $6 + f64.mul + f64.add + f32.demote_f64 + else + f64.const 1.5707963267948966 + local.get $0 + f64.promote_f32 + f64.sub + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + f64.const -1.9839334836096632e-04 + local.get $7 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $5 + local.get $7 + local.get $3 + f64.mul + local.set $4 + local.get $3 + local.get $4 + f64.const -0.16666666641626524 + local.get $7 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $4 + local.get $6 + f64.mul + local.get $5 + f64.mul + f64.add + f32.demote_f64 + end + return + end + unreachable + end + local.get $1 + i32.const 1088565717 + i32.le_u + if + local.get $1 + i32.const 1085271519 + i32.gt_u + if + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 6.283185307179586 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 6.283185307179586 + f64.sub + end + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const -0.001388676377460993 + local.get $4 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $6 + f32.const 1 + f64.promote_f32 + local.get $4 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $5 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $5 + local.get $4 + f64.mul + local.get $6 + f64.mul + f64.add + f32.demote_f64 + return + else + local.get $2 + if (result f32) + local.get $0 + f32.neg + f64.promote_f32 + f64.const 4.71238898038469 + f64.sub + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $5 + f64.const -1.9839334836096632e-04 + local.get $6 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $4 + local.get $6 + local.get $7 + f64.mul + local.set $3 + local.get $7 + local.get $3 + f64.const -0.16666666641626524 + local.get $6 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $3 + local.get $5 + f64.mul + local.get $4 + f64.mul + f64.add + f32.demote_f64 + else + local.get $0 + f64.promote_f32 + f64.const 4.71238898038469 + f64.sub + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + f64.const -1.9839334836096632e-04 + local.get $3 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $5 + local.get $3 + local.get $7 + f64.mul + local.set $6 + local.get $7 + local.get $6 + f64.const -0.16666666641626524 + local.get $3 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $6 + local.get $4 + f64.mul + local.get $5 + f64.mul + f64.add + f32.demote_f64 + end + return + end + unreachable + end + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + local.get $0 + f32.sub + return + end + block $~lib/math/rempio2f|inlined.0 (result i32) + local.get $0 + local.set $10 + local.get $1 + local.set $9 + local.get $2 + local.set $8 + local.get $9 + i32.const 1305022427 + i32.lt_u + if + local.get $10 + f64.promote_f32 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $6 + local.get $10 + f64.promote_f32 + local.get $6 + f64.const 1.5707963109016418 + f64.mul + f64.sub + local.get $6 + f64.const 1.5893254773528196e-08 + f64.mul + f64.sub + global.set $~lib/math/rempio2f_y + local.get $6 + i32.trunc_f64_s + br $~lib/math/rempio2f|inlined.0 + end + local.get $10 + local.set $12 + local.get $9 + local.set $11 + i32.const 352 + i32.load offset=4 + local.set $13 + local.get $11 + i32.const 23 + i32.shr_s + i32.const 152 + i32.sub + local.set $14 + local.get $14 + i32.const 63 + i32.and + i64.extend_i32_s + local.set $15 + local.get $13 + local.get $14 + i32.const 6 + i32.shr_s + i32.const 3 + i32.shl + i32.add + local.set $16 + local.get $16 + i64.load + local.set $17 + local.get $16 + i64.load offset=8 + local.set $18 + local.get $15 + i64.const 32 + i64.gt_u + if + local.get $16 + i64.load offset=16 + local.set $20 + local.get $20 + i64.const 96 + local.get $15 + i64.sub + i64.shr_u + local.set $19 + local.get $19 + local.get $18 + local.get $15 + i64.const 32 + i64.sub + i64.shl + i64.or + local.set $19 + else + local.get $18 + i64.const 32 + local.get $15 + i64.sub + i64.shr_u + local.set $19 + end + local.get $18 + i64.const 64 + local.get $15 + i64.sub + i64.shr_u + local.get $17 + local.get $15 + i64.shl + i64.or + local.set $20 + local.get $11 + i32.const 8388607 + i32.and + i32.const 8388608 + i32.or + i64.extend_i32_s + local.set $21 + local.get $21 + local.get $20 + i64.mul + local.get $21 + local.get $19 + i64.mul + i64.const 32 + i64.shr_u + i64.add + local.set $22 + local.get $22 + i64.const 2 + i64.shl + local.set $23 + local.get $22 + i64.const 62 + i64.shr_u + local.get $23 + i64.const 63 + i64.shr_u + i64.add + i32.wrap_i64 + local.set $24 + f64.const 8.515303950216386e-20 + local.get $12 + f64.promote_f32 + f64.copysign + local.get $23 + f64.convert_i64_s + f64.mul + global.set $~lib/math/rempio2f_y + local.get $24 + local.set $24 + i32.const 0 + local.get $24 + i32.sub + local.get $24 + local.get $8 + select + end + local.set $25 + global.get $~lib/math/rempio2f_y + local.set $26 + local.get $25 + i32.const 1 + i32.and + if (result f32) + local.get $26 + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $5 + f64.const -1.9839334836096632e-04 + local.get $6 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $4 + local.get $6 + local.get $7 + f64.mul + local.set $3 + local.get $7 + local.get $3 + f64.const -0.16666666641626524 + local.get $6 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $3 + local.get $5 + f64.mul + local.get $4 + f64.mul + f64.add + f32.demote_f64 + else + local.get $26 + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + f64.const -0.001388676377460993 + local.get $3 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $5 + f32.const 1 + f64.promote_f32 + local.get $3 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $4 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $4 + local.get $3 + f64.mul + local.get $5 + f64.mul + f64.add + f32.demote_f64 + end + local.set $27 + local.get $25 + i32.const 1 + i32.add + i32.const 2 + i32.and + if (result f32) + local.get $27 + f32.neg + else + local.get $27 + end + ) + (func $std/math/test_cosf (; 93 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.cos + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.expm1 (; 94 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 f64) + (local $14 f64) + (local $15 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i64.const 2147483647 + i64.and + i32.wrap_i64 + local.set $2 + i32.const 0 + local.set $3 + local.get $1 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.set $4 + local.get $2 + i32.const 1078159482 + i32.ge_u + if + local.get $0 + call $~lib/number/isNaN + if + local.get $0 + return + end + local.get $4 + if + f64.const -1 + return + end + local.get $0 + f64.const 709.782712893384 + f64.gt + if + local.get $0 + f64.const 8988465674311579538646525e283 + f64.mul + return + end + end + f64.const 0 + local.set $5 + local.get $2 + i32.const 1071001154 + i32.gt_u + if + i32.const 1 + local.get $4 + i32.const 1 + i32.shl + i32.sub + f64.const 1.4426950408889634 + local.get $0 + f64.mul + f64.const 0.5 + local.get $0 + f64.copysign + f64.add + i32.trunc_f64_s + local.get $2 + i32.const 1072734898 + i32.lt_u + select + local.set $3 + local.get $3 + f64.convert_i32_s + local.set $6 + local.get $0 + local.get $6 + f64.const 0.6931471803691238 + f64.mul + f64.sub + local.set $7 + local.get $6 + f64.const 1.9082149292705877e-10 + f64.mul + local.set $8 + local.get $7 + local.get $8 + f64.sub + local.set $0 + local.get $7 + local.get $0 + f64.sub + local.get $8 + f64.sub + local.set $5 + else + local.get $2 + i32.const 1016070144 + i32.lt_u + if + local.get $0 + return + end + end + f64.const 0.5 + local.get $0 + f64.mul + local.set $9 + local.get $0 + local.get $9 + f64.mul + local.set $10 + local.get $10 + local.get $10 + f64.mul + local.set $11 + f64.const 1 + local.get $10 + f64.const -0.03333333333333313 + f64.mul + f64.add + local.get $11 + f64.const 1.5873015872548146e-03 + local.get $10 + f64.const -7.93650757867488e-05 + f64.mul + f64.add + local.get $11 + f64.const 4.008217827329362e-06 + local.get $10 + f64.const -2.0109921818362437e-07 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $12 + f64.const 3 + local.get $12 + local.get $9 + f64.mul + f64.sub + local.set $6 + local.get $10 + local.get $12 + local.get $6 + f64.sub + f64.const 6 + local.get $0 + local.get $6 + f64.mul + f64.sub + f64.div + f64.mul + local.set $13 + local.get $3 + i32.const 0 + i32.eq + if + local.get $0 + local.get $0 + local.get $13 + f64.mul + local.get $10 + f64.sub + f64.sub + return + end + local.get $0 + local.get $13 + local.get $5 + f64.sub + f64.mul + local.get $5 + f64.sub + local.set $13 + local.get $13 + local.get $10 + f64.sub + local.set $13 + local.get $3 + i32.const -1 + i32.eq + if + f64.const 0.5 + local.get $0 + local.get $13 + f64.sub + f64.mul + f64.const 0.5 + f64.sub + return + end + local.get $3 + i32.const 1 + i32.eq + if + local.get $0 + f64.const -0.25 + f64.lt + if + f64.const -2 + local.get $13 + local.get $0 + f64.const 0.5 + f64.add + f64.sub + f64.mul + return + end + f64.const 1 + f64.const 2 + local.get $0 + local.get $13 + f64.sub + f64.mul + f64.add + return + end + i64.const 1023 + local.get $3 + i64.extend_i32_s + i64.add + i64.const 52 + i64.shl + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $14 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + i32.const 1 + else + local.get $3 + i32.const 56 + i32.gt_s + end + if + local.get $0 + local.get $13 + f64.sub + f64.const 1 + f64.add + local.set $15 + local.get $3 + i32.const 1024 + i32.eq + if + local.get $15 + f64.const 2 + f64.mul + f64.const 8988465674311579538646525e283 + f64.mul + local.set $15 + else + local.get $15 + local.get $14 + f64.mul + local.set $15 + end + local.get $15 + f64.const 1 + f64.sub + return + end + i64.const 1023 + local.get $3 + i64.extend_i32_s + i64.sub + i64.const 52 + i64.shl + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $15 + local.get $3 + i32.const 20 + i32.lt_s + if + f64.const 1 + local.get $15 + f64.sub + local.get $13 + f64.sub + local.set $15 + else + f64.const 1 + local.get $13 + local.get $15 + f64.add + f64.sub + local.set $15 + end + local.get $0 + local.get $15 + f64.add + local.get $14 + f64.mul + ) + (func $~lib/math/NativeMath.exp (; 95 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i32) + (local $2 i32) + (local $3 f64) + (local $4 f64) + (local $5 i32) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + local.get $0 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $1 + local.get $1 + i32.const 31 + i32.shr_u + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1082532651 + i32.ge_u + if + local.get $0 + call $~lib/number/isNaN + if + local.get $0 + return + end + local.get $0 + f64.const 709.782712893384 + f64.gt + if + local.get $0 + f64.const 8988465674311579538646525e283 + f64.mul + return + end + local.get $0 + f64.const -745.1332191019411 + f64.lt + if + f64.const 0 + return + end + end + f64.const 0 + local.set $4 + i32.const 0 + local.set $5 + local.get $1 + i32.const 1071001154 + i32.gt_u + if + local.get $1 + i32.const 1072734898 + i32.ge_u + if + f64.const 1.4426950408889634 + local.get $0 + f64.mul + f64.const 0.5 + local.get $0 + f64.copysign + f64.add + i32.trunc_f64_s + local.set $5 + else + i32.const 1 + local.get $2 + i32.const 1 + i32.shl + i32.sub + local.set $5 + end + local.get $0 + local.get $5 + f64.convert_i32_s + f64.const 0.6931471803691238 + f64.mul + f64.sub + local.set $3 + local.get $5 + f64.convert_i32_s + f64.const 1.9082149292705877e-10 + f64.mul + local.set $4 + local.get $3 + local.get $4 + f64.sub + local.set $0 + else + local.get $1 + i32.const 1043333120 + i32.gt_u + if + local.get $0 + local.set $3 + else + f64.const 1 + local.get $0 + f64.add + return + end + end + local.get $0 + local.get $0 + f64.mul + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $0 + local.get $6 + f64.const 0.16666666666666602 + f64.mul + local.get $7 + f64.const -2.7777777777015593e-03 + local.get $6 + f64.const 6.613756321437934e-05 + f64.mul + f64.add + local.get $7 + f64.const -1.6533902205465252e-06 + local.get $6 + f64.const 4.1381367970572385e-08 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.sub + local.set $8 + f64.const 1 + local.get $0 + local.get $8 + f64.mul + f64.const 2 + local.get $8 + f64.sub + f64.div + local.get $4 + f64.sub + local.get $3 + f64.add + f64.add + local.set $9 + local.get $5 + i32.const 0 + i32.eq + if + local.get $9 + return + end + local.get $9 + local.get $5 + call $~lib/math/NativeMath.scalbn + ) + (func $~lib/math/NativeMath.cosh (; 96 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 f64) + (local $4 f64) + (local $5 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 9223372036854775807 + i64.and + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $0 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + local.get $2 + i32.const 1072049730 + i32.lt_u + if + local.get $2 + i32.const 1045430272 + i32.lt_u + if + f64.const 1 + return + end + local.get $0 + call $~lib/math/NativeMath.expm1 + local.set $3 + f64.const 1 + local.get $3 + local.get $3 + f64.mul + f64.const 2 + f64.const 2 + local.get $3 + f64.mul + f64.add + f64.div + f64.add + return + end + local.get $2 + i32.const 1082535490 + i32.lt_u + if + local.get $0 + call $~lib/math/NativeMath.exp + local.set $3 + f64.const 0.5 + local.get $3 + f64.const 1 + local.get $3 + f64.div + f64.add + f64.mul + return + end + local.get $0 + local.set $4 + i32.const 1023 + i32.const 2043 + i32.const 2 + i32.div_u + i32.add + i32.const 20 + i32.shl + i64.extend_i32_u + i64.const 32 + i64.shl + f64.reinterpret_i64 + local.set $5 + local.get $4 + f64.const 1416.0996898839683 + f64.sub + call $~lib/math/NativeMath.exp + local.get $5 + f64.mul + local.get $5 + f64.mul + local.set $3 + local.get $3 + ) + (func $std/math/test_cosh (; 97 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.cosh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/cosh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.expm1 (; 98 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 f32) + (local $5 f32) + (local $6 i32) + (local $7 f32) + (local $8 f32) + (local $9 f32) + (local $10 f32) + (local $11 f32) + (local $12 f32) + (local $13 f32) + (local $14 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $2 + local.get $1 + i32.const 31 + i32.shr_u + local.set $3 + local.get $2 + i32.const 1100331076 + i32.ge_u + if + local.get $2 + i32.const 2139095040 + i32.gt_u + if + local.get $0 + return + end + local.get $3 + if + f32.const -1 + return + end + local.get $0 + f32.const 88.7216796875 + f32.gt + if + local.get $0 + f32.const 1701411834604692317316873e14 + f32.mul + local.set $0 + local.get $0 + return + end + end + f32.const 0 + local.set $4 + local.get $2 + i32.const 1051816472 + i32.gt_u + if + i32.const 1 + local.get $3 + i32.const 1 + i32.shl + i32.sub + f32.const 1.4426950216293335 + local.get $0 + f32.mul + f32.const 0.5 + local.get $0 + f32.copysign + f32.add + i32.trunc_f32_s + local.get $2 + i32.const 1065686418 + i32.lt_u + select + local.set $6 + local.get $6 + f32.convert_i32_s + local.set $5 + local.get $0 + local.get $5 + f32.const 0.6931381225585938 + f32.mul + f32.sub + local.set $7 + local.get $5 + f32.const 9.05800061445916e-06 + f32.mul + local.set $8 + local.get $7 + local.get $8 + f32.sub + local.set $0 + local.get $7 + local.get $0 + f32.sub + local.get $8 + f32.sub + local.set $4 + else + local.get $2 + i32.const 855638016 + i32.lt_u + if + local.get $0 + return + else + i32.const 0 + local.set $6 + end + end + f32.const 0.5 + local.get $0 + f32.mul + local.set $9 + local.get $0 + local.get $9 + f32.mul + local.set $10 + f32.const 1 + local.get $10 + f32.const -0.03333321213722229 + local.get $10 + f32.const 1.5807170420885086e-03 + f32.mul + f32.add + f32.mul + f32.add + local.set $11 + f32.const 3 + local.get $11 + local.get $9 + f32.mul + f32.sub + local.set $5 + local.get $10 + local.get $11 + local.get $5 + f32.sub + f32.const 6 + local.get $0 + local.get $5 + f32.mul + f32.sub + f32.div + f32.mul + local.set $12 + local.get $6 + i32.const 0 + i32.eq + if + local.get $0 + local.get $0 + local.get $12 + f32.mul + local.get $10 + f32.sub + f32.sub + return + end + local.get $0 + local.get $12 + local.get $4 + f32.sub + f32.mul + local.get $4 + f32.sub + local.set $12 + local.get $12 + local.get $10 + f32.sub + local.set $12 + local.get $6 + i32.const -1 + i32.eq + if + f32.const 0.5 + local.get $0 + local.get $12 + f32.sub + f32.mul + f32.const 0.5 + f32.sub + return + end + local.get $6 + i32.const 1 + i32.eq + if + local.get $0 + f32.const -0.25 + f32.lt + if + f32.const -2 + local.get $12 + local.get $0 + f32.const 0.5 + f32.add + f32.sub + f32.mul + return + end + f32.const 1 + f32.const 2 + local.get $0 + local.get $12 + f32.sub + f32.mul + f32.add + return + end + i32.const 127 + local.get $6 + i32.add + i32.const 23 + i32.shl + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $13 + local.get $6 + i32.const 0 + i32.lt_s + if (result i32) + i32.const 1 + else + local.get $6 + i32.const 56 + i32.gt_s + end + if + local.get $0 + local.get $12 + f32.sub + f32.const 1 + f32.add + local.set $14 + local.get $6 + i32.const 128 + i32.eq + if + local.get $14 + f32.const 2 + f32.mul + f32.const 1701411834604692317316873e14 + f32.mul + local.set $14 + else + local.get $14 + local.get $13 + f32.mul + local.set $14 + end + local.get $14 + f32.const 1 + f32.sub + return + end + i32.const 127 + local.get $6 + i32.sub + i32.const 23 + i32.shl + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $14 + local.get $6 + i32.const 20 + i32.lt_s + if + f32.const 1 + local.get $14 + f32.sub + local.get $12 + f32.sub + local.set $14 + else + f32.const 1 + local.get $12 + local.get $14 + f32.add + f32.sub + local.set $14 + end + local.get $0 + local.get $14 + f32.add + local.get $13 + f32.mul + ) + (func $~lib/math/NativeMathf.exp (; 99 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f32) + (local $4 f32) + (local $5 i32) + (local $6 f32) + (local $7 f32) + (local $8 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 31 + i32.shr_u + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1118743632 + i32.ge_u + if + local.get $1 + i32.const 1118925336 + i32.ge_u + if + local.get $2 + i32.eqz + if + local.get $0 + f32.const 1701411834604692317316873e14 + f32.mul + return + else + local.get $1 + i32.const 1120924085 + i32.ge_u + if + f32.const 0 + return + end + end + end + end + local.get $1 + i32.const 1051816472 + i32.gt_u + if + local.get $1 + i32.const 1065686418 + i32.gt_u + if + f32.const 1.4426950216293335 + local.get $0 + f32.mul + f32.const 0.5 + local.get $0 + f32.copysign + f32.add + i32.trunc_f32_s + local.set $5 + else + i32.const 1 + local.get $2 + i32.const 1 + i32.shl + i32.sub + local.set $5 + end + local.get $0 + local.get $5 + f32.convert_i32_s + f32.const 0.693145751953125 + f32.mul + f32.sub + local.set $3 + local.get $5 + f32.convert_i32_s + f32.const 1.428606765330187e-06 + f32.mul + local.set $4 + local.get $3 + local.get $4 + f32.sub + local.set $0 + else + local.get $1 + i32.const 956301312 + i32.gt_u + if + i32.const 0 + local.set $5 + local.get $0 + local.set $3 + f32.const 0 + local.set $4 + else + f32.const 1 + local.get $0 + f32.add + return + end + end + local.get $0 + local.get $0 + f32.mul + local.set $6 + local.get $0 + local.get $6 + f32.const 0.16666625440120697 + local.get $6 + f32.const -2.7667332906275988e-03 + f32.mul + f32.add + f32.mul + f32.sub + local.set $7 + f32.const 1 + local.get $0 + local.get $7 + f32.mul + f32.const 2 + local.get $7 + f32.sub + f32.div + local.get $4 + f32.sub + local.get $3 + f32.add + f32.add + local.set $8 + local.get $5 + i32.const 0 + i32.eq + if + local.get $8 + return + end + local.get $8 + local.get $5 + call $~lib/math/NativeMathf.scalbn + ) + (func $~lib/math/NativeMathf.cosh (; 100 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + (local $3 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $0 + local.get $1 + i32.const 1060205079 + i32.lt_u + if + local.get $1 + i32.const 964689920 + i32.lt_u + if + f32.const 1 + return + end + local.get $0 + call $~lib/math/NativeMathf.expm1 + local.set $2 + f32.const 1 + local.get $2 + local.get $2 + f32.mul + f32.const 2 + f32.const 2 + local.get $2 + f32.mul + f32.add + f32.div + f32.add + return + end + local.get $1 + i32.const 1118925335 + i32.lt_u + if + local.get $0 + call $~lib/math/NativeMathf.exp + local.set $2 + f32.const 0.5 + local.get $2 + f32.mul + f32.const 0.5 + local.get $2 + f32.div + f32.add + return + end + local.get $0 + local.set $2 + i32.const 127 + i32.const 235 + i32.const 1 + i32.shr_u + i32.add + i32.const 23 + i32.shl + f32.reinterpret_i32 + local.set $3 + local.get $2 + f32.const 162.88958740234375 + f32.sub + call $~lib/math/NativeMathf.exp + local.get $3 + f32.mul + local.get $3 + f32.mul + ) + (func $std/math/test_coshf (; 101 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.cosh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $std/math/test_exp (; 102 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.exp + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/exp + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $std/math/test_expf (; 103 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.exp + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $std/math/test_expm1 (; 104 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.expm1 + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/expm1 + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $std/math/test_expm1f (; 105 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.expm1 + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $std/math/test_floor (; 106 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (local $4 f64) + local.get $0 + local.set $4 + local.get $4 + f64.floor + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/floor + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $std/math/test_floorf (; 107 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (local $4 f32) + local.get $0 + local.set $4 + local.get $4 + f32.floor + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.hypot (; 108 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (local $2 i64) + (local $3 i64) + (local $4 i64) + (local $5 i32) + (local $6 i32) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 f64) + (local $14 f64) + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $1 + i64.reinterpret_f64 + local.set $3 + local.get $2 + i64.const 9223372036854775807 + i64.and + local.set $2 + local.get $3 + i64.const 9223372036854775807 + i64.and + local.set $3 + local.get $2 + local.get $3 + i64.lt_u + if + local.get $2 + local.set $4 + local.get $3 + local.set $2 + local.get $4 + local.set $3 + end + local.get $2 + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.set $5 + local.get $3 + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.set $6 + local.get $3 + f64.reinterpret_i64 + local.set $1 + local.get $6 + i32.const 2047 + i32.eq + if + local.get $1 + return + end + local.get $2 + f64.reinterpret_i64 + local.set $0 + local.get $5 + i32.const 2047 + i32.eq + if (result i32) + i32.const 1 + else + local.get $3 + i64.const 0 + i64.eq + end + if + local.get $0 + return + end + local.get $5 + local.get $6 + i32.sub + i32.const 64 + i32.gt_s + if + local.get $0 + local.get $1 + f64.add + return + end + f64.const 1 + local.set $7 + local.get $5 + i32.const 1533 + i32.gt_s + if + f64.const 5260135901548373507240989e186 + local.set $7 + local.get $0 + f64.const 1.90109156629516e-211 + f64.mul + local.set $0 + local.get $1 + f64.const 1.90109156629516e-211 + f64.mul + local.set $1 + else + local.get $6 + i32.const 573 + i32.lt_s + if + f64.const 1.90109156629516e-211 + local.set $7 + local.get $0 + f64.const 5260135901548373507240989e186 + f64.mul + local.set $0 + local.get $1 + f64.const 5260135901548373507240989e186 + f64.mul + local.set $1 + end + end + local.get $0 + f64.const 134217729 + f64.mul + local.set $8 + local.get $0 + local.get $8 + f64.sub + local.get $8 + f64.add + local.set $9 + local.get $0 + local.get $9 + f64.sub + local.set $10 + local.get $0 + local.get $0 + f64.mul + local.set $11 + local.get $9 + local.get $9 + f64.mul + local.get $11 + f64.sub + f64.const 2 + local.get $9 + f64.mul + local.get $10 + f64.add + local.get $10 + f64.mul + f64.add + local.set $12 + local.get $1 + f64.const 134217729 + f64.mul + local.set $8 + local.get $1 + local.get $8 + f64.sub + local.get $8 + f64.add + local.set $9 + local.get $1 + local.get $9 + f64.sub + local.set $10 + local.get $1 + local.get $1 + f64.mul + local.set $13 + local.get $9 + local.get $9 + f64.mul + local.get $13 + f64.sub + f64.const 2 + local.get $9 + f64.mul + local.get $10 + f64.add + local.get $10 + f64.mul + f64.add + local.set $14 + local.get $7 + local.get $14 + local.get $12 + f64.add + local.get $13 + f64.add + local.get $11 + f64.add + f64.sqrt + f64.mul + ) + (func $std/math/test_hypot (; 109 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) + local.get $0 + local.get $1 + call $~lib/math/NativeMath.hypot + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + local.get $1 + call $~lib/bindings/Math/hypot + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.hypot (; 110 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f32) + local.get $0 + i32.reinterpret_f32 + local.set $2 + local.get $1 + i32.reinterpret_f32 + local.set $3 + local.get $2 + i32.const 2147483647 + i32.and + local.set $2 + local.get $3 + i32.const 2147483647 + i32.and + local.set $3 + local.get $2 + local.get $3 + i32.lt_u + if + local.get $2 + local.set $4 + local.get $3 + local.set $2 + local.get $4 + local.set $3 + end + local.get $2 + f32.reinterpret_i32 + local.set $0 + local.get $3 + f32.reinterpret_i32 + local.set $1 + local.get $3 + i32.const 2139095040 + i32.eq + if + local.get $1 + return + end + local.get $2 + i32.const 2139095040 + i32.ge_u + if (result i32) + i32.const 1 + else + local.get $3 + i32.const 0 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $2 + local.get $3 + i32.sub + i32.const 209715200 + i32.ge_u + end + if + local.get $0 + local.get $1 + f32.add + return + end + f32.const 1 + local.set $5 + local.get $2 + i32.const 1568669696 + i32.ge_u + if + f32.const 1237940039285380274899124e3 + local.set $5 + local.get $0 + f32.const 8.077935669463161e-28 + f32.mul + local.set $0 + local.get $1 + f32.const 8.077935669463161e-28 + f32.mul + local.set $1 + else + local.get $3 + i32.const 562036736 + i32.lt_u + if + f32.const 8.077935669463161e-28 + local.set $5 + local.get $0 + f32.const 1237940039285380274899124e3 + f32.mul + local.set $0 + local.get $1 + f32.const 1237940039285380274899124e3 + f32.mul + local.set $1 + end + end + local.get $5 + local.get $0 + f64.promote_f32 + local.get $0 + f64.promote_f32 + f64.mul + local.get $1 + f64.promote_f32 + local.get $1 + f64.promote_f32 + f64.mul + f64.add + f32.demote_f64 + f32.sqrt + f32.mul + ) + (func $std/math/test_hypotf (; 111 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) + local.get $0 + local.get $1 + call $~lib/math/NativeMathf.hypot + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + ) + (func $std/math/test_log (; 112 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.log + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/log + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $std/math/test_logf (; 113 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.log + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.log10 (; 114 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 f64) + (local $14 f64) + (local $15 f64) + (local $16 f64) + (local $17 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + i32.const 0 + local.set $3 + local.get $2 + i32.const 1048576 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $2 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i64.const 1 + i64.shl + i64.const 0 + i64.eq + if + f64.const -1 + local.get $0 + local.get $0 + f64.mul + f64.div + return + end + local.get $2 + i32.const 31 + i32.shr_u + if + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.div + return + end + local.get $3 + i32.const 54 + i32.sub + local.set $3 + local.get $0 + f64.const 18014398509481984 + f64.mul + local.set $0 + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + else + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + return + else + local.get $2 + i32.const 1072693248 + i32.eq + if (result i32) + local.get $1 + i64.const 32 + i64.shl + i64.const 0 + i64.eq + else + i32.const 0 + end + if + f64.const 0 + return + end + end + end + local.get $2 + i32.const 1072693248 + i32.const 1072079006 + i32.sub + i32.add + local.set $2 + local.get $3 + local.get $2 + i32.const 20 + i32.shr_u + i32.const 1023 + i32.sub + i32.add + local.set $3 + local.get $2 + i32.const 1048575 + i32.and + i32.const 1072079006 + i32.add + local.set $2 + local.get $2 + i64.extend_i32_u + i64.const 32 + i64.shl + local.get $1 + i64.const 4294967295 + i64.and + i64.or + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $0 + local.get $0 + f64.const 1 + f64.sub + local.set $4 + f64.const 0.5 + local.get $4 + f64.mul + local.get $4 + f64.mul + local.set $5 + local.get $4 + f64.const 2 + local.get $4 + f64.add + f64.div + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $8 + local.get $8 + f64.const 0.3999999999940942 + local.get $8 + f64.const 0.22222198432149784 + local.get $8 + f64.const 0.15313837699209373 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $9 + local.get $7 + f64.const 0.6666666666666735 + local.get $8 + f64.const 0.2857142874366239 + local.get $8 + f64.const 0.1818357216161805 + local.get $8 + f64.const 0.14798198605116586 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $10 + local.get $10 + local.get $9 + f64.add + local.set $11 + local.get $4 + local.get $5 + f64.sub + local.set $12 + local.get $12 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const -4294967296 + i64.and + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $12 + local.get $4 + local.get $12 + f64.sub + local.get $5 + f64.sub + local.get $6 + local.get $5 + local.get $11 + f64.add + f64.mul + f64.add + local.set $13 + local.get $12 + f64.const 0.4342944818781689 + f64.mul + local.set $14 + local.get $3 + f64.convert_i32_s + local.set $15 + local.get $15 + f64.const 0.30102999566361177 + f64.mul + local.set $16 + local.get $15 + f64.const 3.694239077158931e-13 + f64.mul + local.get $13 + local.get $12 + f64.add + f64.const 2.5082946711645275e-11 + f64.mul + f64.add + local.get $13 + f64.const 0.4342944818781689 + f64.mul + f64.add + local.set $17 + local.get $16 + local.get $14 + f64.add + local.set $8 + local.get $17 + local.get $16 + local.get $8 + f64.sub + local.get $14 + f64.add + f64.add + local.set $17 + local.get $17 + local.get $8 + f64.add + ) + (func $std/math/test_log10 (; 115 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.log10 + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/log10 + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.log10 (; 116 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f32) + (local $4 f32) + (local $5 f32) + (local $6 f32) + (local $7 f32) + (local $8 f32) + (local $9 f32) + (local $10 f32) + (local $11 f32) + (local $12 f32) + (local $13 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + i32.const 0 + local.set $2 + local.get $1 + i32.const 8388608 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i32.const 1 + i32.shl + i32.const 0 + i32.eq + if + f32.const -1 + local.get $0 + local.get $0 + f32.mul + f32.div + return + end + local.get $1 + i32.const 31 + i32.shr_u + if + local.get $0 + local.get $0 + f32.sub + f32.const 0 + f32.div + return + end + local.get $2 + i32.const 25 + i32.sub + local.set $2 + local.get $0 + f32.const 33554432 + f32.mul + local.set $0 + local.get $0 + i32.reinterpret_f32 + local.set $1 + else + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + return + else + local.get $1 + i32.const 1065353216 + i32.eq + if + f32.const 0 + return + end + end + end + local.get $1 + i32.const 1065353216 + i32.const 1060439283 + i32.sub + i32.add + local.set $1 + local.get $2 + local.get $1 + i32.const 23 + i32.shr_u + i32.const 127 + i32.sub + i32.add + local.set $2 + local.get $1 + i32.const 8388607 + i32.and + i32.const 1060439283 + i32.add + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $0 + local.get $0 + f32.const 1 + f32.sub + local.set $3 + local.get $3 + f32.const 2 + local.get $3 + f32.add + f32.div + local.set $4 + local.get $4 + local.get $4 + f32.mul + local.set $5 + local.get $5 + local.get $5 + f32.mul + local.set $6 + local.get $6 + f32.const 0.40000972151756287 + local.get $6 + f32.const 0.24279078841209412 + f32.mul + f32.add + f32.mul + local.set $7 + local.get $5 + f32.const 0.6666666269302368 + local.get $6 + f32.const 0.2849878668785095 + f32.mul + f32.add + f32.mul + local.set $8 + local.get $8 + local.get $7 + f32.add + local.set $9 + f32.const 0.5 + local.get $3 + f32.mul + local.get $3 + f32.mul + local.set $10 + local.get $3 + local.get $10 + f32.sub + local.set $11 + local.get $11 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const -4096 + i32.and + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $11 + local.get $3 + local.get $11 + f32.sub + local.get $10 + f32.sub + local.get $4 + local.get $10 + local.get $9 + f32.add + f32.mul + f32.add + local.set $12 + local.get $2 + f32.convert_i32_s + local.set $13 + local.get $13 + f32.const 7.903415166765626e-07 + f32.mul + local.get $12 + local.get $11 + f32.add + f32.const -3.168997136526741e-05 + f32.mul + f32.add + local.get $12 + f32.const 0.434326171875 + f32.mul + f32.add + local.get $11 + f32.const 0.434326171875 + f32.mul + f32.add + local.get $13 + f32.const 0.3010292053222656 + f32.mul + f32.add + ) + (func $std/math/test_log10f (; 117 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.log10 + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $std/math/test_log1p (; 118 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.log1p + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/log1p + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $std/math/test_log1pf (; 119 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.log1p + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.log2 (; 120 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 f64) + (local $14 f64) + (local $15 f64) + (local $16 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + i32.const 0 + local.set $3 + local.get $2 + i32.const 1048576 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $2 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i64.const 1 + i64.shl + i64.const 0 + i64.eq + if + f64.const -1 + local.get $0 + local.get $0 + f64.mul + f64.div + return + end + local.get $2 + i32.const 31 + i32.shr_u + if + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.div + return + end + local.get $3 + i32.const 54 + i32.sub + local.set $3 + local.get $0 + f64.const 18014398509481984 + f64.mul + local.set $0 + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + else + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + return + else + local.get $2 + i32.const 1072693248 + i32.eq + if (result i32) + local.get $1 + i64.const 32 + i64.shl + i64.const 0 + i64.eq + else + i32.const 0 + end + if + f64.const 0 + return + end + end + end + local.get $2 + i32.const 1072693248 + i32.const 1072079006 + i32.sub + i32.add + local.set $2 + local.get $3 + local.get $2 + i32.const 20 + i32.shr_u + i32.const 1023 + i32.sub + i32.add + local.set $3 + local.get $2 + i32.const 1048575 + i32.and + i32.const 1072079006 + i32.add + local.set $2 + local.get $2 + i64.extend_i32_u + i64.const 32 + i64.shl + local.get $1 + i64.const 4294967295 + i64.and + i64.or + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $0 + local.get $0 + f64.const 1 + f64.sub + local.set $4 + f64.const 0.5 + local.get $4 + f64.mul + local.get $4 + f64.mul + local.set $5 + local.get $4 + f64.const 2 + local.get $4 + f64.add + f64.div + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $8 + local.get $8 + f64.const 0.3999999999940942 + local.get $8 + f64.const 0.22222198432149784 + local.get $8 + f64.const 0.15313837699209373 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $9 + local.get $7 + f64.const 0.6666666666666735 + local.get $8 + f64.const 0.2857142874366239 + local.get $8 + f64.const 0.1818357216161805 + local.get $8 + f64.const 0.14798198605116586 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $10 + local.get $10 + local.get $9 + f64.add + local.set $11 + local.get $4 + local.get $5 + f64.sub + local.set $12 + local.get $12 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const -4294967296 + i64.and + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $12 + local.get $4 + local.get $12 + f64.sub + local.get $5 + f64.sub + local.get $6 + local.get $5 + local.get $11 + f64.add + f64.mul + f64.add + local.set $13 + local.get $12 + f64.const 1.4426950407214463 + f64.mul + local.set $14 + local.get $13 + local.get $12 + f64.add + f64.const 1.6751713164886512e-10 + f64.mul + local.get $13 + f64.const 1.4426950407214463 + f64.mul + f64.add + local.set $15 + local.get $3 + f64.convert_i32_s + local.set $16 + local.get $16 + local.get $14 + f64.add + local.set $8 + local.get $15 + local.get $16 + local.get $8 + f64.sub + local.get $14 + f64.add + f64.add + local.set $15 + local.get $8 + local.set $14 + local.get $15 + local.get $14 + f64.add + ) + (func $std/math/test_log2 (; 121 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.log2 + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/log2 + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.log2 (; 122 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f32) + (local $4 f32) + (local $5 f32) + (local $6 f32) + (local $7 f32) + (local $8 f32) + (local $9 f32) + (local $10 f32) + (local $11 f32) + (local $12 i32) + (local $13 f32) + (local $14 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + i32.const 0 + local.set $2 + local.get $1 + i32.const 8388608 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 31 + i32.shr_u + end + if + local.get $1 + i32.const 1 + i32.shl + i32.const 0 + i32.eq + if + f32.const -1 + local.get $0 + local.get $0 + f32.mul + f32.div + return + end + local.get $1 + i32.const 31 + i32.shr_u + if + local.get $0 + local.get $0 + f32.sub + f32.const 0 + f32.div + return + end + local.get $2 + i32.const 25 + i32.sub + local.set $2 + local.get $0 + f32.const 33554432 + f32.mul + local.set $0 + local.get $0 + i32.reinterpret_f32 + local.set $1 + else + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + return + else + local.get $1 + i32.const 1065353216 + i32.eq + if + f32.const 0 + return + end + end + end + local.get $1 + i32.const 1065353216 + i32.const 1060439283 + i32.sub + i32.add + local.set $1 + local.get $2 + local.get $1 + i32.const 23 + i32.shr_u + i32.const 127 + i32.sub + i32.add + local.set $2 + local.get $1 + i32.const 8388607 + i32.and + i32.const 1060439283 + i32.add + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $0 + local.get $0 + f32.const 1 + f32.sub + local.set $3 + local.get $3 + f32.const 2 + local.get $3 + f32.add + f32.div + local.set $4 + local.get $4 + local.get $4 + f32.mul + local.set $5 + local.get $5 + local.get $5 + f32.mul + local.set $6 + local.get $6 + f32.const 0.40000972151756287 + local.get $6 + f32.const 0.24279078841209412 + f32.mul + f32.add + f32.mul + local.set $7 + local.get $5 + f32.const 0.6666666269302368 + local.get $6 + f32.const 0.2849878668785095 + f32.mul + f32.add + f32.mul + local.set $8 + local.get $8 + local.get $7 + f32.add + local.set $9 + f32.const 0.5 + local.get $3 + f32.mul + local.get $3 + f32.mul + local.set $10 + local.get $3 + local.get $10 + f32.sub + local.set $11 + local.get $11 + i32.reinterpret_f32 + local.set $12 + local.get $12 + i32.const -4096 + i32.and + local.set $12 + local.get $12 + f32.reinterpret_i32 + local.set $11 + local.get $3 + local.get $11 + f32.sub + local.get $10 + f32.sub + local.get $4 + local.get $10 + local.get $9 + f32.add + f32.mul + f32.add + local.set $13 + local.get $2 + f32.convert_i32_s + local.set $14 + local.get $13 + local.get $11 + f32.add + f32.const -1.7605285393074155e-04 + f32.mul + local.get $13 + f32.const 1.44287109375 + f32.mul + f32.add + local.get $11 + f32.const 1.44287109375 + f32.mul + f32.add + local.get $14 + f32.add + ) + (func $std/math/test_log2f (; 123 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.log2 + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $std/math/test_max (; 124 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) + (local $5 f64) + (local $6 f64) + local.get $0 + local.set $6 + local.get $1 + local.set $5 + local.get $6 + local.get $5 + f64.max + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + local.get $1 + call $~lib/bindings/Math/max + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $std/math/test_maxf (; 125 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) + (local $5 f32) + (local $6 f32) + local.get $0 + local.set $6 + local.get $1 + local.set $5 + local.get $6 + local.get $5 + f32.max + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + ) + (func $std/math/test_min (; 126 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) + (local $5 f64) + (local $6 f64) + local.get $0 + local.set $6 + local.get $1 + local.set $5 + local.get $6 + local.get $5 + f64.min + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + local.get $1 + call $~lib/bindings/Math/min + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $std/math/test_minf (; 127 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) + (local $5 f32) + (local $6 f32) + local.get $0 + local.set $6 + local.get $1 + local.set $5 + local.get $6 + local.get $5 + f32.min + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + ) + (func $~lib/math/NativeMath.mod (; 128 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (local $2 i64) + (local $3 i64) + (local $4 i64) + (local $5 i64) + (local $6 i64) + (local $7 i64) + (local $8 f64) + (local $9 i64) + (local $10 i64) + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $1 + i64.reinterpret_f64 + local.set $3 + local.get $2 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $4 + local.get $3 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $5 + local.get $2 + i64.const 63 + i64.shr_u + local.set $6 + local.get $3 + i64.const 1 + i64.shl + local.set $7 + local.get $7 + i64.const 0 + i64.eq + if (result i32) + i32.const 1 + else + local.get $4 + i64.const 2047 + i64.eq + end + if (result i32) + i32.const 1 + else + local.get $1 + call $~lib/number/isNaN + end + if + local.get $0 + local.get $1 + f64.mul + local.set $8 + local.get $8 + local.get $8 + f64.div + return + end + local.get $2 + i64.const 1 + i64.shl + local.set $9 + local.get $9 + local.get $7 + i64.le_u + if + local.get $9 + local.get $7 + i64.eq + if + f64.const 0 + local.get $0 + f64.mul + return + end + local.get $0 + return + end + local.get $4 + i64.eqz + if + local.get $4 + local.get $2 + i64.const 12 + i64.shl + i64.clz + i64.sub + local.set $4 + local.get $2 + i64.const 0 + local.get $4 + i64.sub + i64.const 1 + i64.add + i64.shl + local.set $2 + else + local.get $2 + i64.const -1 + i64.const 12 + i64.shr_u + i64.and + local.set $2 + local.get $2 + i64.const 1 + i64.const 52 + i64.shl + i64.or + local.set $2 + end + local.get $5 + i64.eqz + if + local.get $5 + local.get $3 + i64.const 12 + i64.shl + i64.clz + i64.sub + local.set $5 + local.get $3 + i64.const 0 + local.get $5 + i64.sub + i64.const 1 + i64.add + i64.shl + local.set $3 + else + local.get $3 + i64.const -1 + i64.const 12 + i64.shr_u + i64.and + local.set $3 + local.get $3 + i64.const 1 + i64.const 52 + i64.shl + i64.or + local.set $3 + end + block $break|0 + loop $continue|0 + local.get $4 + local.get $5 + i64.gt_s + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i64.ge_u + if + local.get $2 + local.get $3 + i64.eq + if + f64.const 0 + local.get $0 + f64.mul + return + end + local.get $2 + local.get $3 + i64.sub + local.set $2 + end + local.get $2 + i64.const 1 + i64.shl + local.set $2 + local.get $4 + i64.const 1 + i64.sub + local.set $4 + br $continue|0 + end + unreachable + end + local.get $2 + local.get $3 + i64.ge_u + if + local.get $2 + local.get $3 + i64.eq + if + f64.const 0 + local.get $0 + f64.mul + return + end + local.get $2 + local.get $3 + i64.sub + local.set $2 + end + local.get $2 + i64.const 11 + i64.shl + i64.clz + local.set $10 + local.get $4 + local.get $10 + i64.sub + local.set $4 + local.get $2 + local.get $10 + i64.shl + local.set $2 + local.get $4 + i64.const 0 + i64.gt_s + if + local.get $2 + i64.const 1 + i64.const 52 + i64.shl + i64.sub + local.set $2 + local.get $2 + local.get $4 + i64.const 52 + i64.shl + i64.or + local.set $2 + else + local.get $2 + i64.const 0 + local.get $4 + i64.sub + i64.const 1 + i64.add + i64.shr_u + local.set $2 + end + local.get $2 + local.get $6 + i64.const 63 + i64.shl + i64.or + local.set $2 + local.get $2 + f64.reinterpret_i64 + ) + (func $std/math/test_mod (; 129 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) + local.get $0 + local.get $1 + call $~lib/math/NativeMath.mod + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + local.get $1 + call $std/math/mod + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.mod (; 130 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 f32) + (local $9 i32) + (local $10 i32) + local.get $0 + i32.reinterpret_f32 + local.set $2 + local.get $1 + i32.reinterpret_f32 + local.set $3 + local.get $2 + i32.const 23 + i32.shr_u + i32.const 255 + i32.and + local.set $4 + local.get $3 + i32.const 23 + i32.shr_u + i32.const 255 + i32.and + local.set $5 + local.get $2 + i32.const -2147483648 + i32.and + local.set $6 + local.get $3 + i32.const 1 + i32.shl + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $4 + i32.const 255 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $1 + call $~lib/number/isNaN + end + if + local.get $0 + local.get $1 + f32.mul + local.set $8 + local.get $8 + local.get $8 + f32.div + return + end + local.get $2 + i32.const 1 + i32.shl + local.set $9 + local.get $9 + local.get $7 + i32.le_u + if + local.get $9 + local.get $7 + i32.eq + if + f32.const 0 + local.get $0 + f32.mul + return + end + local.get $0 + return + end + local.get $4 + i32.eqz + if + local.get $4 + local.get $2 + i32.const 9 + i32.shl + i32.clz + i32.sub + local.set $4 + local.get $2 + i32.const 0 + local.get $4 + i32.sub + i32.const 1 + i32.add + i32.shl + local.set $2 + else + local.get $2 + i32.const -1 + i32.const 9 + i32.shr_u + i32.and + local.set $2 + local.get $2 + i32.const 1 + i32.const 23 + i32.shl + i32.or + local.set $2 + end + local.get $5 + i32.eqz + if + local.get $5 + local.get $3 + i32.const 9 + i32.shl + i32.clz + i32.sub + local.set $5 + local.get $3 + i32.const 0 + local.get $5 + i32.sub + i32.const 1 + i32.add + i32.shl + local.set $3 + else + local.get $3 + i32.const -1 + i32.const 9 + i32.shr_u + i32.and + local.set $3 + local.get $3 + i32.const 1 + i32.const 23 + i32.shl + i32.or + local.set $3 + end + block $break|0 + loop $continue|0 + local.get $4 + local.get $5 + i32.gt_s + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.ge_u + if + local.get $2 + local.get $3 + i32.eq + if + f32.const 0 + local.get $0 + f32.mul + return + end + local.get $2 + local.get $3 + i32.sub + local.set $2 + end + local.get $2 + i32.const 1 + i32.shl + local.set $2 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $continue|0 + end + unreachable + end + local.get $2 + local.get $3 + i32.ge_u + if + local.get $2 + local.get $3 + i32.eq + if + f32.const 0 + local.get $0 + f32.mul + return + end + local.get $2 + local.get $3 + i32.sub + local.set $2 + end + local.get $2 + i32.const 8 + i32.shl + i32.clz + local.set $10 + local.get $4 + local.get $10 + i32.sub + local.set $4 + local.get $2 + local.get $10 + i32.shl + local.set $2 + local.get $4 + i32.const 0 + i32.gt_s + if + local.get $2 + i32.const 1 + i32.const 23 + i32.shl + i32.sub + local.set $2 + local.get $2 + local.get $4 + i32.const 23 + i32.shl + i32.or + local.set $2 + else + local.get $2 + i32.const 0 + local.get $4 + i32.sub + i32.const 1 + i32.add + i32.shr_u + local.set $2 + end + local.get $2 + local.get $6 + i32.or + local.set $2 + local.get $2 + f32.reinterpret_i32 + ) + (func $std/math/test_modf (; 131 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) + local.get $0 + local.get $1 + call $~lib/math/NativeMathf.mod + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + ) + (func $~lib/math/NativeMath.pow (; 132 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (local $2 i64) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 f64) + (local $16 f64) + (local $17 f64) + (local $18 f64) + (local $19 f64) + (local $20 f64) + (local $21 f64) + (local $22 f64) + (local $23 f64) + (local $24 f64) + (local $25 f64) + (local $26 f64) + (local $27 f64) + (local $28 i32) + (local $29 i32) + (local $30 f64) + (local $31 f64) + (local $32 f64) + (local $33 f64) + (local $34 f64) + (local $35 f64) + (local $36 f64) + (local $37 f64) + (local $38 f64) + (local $39 f64) + (local $40 f64) + (local $41 i32) + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $3 + local.get $2 + i32.wrap_i64 + local.set $4 + local.get $1 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $5 + local.get $2 + i32.wrap_i64 + local.set $6 + local.get $3 + i32.const 2147483647 + i32.and + local.set $7 + local.get $5 + i32.const 2147483647 + i32.and + local.set $8 + local.get $8 + local.get $6 + i32.or + i32.const 0 + i32.eq + if + f64.const 1 + return + end + local.get $7 + i32.const 2146435072 + i32.gt_s + if (result i32) + i32.const 1 + else + local.get $7 + i32.const 2146435072 + i32.eq + if (result i32) + local.get $4 + i32.const 0 + i32.ne + else + i32.const 0 + end + end + if (result i32) + i32.const 1 + else + local.get $8 + i32.const 2146435072 + i32.gt_s + end + if (result i32) + i32.const 1 + else + local.get $8 + i32.const 2146435072 + i32.eq + if (result i32) + local.get $6 + i32.const 0 + i32.ne + else + i32.const 0 + end + end + if + local.get $0 + local.get $1 + f64.add + return + end + i32.const 0 + local.set $9 + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $8 + i32.const 1128267776 + i32.ge_s + if + i32.const 2 + local.set $9 + else + local.get $8 + i32.const 1072693248 + i32.ge_s + if + local.get $8 + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + local.set $10 + local.get $10 + i32.const 20 + i32.gt_s + local.set $11 + i32.const 52 + i32.const 20 + local.get $11 + select + local.get $10 + i32.sub + local.set $12 + local.get $6 + local.get $8 + local.get $11 + select + local.set $13 + local.get $13 + local.get $12 + i32.shr_s + local.set $14 + local.get $14 + local.get $12 + i32.shl + local.get $13 + i32.eq + if + i32.const 2 + local.get $14 + i32.const 1 + i32.and + i32.sub + local.set $9 + end + end + end + end + local.get $6 + i32.const 0 + i32.eq + if + local.get $8 + i32.const 2146435072 + i32.eq + if + local.get $7 + i32.const 1072693248 + i32.sub + local.get $4 + i32.or + i32.const 0 + i32.eq + if + f64.const nan:0x8000000000000 + return + else + local.get $7 + i32.const 1072693248 + i32.ge_s + if + local.get $5 + i32.const 0 + i32.ge_s + if (result f64) + local.get $1 + else + f64.const 0 + end + return + else + local.get $5 + i32.const 0 + i32.ge_s + if (result f64) + f64.const 0 + else + local.get $1 + f64.neg + end + return + end + unreachable + end + unreachable + end + local.get $8 + i32.const 1072693248 + i32.eq + if + local.get $5 + i32.const 0 + i32.ge_s + if + local.get $0 + return + end + f64.const 1 + local.get $0 + f64.div + return + end + local.get $5 + i32.const 1073741824 + i32.eq + if + local.get $0 + local.get $0 + f64.mul + return + end + local.get $5 + i32.const 1071644672 + i32.eq + if + local.get $3 + i32.const 0 + i32.ge_s + if + local.get $0 + f64.sqrt + return + end + end + end + local.get $0 + f64.abs + local.set $15 + local.get $4 + i32.const 0 + i32.eq + if + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $7 + i32.const 2146435072 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $7 + i32.const 1072693248 + i32.eq + end + if + local.get $15 + local.set $16 + local.get $5 + i32.const 0 + i32.lt_s + if + f64.const 1 + local.get $16 + f64.div + local.set $16 + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $7 + i32.const 1072693248 + i32.sub + local.get $9 + i32.or + i32.const 0 + i32.eq + if + local.get $16 + local.get $16 + f64.sub + local.set $17 + local.get $17 + local.get $17 + f64.div + local.set $16 + else + local.get $9 + i32.const 1 + i32.eq + if + local.get $16 + f64.neg + local.set $16 + end + end + end + local.get $16 + return + end + end + f64.const 1 + local.set $18 + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $9 + i32.const 0 + i32.eq + if + local.get $0 + local.get $0 + f64.sub + local.set $17 + local.get $17 + local.get $17 + f64.div + return + end + local.get $9 + i32.const 1 + i32.eq + if + f64.const -1 + local.set $18 + end + end + local.get $8 + i32.const 1105199104 + i32.gt_s + if + local.get $8 + i32.const 1139802112 + i32.gt_s + if + local.get $7 + i32.const 1072693247 + i32.le_s + if + local.get $5 + i32.const 0 + i32.lt_s + if (result f64) + f64.const 1.e+300 + f64.const 1.e+300 + f64.mul + else + f64.const 1e-300 + f64.const 1e-300 + f64.mul + end + return + end + local.get $7 + i32.const 1072693248 + i32.ge_s + if + local.get $5 + i32.const 0 + i32.gt_s + if (result f64) + f64.const 1.e+300 + f64.const 1.e+300 + f64.mul + else + f64.const 1e-300 + f64.const 1e-300 + f64.mul + end + return + end + end + local.get $7 + i32.const 1072693247 + i32.lt_s + if + local.get $5 + i32.const 0 + i32.lt_s + if (result f64) + local.get $18 + f64.const 1.e+300 + f64.mul + f64.const 1.e+300 + f64.mul + else + local.get $18 + f64.const 1e-300 + f64.mul + f64.const 1e-300 + f64.mul + end + return + end + local.get $7 + i32.const 1072693248 + i32.gt_s + if + local.get $5 + i32.const 0 + i32.gt_s + if (result f64) + local.get $18 + f64.const 1.e+300 + f64.mul + f64.const 1.e+300 + f64.mul + else + local.get $18 + f64.const 1e-300 + f64.mul + f64.const 1e-300 + f64.mul + end + return + end + local.get $15 + f64.const 1 + f64.sub + local.set $24 + local.get $24 + local.get $24 + f64.mul + f64.const 0.5 + local.get $24 + f64.const 0.3333333333333333 + local.get $24 + f64.const 0.25 + f64.mul + f64.sub + f64.mul + f64.sub + f64.mul + local.set $27 + f64.const 1.4426950216293335 + local.get $24 + f64.mul + local.set $25 + local.get $24 + f64.const 1.9259629911266175e-08 + f64.mul + local.get $27 + f64.const 1.4426950408889634 + f64.mul + f64.sub + local.set $26 + local.get $25 + local.get $26 + f64.add + local.set $19 + local.get $19 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $19 + local.get $26 + local.get $19 + local.get $25 + f64.sub + f64.sub + local.set $20 + else + i32.const 0 + local.set $29 + local.get $7 + i32.const 1048576 + i32.lt_s + if + local.get $15 + f64.const 9007199254740992 + f64.mul + local.set $15 + local.get $29 + i32.const 53 + i32.sub + local.set $29 + local.get $15 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $7 + end + local.get $29 + local.get $7 + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + i32.add + local.set $29 + local.get $7 + i32.const 1048575 + i32.and + local.set $28 + local.get $28 + i32.const 1072693248 + i32.or + local.set $7 + local.get $28 + i32.const 235662 + i32.le_s + if + i32.const 0 + local.set $10 + else + local.get $28 + i32.const 767610 + i32.lt_s + if + i32.const 1 + local.set $10 + else + i32.const 0 + local.set $10 + local.get $29 + i32.const 1 + i32.add + local.set $29 + local.get $7 + i32.const 1048576 + i32.sub + local.set $7 + end + end + local.get $15 + i64.reinterpret_f64 + i64.const 4294967295 + i64.and + local.get $7 + i64.extend_i32_s + i64.const 32 + i64.shl + i64.or + f64.reinterpret_i64 + local.set $15 + f64.const 1.5 + f64.const 1 + local.get $10 + select + local.set $35 + local.get $15 + local.get $35 + f64.sub + local.set $25 + f64.const 1 + local.get $15 + local.get $35 + f64.add + f64.div + local.set $26 + local.get $25 + local.get $26 + f64.mul + local.set $17 + local.get $17 + local.set $31 + local.get $31 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $31 + local.get $7 + i32.const 1 + i32.shr_s + i32.const 536870912 + i32.or + i32.const 524288 + i32.add + local.get $10 + i32.const 18 + i32.shl + i32.add + i64.extend_i32_s + i64.const 32 + i64.shl + f64.reinterpret_i64 + local.set $33 + local.get $15 + local.get $33 + local.get $35 + f64.sub + f64.sub + local.set $34 + local.get $26 + local.get $25 + local.get $31 + local.get $33 + f64.mul + f64.sub + local.get $31 + local.get $34 + f64.mul + f64.sub + f64.mul + local.set $32 + local.get $17 + local.get $17 + f64.mul + local.set $30 + local.get $30 + local.get $30 + f64.mul + f64.const 0.5999999999999946 + local.get $30 + f64.const 0.4285714285785502 + local.get $30 + f64.const 0.33333332981837743 + local.get $30 + f64.const 0.272728123808534 + local.get $30 + f64.const 0.23066074577556175 + local.get $30 + f64.const 0.20697501780033842 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $23 + local.get $23 + local.get $32 + local.get $31 + local.get $17 + f64.add + f64.mul + f64.add + local.set $23 + local.get $31 + local.get $31 + f64.mul + local.set $30 + f64.const 3 + local.get $30 + f64.add + local.get $23 + f64.add + local.set $33 + local.get $33 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $33 + local.get $23 + local.get $33 + f64.const 3 + f64.sub + local.get $30 + f64.sub + f64.sub + local.set $34 + local.get $31 + local.get $33 + f64.mul + local.set $25 + local.get $32 + local.get $33 + f64.mul + local.get $34 + local.get $17 + f64.mul + f64.add + local.set $26 + local.get $25 + local.get $26 + f64.add + local.set $21 + local.get $21 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $21 + local.get $26 + local.get $21 + local.get $25 + f64.sub + f64.sub + local.set $22 + f64.const 0.9617967009544373 + local.get $21 + f64.mul + local.set $36 + f64.const 1.350039202129749e-08 + f64.const 0 + local.get $10 + select + local.set $37 + f64.const -7.028461650952758e-09 + local.get $21 + f64.mul + local.get $22 + f64.const 0.9617966939259756 + f64.mul + f64.add + local.get $37 + f64.add + local.set $38 + local.get $29 + f64.convert_i32_s + local.set $24 + f64.const 0.5849624872207642 + f64.const 0 + local.get $10 + select + local.set $39 + local.get $36 + local.get $38 + f64.add + local.get $39 + f64.add + local.get $24 + f64.add + local.set $19 + local.get $19 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $19 + local.get $38 + local.get $19 + local.get $24 + f64.sub + local.get $39 + f64.sub + local.get $36 + f64.sub + f64.sub + local.set $20 + end + local.get $1 + local.set $40 + local.get $40 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $40 + local.get $1 + local.get $40 + f64.sub + local.get $19 + f64.mul + local.get $1 + local.get $20 + f64.mul + f64.add + local.set $22 + local.get $40 + local.get $19 + f64.mul + local.set $21 + local.get $22 + local.get $21 + f64.add + local.set $16 + local.get $16 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $28 + local.get $2 + i32.wrap_i64 + local.set $41 + local.get $28 + i32.const 1083179008 + i32.ge_s + if + local.get $28 + i32.const 1083179008 + i32.sub + local.get $41 + i32.or + i32.const 0 + i32.ne + if + local.get $18 + f64.const 1.e+300 + f64.mul + f64.const 1.e+300 + f64.mul + return + end + local.get $22 + f64.const 8.008566259537294e-17 + f64.add + local.get $16 + local.get $21 + f64.sub + f64.gt + if + local.get $18 + f64.const 1.e+300 + f64.mul + f64.const 1.e+300 + f64.mul + return + end + else + local.get $28 + i32.const 2147483647 + i32.and + i32.const 1083231232 + i32.ge_s + if + local.get $28 + i32.const -1064252416 + i32.sub + local.get $41 + i32.or + i32.const 0 + i32.ne + if + local.get $18 + f64.const 1e-300 + f64.mul + f64.const 1e-300 + f64.mul + return + end + local.get $22 + local.get $16 + local.get $21 + f64.sub + f64.le + if + local.get $18 + f64.const 1e-300 + f64.mul + f64.const 1e-300 + f64.mul + return + end + end + end + local.get $28 + i32.const 2147483647 + i32.and + local.set $41 + local.get $41 + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + local.set $10 + i32.const 0 + local.set $29 + local.get $41 + i32.const 1071644672 + i32.gt_s + if + local.get $28 + i32.const 1048576 + local.get $10 + i32.const 1 + i32.add + i32.shr_s + i32.add + local.set $29 + local.get $29 + i32.const 2147483647 + i32.and + i32.const 20 + i32.shr_s + i32.const 1023 + i32.sub + local.set $10 + f64.const 0 + local.set $24 + local.get $29 + i32.const 1048575 + local.get $10 + i32.shr_s + i32.const -1 + i32.xor + i32.and + i64.extend_i32_s + i64.const 32 + i64.shl + f64.reinterpret_i64 + local.set $24 + local.get $29 + i32.const 1048575 + i32.and + i32.const 1048576 + i32.or + i32.const 20 + local.get $10 + i32.sub + i32.shr_s + local.set $29 + local.get $28 + i32.const 0 + i32.lt_s + if + i32.const 0 + local.get $29 + i32.sub + local.set $29 + end + local.get $21 + local.get $24 + f64.sub + local.set $21 + end + local.get $22 + local.get $21 + f64.add + local.set $24 + local.get $24 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $24 + local.get $24 + f64.const 0.6931471824645996 + f64.mul + local.set $25 + local.get $22 + local.get $24 + local.get $21 + f64.sub + f64.sub + f64.const 0.6931471805599453 + f64.mul + local.get $24 + f64.const -1.904654299957768e-09 + f64.mul + f64.add + local.set $26 + local.get $25 + local.get $26 + f64.add + local.set $16 + local.get $26 + local.get $16 + local.get $25 + f64.sub + f64.sub + local.set $27 + local.get $16 + local.get $16 + f64.mul + local.set $24 + local.get $16 + local.get $24 + f64.const 0.16666666666666602 + local.get $24 + f64.const -2.7777777777015593e-03 + local.get $24 + f64.const 6.613756321437934e-05 + local.get $24 + f64.const -1.6533902205465252e-06 + local.get $24 + f64.const 4.1381367970572385e-08 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.sub + local.set $19 + local.get $16 + local.get $19 + f64.mul + local.get $19 + f64.const 2 + f64.sub + f64.div + local.get $27 + local.get $16 + local.get $27 + f64.mul + f64.add + f64.sub + local.set $23 + f64.const 1 + local.get $23 + local.get $16 + f64.sub + f64.sub + local.set $16 + local.get $16 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $28 + local.get $28 + local.get $29 + i32.const 20 + i32.shl + i32.add + local.set $28 + local.get $28 + i32.const 20 + i32.shr_s + i32.const 0 + i32.le_s + if + local.get $16 + local.get $29 + call $~lib/math/NativeMath.scalbn + local.set $16 + else + local.get $16 + i64.reinterpret_f64 + i64.const 4294967295 + i64.and + local.get $28 + i64.extend_i32_s + i64.const 32 + i64.shl + i64.or + f64.reinterpret_i64 + local.set $16 + end + local.get $18 + local.get $16 + f64.mul + ) + (func $std/math/test_pow (; 133 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) + local.get $0 + local.get $1 + call $~lib/math/NativeMath.pow + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + local.get $1 + call $~lib/bindings/Math/pow + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.pow (; 134 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 f32) + (local $11 f32) + (local $12 f32) + (local $13 f32) + (local $14 f32) + (local $15 f32) + (local $16 f32) + (local $17 f32) + (local $18 f32) + (local $19 f32) + (local $20 f32) + (local $21 f32) + (local $22 f32) + (local $23 f32) + (local $24 i32) + (local $25 i32) + (local $26 f32) + (local $27 f32) + (local $28 f32) + (local $29 f32) + (local $30 f32) + (local $31 f32) + (local $32 f32) + (local $33 f32) + (local $34 f32) + (local $35 f32) + (local $36 i32) + local.get $0 + i32.reinterpret_f32 + local.set $2 + local.get $1 + i32.reinterpret_f32 + local.set $3 + local.get $2 + i32.const 2147483647 + i32.and + local.set $4 + local.get $3 + i32.const 2147483647 + i32.and + local.set $5 + local.get $5 + i32.const 0 + i32.eq + if + f32.const 1 + return + end + local.get $4 + i32.const 2139095040 + i32.gt_s + if (result i32) + i32.const 1 + else + local.get $5 + i32.const 2139095040 + i32.gt_s + end + if + local.get $0 + local.get $1 + f32.add + return + end + i32.const 0 + local.set $6 + local.get $2 + i32.const 0 + i32.lt_s + if + local.get $5 + i32.const 1266679808 + i32.ge_s + if + i32.const 2 + local.set $6 + else + local.get $5 + i32.const 1065353216 + i32.ge_s + if + local.get $5 + i32.const 23 + i32.shr_s + i32.const 127 + i32.sub + local.set $8 + i32.const 23 + local.get $8 + i32.sub + local.set $9 + local.get $5 + local.get $9 + i32.shr_s + local.set $7 + local.get $7 + local.get $9 + i32.shl + local.get $5 + i32.eq + if + i32.const 2 + local.get $7 + i32.const 1 + i32.and + i32.sub + local.set $6 + end + end + end + end + local.get $5 + i32.const 2139095040 + i32.eq + if + local.get $4 + i32.const 1065353216 + i32.eq + if + f32.const nan:0x400000 + return + else + local.get $4 + i32.const 1065353216 + i32.gt_s + if + local.get $3 + i32.const 0 + i32.ge_s + if (result f32) + local.get $1 + else + f32.const 0 + end + return + else + local.get $3 + i32.const 0 + i32.ge_s + if (result f32) + f32.const 0 + else + local.get $1 + f32.neg + end + return + end + unreachable + end + unreachable + end + local.get $5 + i32.const 1065353216 + i32.eq + if + local.get $3 + i32.const 0 + i32.ge_s + if (result f32) + local.get $0 + else + f32.const 1 + local.get $0 + f32.div + end + return + end + local.get $3 + i32.const 1073741824 + i32.eq + if + local.get $0 + local.get $0 + f32.mul + return + end + local.get $3 + i32.const 1056964608 + i32.eq + if + local.get $2 + i32.const 0 + i32.ge_s + if + local.get $0 + f32.sqrt + return + end + end + local.get $0 + f32.abs + local.set $10 + local.get $4 + i32.const 2139095040 + i32.eq + if (result i32) + i32.const 1 + else + local.get $4 + i32.const 0 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $4 + i32.const 1065353216 + i32.eq + end + if + local.get $10 + local.set $11 + local.get $3 + i32.const 0 + i32.lt_s + if + f32.const 1 + local.get $11 + f32.div + local.set $11 + end + local.get $2 + i32.const 0 + i32.lt_s + if + local.get $4 + i32.const 1065353216 + i32.sub + local.get $6 + i32.or + i32.const 0 + i32.eq + if + local.get $11 + local.get $11 + f32.sub + local.set $12 + local.get $12 + local.get $12 + f32.div + local.set $11 + else + local.get $6 + i32.const 1 + i32.eq + if + local.get $11 + f32.neg + local.set $11 + end + end + end + local.get $11 + return + end + f32.const 1 + local.set $13 + local.get $2 + i32.const 0 + i32.lt_s + if + local.get $6 + i32.const 0 + i32.eq + if + local.get $0 + local.get $0 + f32.sub + local.set $12 + local.get $12 + local.get $12 + f32.div + return + end + local.get $6 + i32.const 1 + i32.eq + if + f32.const -1 + local.set $13 + end + end + local.get $5 + i32.const 1291845632 + i32.gt_s + if + local.get $4 + i32.const 1065353208 + i32.lt_s + if + local.get $3 + i32.const 0 + i32.lt_s + if (result f32) + local.get $13 + f32.const 1000000015047466219876688e6 + f32.mul + f32.const 1000000015047466219876688e6 + f32.mul + else + local.get $13 + f32.const 1.0000000031710769e-30 + f32.mul + f32.const 1.0000000031710769e-30 + f32.mul + end + return + end + local.get $4 + i32.const 1065353223 + i32.gt_s + if + local.get $3 + i32.const 0 + i32.gt_s + if (result f32) + local.get $13 + f32.const 1000000015047466219876688e6 + f32.mul + f32.const 1000000015047466219876688e6 + f32.mul + else + local.get $13 + f32.const 1.0000000031710769e-30 + f32.mul + f32.const 1.0000000031710769e-30 + f32.mul + end + return + end + local.get $10 + f32.const 1 + f32.sub + local.set $18 + local.get $18 + local.get $18 + f32.mul + f32.const 0.5 + local.get $18 + f32.const 0.3333333432674408 + local.get $18 + f32.const 0.25 + f32.mul + f32.sub + f32.mul + f32.sub + f32.mul + local.set $21 + f32.const 1.44268798828125 + local.get $18 + f32.mul + local.set $19 + local.get $18 + f32.const 7.052607543300837e-06 + f32.mul + local.get $21 + f32.const 1.4426950216293335 + f32.mul + f32.sub + local.set $20 + local.get $19 + local.get $20 + f32.add + local.set $14 + local.get $14 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $14 + local.get $20 + local.get $14 + local.get $19 + f32.sub + f32.sub + local.set $15 + else + i32.const 0 + local.set $24 + local.get $4 + i32.const 8388608 + i32.lt_s + if + local.get $10 + f32.const 16777216 + f32.mul + local.set $10 + local.get $24 + i32.const 24 + i32.sub + local.set $24 + local.get $10 + i32.reinterpret_f32 + local.set $4 + end + local.get $24 + local.get $4 + i32.const 23 + i32.shr_s + i32.const 127 + i32.sub + i32.add + local.set $24 + local.get $4 + i32.const 8388607 + i32.and + local.set $7 + local.get $7 + i32.const 1065353216 + i32.or + local.set $4 + local.get $7 + i32.const 1885297 + i32.le_s + if + i32.const 0 + local.set $8 + else + local.get $7 + i32.const 6140887 + i32.lt_s + if + i32.const 1 + local.set $8 + else + i32.const 0 + local.set $8 + local.get $24 + i32.const 1 + i32.add + local.set $24 + local.get $4 + i32.const 8388608 + i32.sub + local.set $4 + end + end + local.get $4 + f32.reinterpret_i32 + local.set $10 + f32.const 1.5 + f32.const 1 + local.get $8 + select + local.set $30 + local.get $10 + local.get $30 + f32.sub + local.set $19 + f32.const 1 + local.get $10 + local.get $30 + f32.add + f32.div + local.set $20 + local.get $19 + local.get $20 + f32.mul + local.set $17 + local.get $17 + local.set $26 + local.get $26 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $26 + local.get $4 + i32.const 1 + i32.shr_s + i32.const -4096 + i32.and + i32.const 536870912 + i32.or + local.set $25 + local.get $25 + i32.const 4194304 + i32.add + local.get $8 + i32.const 21 + i32.shl + i32.add + f32.reinterpret_i32 + local.set $28 + local.get $10 + local.get $28 + local.get $30 + f32.sub + f32.sub + local.set $29 + local.get $20 + local.get $19 + local.get $26 + local.get $28 + f32.mul + f32.sub + local.get $26 + local.get $29 + f32.mul + f32.sub + f32.mul + local.set $27 + local.get $17 + local.get $17 + f32.mul + local.set $12 + local.get $12 + local.get $12 + f32.mul + f32.const 0.6000000238418579 + local.get $12 + f32.const 0.4285714328289032 + local.get $12 + f32.const 0.3333333432674408 + local.get $12 + f32.const 0.2727281153202057 + local.get $12 + f32.const 0.23066075146198273 + local.get $12 + f32.const 0.20697501301765442 + f32.mul + f32.add + f32.mul + f32.add + f32.mul + f32.add + f32.mul + f32.add + f32.mul + f32.add + f32.mul + local.set $16 + local.get $16 + local.get $27 + local.get $26 + local.get $17 + f32.add + f32.mul + f32.add + local.set $16 + local.get $26 + local.get $26 + f32.mul + local.set $12 + f32.const 3 + local.get $12 + f32.add + local.get $16 + f32.add + local.set $28 + local.get $28 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $28 + local.get $16 + local.get $28 + f32.const 3 + f32.sub + local.get $12 + f32.sub + f32.sub + local.set $29 + local.get $26 + local.get $28 + f32.mul + local.set $19 + local.get $27 + local.get $28 + f32.mul + local.get $29 + local.get $17 + f32.mul + f32.add + local.set $20 + local.get $19 + local.get $20 + f32.add + local.set $22 + local.get $22 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $22 + local.get $20 + local.get $22 + local.get $19 + f32.sub + f32.sub + local.set $23 + f32.const 0.9619140625 + local.get $22 + f32.mul + local.set $31 + f32.const 1.5632208487659227e-06 + f32.const 0 + local.get $8 + select + local.set $32 + f32.const -1.1736857413779944e-04 + local.get $22 + f32.mul + local.get $23 + f32.const 0.9617967009544373 + f32.mul + f32.add + local.get $32 + f32.add + local.set $33 + local.get $24 + f32.convert_i32_s + local.set $18 + f32.const 0.5849609375 + f32.const 0 + local.get $8 + select + local.set $34 + local.get $31 + local.get $33 + f32.add + local.get $34 + f32.add + local.get $18 + f32.add + local.set $14 + local.get $14 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $14 + local.get $33 + local.get $14 + local.get $18 + f32.sub + local.get $34 + f32.sub + local.get $31 + f32.sub + f32.sub + local.set $15 + end + local.get $1 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -4096 + i32.and + f32.reinterpret_i32 + local.set $35 + local.get $1 + local.get $35 + f32.sub + local.get $14 + f32.mul + local.get $1 + local.get $15 + f32.mul + f32.add + local.set $23 + local.get $35 + local.get $14 + f32.mul + local.set $22 + local.get $23 + local.get $22 + f32.add + local.set $11 + local.get $11 + i32.reinterpret_f32 + local.set $7 + local.get $7 + i32.const 1124073472 + i32.gt_s + if + local.get $13 + f32.const 1000000015047466219876688e6 + f32.mul + f32.const 1000000015047466219876688e6 + f32.mul + return + else + local.get $7 + i32.const 1124073472 + i32.eq + if + local.get $23 + f32.const 4.299566569443414e-08 + f32.add + local.get $11 + local.get $22 + f32.sub + f32.gt + if + local.get $13 + f32.const 1000000015047466219876688e6 + f32.mul + f32.const 1000000015047466219876688e6 + f32.mul + return + end + else + local.get $7 + i32.const 2147483647 + i32.and + i32.const 1125515264 + i32.gt_s + if + local.get $13 + f32.const 1.0000000031710769e-30 + f32.mul + f32.const 1.0000000031710769e-30 + f32.mul + return + else + local.get $7 + i32.const -1021968384 + i32.eq + if + local.get $23 + local.get $11 + local.get $22 + f32.sub + f32.le + if + local.get $13 + f32.const 1.0000000031710769e-30 + f32.mul + f32.const 1.0000000031710769e-30 + f32.mul + return + end + end + end + end + end + local.get $7 + i32.const 2147483647 + i32.and + local.set $36 + local.get $36 + i32.const 23 + i32.shr_s + i32.const 127 + i32.sub + local.set $8 + i32.const 0 + local.set $24 + local.get $36 + i32.const 1056964608 + i32.gt_s + if + local.get $7 + i32.const 8388608 + local.get $8 + i32.const 1 + i32.add + i32.shr_s + i32.add + local.set $24 + local.get $24 + i32.const 2147483647 + i32.and + i32.const 23 + i32.shr_s + i32.const 127 + i32.sub + local.set $8 + local.get $24 + i32.const 8388607 + local.get $8 + i32.shr_s + i32.const -1 + i32.xor + i32.and + f32.reinterpret_i32 + local.set $18 + local.get $24 + i32.const 8388607 + i32.and + i32.const 8388608 + i32.or + i32.const 23 + local.get $8 + i32.sub + i32.shr_s + local.set $24 + local.get $7 + i32.const 0 + i32.lt_s + if + i32.const 0 + local.get $24 + i32.sub + local.set $24 + end + local.get $22 + local.get $18 + f32.sub + local.set $22 + end + local.get $23 + local.get $22 + f32.add + local.set $18 + local.get $18 + i32.reinterpret_f32 + local.set $25 + local.get $25 + i32.const -32768 + i32.and + f32.reinterpret_i32 + local.set $18 + local.get $18 + f32.const 0.693145751953125 + f32.mul + local.set $19 + local.get $23 + local.get $18 + local.get $22 + f32.sub + f32.sub + f32.const 0.6931471824645996 + f32.mul + local.get $18 + f32.const 1.4286065379565116e-06 + f32.mul + f32.add + local.set $20 + local.get $19 + local.get $20 + f32.add + local.set $11 + local.get $20 + local.get $11 + local.get $19 + f32.sub + f32.sub + local.set $21 + local.get $11 + local.get $11 + f32.mul + local.set $18 + local.get $11 + local.get $18 + f32.const 0.1666666716337204 + local.get $18 + f32.const -2.7777778450399637e-03 + local.get $18 + f32.const 6.61375597701408e-05 + local.get $18 + f32.const -1.6533901998627698e-06 + local.get $18 + f32.const 4.138136944220605e-08 + f32.mul + f32.add + f32.mul + f32.add + f32.mul + f32.add + f32.mul + f32.add + f32.mul + f32.sub + local.set $14 + local.get $11 + local.get $14 + f32.mul + local.get $14 + f32.const 2 + f32.sub + f32.div + local.get $21 + local.get $11 + local.get $21 + f32.mul + f32.add + f32.sub + local.set $16 + f32.const 1 + local.get $16 + local.get $11 + f32.sub + f32.sub + local.set $11 + local.get $11 + i32.reinterpret_f32 + local.set $7 + local.get $7 + local.get $24 + i32.const 23 + i32.shl + i32.add + local.set $7 + local.get $7 + i32.const 23 + i32.shr_s + i32.const 0 + i32.le_s + if + local.get $11 + local.get $24 + call $~lib/math/NativeMathf.scalbn + local.set $11 + else + local.get $7 + f32.reinterpret_i32 + local.set $11 + end + local.get $13 + local.get $11 + f32.mul + ) + (func $std/math/test_powf (; 135 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) + local.get $0 + local.get $1 + call $~lib/math/NativeMathf.pow + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + ) + (func $~lib/math/murmurHash3 (; 136 ;) (type $FUNCSIG$jj) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -49064778989728563 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -4265267296055464877 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + ) + (func $~lib/math/splitMix32 (; 137 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.set $0 + local.get $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.set $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + local.get $0 + i32.const 61 + i32.or + i32.mul + i32.add + i32.xor + local.set $0 + local.get $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 138 ;) (type $FUNCSIG$vj) (param $0 i64) + i32.const 1 + global.set $~lib/math/random_seeded + local.get $0 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + local.get $0 + i32.wrap_i64 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + if (result i32) + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state0_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 384 + i32.const 1369 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/math/NativeMath.random (; 139 ;) (type $FUNCSIG$d) (result f64) + (local $0 i64) + (local $1 i64) + (local $2 i64) + global.get $~lib/math/random_seeded + i32.eqz + if + i32.const 424 + i32.const 384 + i32.const 1376 + i32.const 24 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/math/random_state0_64 + local.set $0 + global.get $~lib/math/random_state1_64 + local.set $1 + local.get $1 + global.set $~lib/math/random_state0_64 + local.get $0 + local.get $0 + i64.const 23 + i64.shl + i64.xor + local.set $0 + local.get $0 + local.get $0 + i64.const 17 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.const 26 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + global.set $~lib/math/random_state1_64 + local.get $1 + i64.const 12 + i64.shr_u + i64.const 4607182418800017408 + i64.or + local.set $2 + local.get $2 + f64.reinterpret_i64 + f64.const 1 + f64.sub + ) + (func $~lib/math/NativeMathf.random (; 140 ;) (type $FUNCSIG$f) (result f32) + (local $0 i32) + (local $1 i32) + (local $2 i32) + global.get $~lib/math/random_seeded + i32.eqz + if + i32.const 424 + i32.const 384 + i32.const 2724 + i32.const 24 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/math/random_state0_32 + local.set $0 + global.get $~lib/math/random_state1_32 + local.set $1 + local.get $0 + i32.const -1640531525 + i32.mul + i32.const 5 + i32.rotl + i32.const 5 + i32.mul + local.set $2 + local.get $1 + local.get $0 + i32.xor + local.set $1 + local.get $0 + i32.const 26 + i32.rotl + local.get $1 + i32.xor + local.get $1 + i32.const 9 + i32.shl + i32.xor + global.set $~lib/math/random_state0_32 + local.get $1 + i32.const 13 + i32.rotl + global.set $~lib/math/random_state1_32 + local.get $2 + i32.const 9 + i32.shr_u + i32.const 127 + i32.const 23 + i32.shl + i32.or + f32.reinterpret_i32 + f32.const 1 + f32.sub + ) + (func $std/math/test_round (; 141 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (local $4 f64) + local.get $0 + local.set $4 + local.get $4 + f64.const 0.5 + f64.add + f64.floor + local.get $4 + f64.copysign + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $std/math/test_roundf (; 142 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (local $4 f32) + local.get $0 + local.set $4 + local.get $4 + f32.const 0.5 + f32.add + f32.floor + local.get $4 + f32.copysign + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $std/math/test_sign (; 143 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (local $4 f64) + block $~lib/math/NativeMath.sign|inlined.0 (result f64) + local.get $0 + local.set $4 + local.get $4 + f64.const 0 + f64.gt + if (result f64) + f64.const 1 + else + local.get $4 + f64.const 0 + f64.lt + if (result f64) + f64.const -1 + else + local.get $4 + end + end + br $~lib/math/NativeMath.sign|inlined.0 + end + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/sign + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $std/math/test_signf (; 144 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (local $4 f32) + block $~lib/math/NativeMathf.sign|inlined.0 (result f32) + local.get $0 + local.set $4 + local.get $4 + f32.const 0 + f32.gt + if (result f32) + f32.const 1 + else + local.get $4 + f32.const 0 + f32.lt + if (result f32) + f32.const -1 + else + local.get $4 + end + end + br $~lib/math/NativeMathf.sign|inlined.0 + end + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.rem (; 145 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (local $2 i64) + (local $3 i64) + (local $4 i64) + (local $5 i64) + (local $6 i32) + (local $7 f64) + (local $8 i64) + (local $9 i32) + (local $10 i64) + (local $11 f64) + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $1 + i64.reinterpret_f64 + local.set $3 + local.get $2 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $4 + local.get $3 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $5 + local.get $2 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.set $6 + local.get $3 + i64.const 1 + i64.shl + i64.const 0 + i64.eq + if (result i32) + i32.const 1 + else + local.get $4 + i64.const 2047 + i64.eq + end + if (result i32) + i32.const 1 + else + local.get $1 + call $~lib/number/isNaN + end + if + local.get $0 + local.get $1 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.div + return + end + local.get $2 + i64.const 1 + i64.shl + i64.const 0 + i64.eq + if + local.get $0 + return + end + local.get $2 + local.set $8 + local.get $4 + i64.eqz + if + local.get $4 + local.get $8 + i64.const 12 + i64.shl + i64.clz + i64.sub + local.set $4 + local.get $8 + i64.const 0 + local.get $4 + i64.sub + i64.const 1 + i64.add + i64.shl + local.set $8 + else + local.get $8 + i64.const -1 + i64.const 12 + i64.shr_u + i64.and + local.set $8 + local.get $8 + i64.const 1 + i64.const 52 + i64.shl + i64.or + local.set $8 + end + local.get $5 + i64.eqz + if + local.get $5 + local.get $3 + i64.const 12 + i64.shl + i64.clz + i64.sub + local.set $5 + local.get $3 + i64.const 0 + local.get $5 + i64.sub + i64.const 1 + i64.add + i64.shl + local.set $3 + else + local.get $3 + i64.const -1 + i64.const 12 + i64.shr_u + i64.and + local.set $3 + local.get $3 + i64.const 1 + i64.const 52 + i64.shl + i64.or + local.set $3 + end + i32.const 0 + local.set $9 + block $break|0 + local.get $4 + local.get $5 + i64.lt_s + if + local.get $4 + i64.const 1 + i64.add + local.get $5 + i64.eq + if + br $break|0 + end + local.get $0 + return + end + block $break|1 + loop $continue|1 + local.get $4 + local.get $5 + i64.gt_s + i32.eqz + br_if $break|1 + local.get $8 + local.get $3 + i64.ge_u + if + local.get $8 + local.get $3 + i64.sub + local.set $8 + local.get $9 + i32.const 1 + i32.add + local.set $9 + end + local.get $8 + i64.const 1 + i64.shl + local.set $8 + local.get $9 + i32.const 1 + i32.shl + local.set $9 + local.get $4 + i64.const 1 + i64.sub + local.set $4 + br $continue|1 + end + unreachable + end + local.get $8 + local.get $3 + i64.ge_u + if + local.get $8 + local.get $3 + i64.sub + local.set $8 + local.get $9 + i32.const 1 + i32.add + local.set $9 + end + local.get $8 + i64.const 0 + i64.eq + if + i64.const -60 + local.set $4 + else + local.get $8 + i64.const 11 + i64.shl + i64.clz + local.set $10 + local.get $4 + local.get $10 + i64.sub + local.set $4 + local.get $8 + local.get $10 + i64.shl + local.set $8 + end + br $break|0 + end + local.get $4 + i64.const 0 + i64.gt_s + if + local.get $8 + i64.const 1 + i64.const 52 + i64.shl + i64.sub + local.set $8 + local.get $8 + local.get $4 + i64.const 52 + i64.shl + i64.or + local.set $8 + else + local.get $8 + i64.const 0 + local.get $4 + i64.sub + i64.const 1 + i64.add + i64.shr_u + local.set $8 + end + local.get $8 + f64.reinterpret_i64 + local.set $0 + local.get $1 + f64.abs + local.set $1 + local.get $0 + local.get $0 + f64.add + local.set $11 + local.get $4 + local.get $5 + i64.eq + if (result i32) + i32.const 1 + else + local.get $4 + i64.const 1 + i64.add + local.get $5 + i64.eq + if (result i32) + local.get $11 + local.get $1 + f64.gt + if (result i32) + i32.const 1 + else + local.get $11 + local.get $1 + f64.eq + if (result i32) + local.get $9 + i32.const 1 + i32.and + else + i32.const 0 + end + end + else + i32.const 0 + end + end + if + local.get $0 + local.get $1 + f64.sub + local.set $0 + end + local.get $6 + if (result f64) + local.get $0 + f64.neg + else + local.get $0 + end + ) + (func $std/math/test_rem (; 146 ;) (type $FUNCSIG$iddddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) + local.get $0 + local.get $1 + call $~lib/math/NativeMath.rem + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + ) + (func $~lib/math/NativeMathf.rem (; 147 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 f32) + local.get $0 + i32.reinterpret_f32 + local.set $2 + local.get $1 + i32.reinterpret_f32 + local.set $3 + local.get $2 + i32.const 23 + i32.shr_u + i32.const 255 + i32.and + local.set $4 + local.get $3 + i32.const 23 + i32.shr_u + i32.const 255 + i32.and + local.set $5 + local.get $2 + i32.const 31 + i32.shr_u + local.set $6 + local.get $2 + local.set $7 + local.get $3 + i32.const 1 + i32.shl + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $4 + i32.const 255 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $1 + call $~lib/number/isNaN + end + if + local.get $0 + local.get $1 + f32.mul + local.get $0 + local.get $1 + f32.mul + f32.div + return + end + local.get $2 + i32.const 1 + i32.shl + i32.const 0 + i32.eq + if + local.get $0 + return + end + local.get $4 + i32.eqz + if + local.get $4 + local.get $7 + i32.const 9 + i32.shl + i32.clz + i32.sub + local.set $4 + local.get $7 + i32.const 0 + local.get $4 + i32.sub + i32.const 1 + i32.add + i32.shl + local.set $7 + else + local.get $7 + i32.const -1 + i32.const 9 + i32.shr_u + i32.and + local.set $7 + local.get $7 + i32.const 1 + i32.const 23 + i32.shl + i32.or + local.set $7 + end + local.get $5 + i32.eqz + if + local.get $5 + local.get $3 + i32.const 9 + i32.shl + i32.clz + i32.sub + local.set $5 + local.get $3 + i32.const 0 + local.get $5 + i32.sub + i32.const 1 + i32.add + i32.shl + local.set $3 + else + local.get $3 + i32.const -1 + i32.const 9 + i32.shr_u + i32.and + local.set $3 + local.get $3 + i32.const 1 + i32.const 23 + i32.shl + i32.or + local.set $3 + end + i32.const 0 + local.set $8 + block $break|0 + local.get $4 + local.get $5 + i32.lt_s + if + local.get $4 + i32.const 1 + i32.add + local.get $5 + i32.eq + if + br $break|0 + end + local.get $0 + return + end + block $break|1 + loop $continue|1 + local.get $4 + local.get $5 + i32.gt_s + i32.eqz + br_if $break|1 + local.get $7 + local.get $3 + i32.ge_u + if + local.get $7 + local.get $3 + i32.sub + local.set $7 + local.get $8 + i32.const 1 + i32.add + local.set $8 + end + local.get $7 + i32.const 1 + i32.shl + local.set $7 + local.get $8 + i32.const 1 + i32.shl + local.set $8 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $continue|1 + end + unreachable + end + local.get $7 + local.get $3 + i32.ge_u + if + local.get $7 + local.get $3 + i32.sub + local.set $7 + local.get $8 + i32.const 1 + i32.add + local.set $8 + end + local.get $7 + i32.const 0 + i32.eq + if + i32.const -30 + local.set $4 + else + local.get $7 + i32.const 8 + i32.shl + i32.clz + local.set $9 + local.get $4 + local.get $9 + i32.sub + local.set $4 + local.get $7 + local.get $9 + i32.shl + local.set $7 + end + br $break|0 + end + local.get $4 + i32.const 0 + i32.gt_s + if + local.get $7 + i32.const 1 + i32.const 23 + i32.shl + i32.sub + local.set $7 + local.get $7 + local.get $4 + i32.const 23 + i32.shl + i32.or + local.set $7 + else + local.get $7 + i32.const 0 + local.get $4 + i32.sub + i32.const 1 + i32.add + i32.shr_u + local.set $7 + end + local.get $7 + f32.reinterpret_i32 + local.set $0 + local.get $1 + f32.abs + local.set $1 + local.get $0 + local.get $0 + f32.add + local.set $10 + local.get $4 + local.get $5 + i32.eq + if (result i32) + i32.const 1 + else + local.get $4 + i32.const 1 + i32.add + local.get $5 + i32.eq + if (result i32) + local.get $10 + local.get $1 + f32.gt + if (result i32) + i32.const 1 + else + local.get $10 + local.get $1 + f32.eq + if (result i32) + local.get $8 + i32.const 1 + i32.and + else + i32.const 0 + end + end + else + i32.const 0 + end + end + if + local.get $0 + local.get $1 + f32.sub + local.set $0 + end + local.get $6 + if (result f32) + local.get $0 + f32.neg + else + local.get $0 + end + ) + (func $std/math/test_remf (; 148 ;) (type $FUNCSIG$iffffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) + local.get $0 + local.get $1 + call $~lib/math/NativeMathf.rem + local.get $2 + local.get $3 + local.get $4 + call $std/math/check + ) + (func $~lib/math/NativeMath.sin (; 149 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 i64) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 f64) + (local $17 i32) + (local $18 f64) + (local $19 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + local.get $2 + i32.const 31 + i32.shr_u + local.set $3 + local.get $2 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1072243195 + i32.le_u + if + local.get $2 + i32.const 1045430272 + i32.lt_u + if + local.get $0 + return + end + block $~lib/math/sin_kern|inlined.1 (result f64) + local.get $0 + local.set $6 + f64.const 0 + local.set $5 + i32.const 0 + local.set $4 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $8 + f64.const 0.00833333333332249 + local.get $7 + f64.const -1.984126982985795e-04 + local.get $7 + f64.const 2.7557313707070068e-06 + f64.mul + f64.add + f64.mul + f64.add + local.get $7 + local.get $8 + f64.mul + f64.const -2.5050760253406863e-08 + local.get $7 + f64.const 1.58969099521155e-10 + f64.mul + f64.add + f64.mul + f64.add + local.set $9 + local.get $7 + local.get $6 + f64.mul + local.set $10 + local.get $4 + i32.eqz + if + local.get $6 + local.get $10 + f64.const -0.16666666666666632 + local.get $7 + local.get $9 + f64.mul + f64.add + f64.mul + f64.add + br $~lib/math/sin_kern|inlined.1 + else + local.get $6 + local.get $7 + f64.const 0.5 + local.get $5 + f64.mul + local.get $10 + local.get $9 + f64.mul + f64.sub + f64.mul + local.get $5 + f64.sub + local.get $10 + f64.const -0.16666666666666632 + f64.mul + f64.sub + f64.sub + br $~lib/math/sin_kern|inlined.1 + end + unreachable + end + return + end + local.get $2 + i32.const 2146435072 + i32.ge_u + if + local.get $0 + local.get $0 + f64.sub + return + end + block $~lib/math/rempio2|inlined.1 (result i32) + local.get $0 + local.set $5 + local.get $1 + local.set $11 + local.get $3 + local.set $4 + local.get $11 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 2147483647 + i32.and + local.set $12 + local.get $12 + i32.const 1073928572 + i32.lt_u + if + i32.const 1 + local.set $13 + local.get $4 + i32.eqz + if + local.get $5 + f64.const 1.5707963267341256 + f64.sub + local.set $10 + local.get $12 + i32.const 1073291771 + i32.ne + if + local.get $10 + f64.const 6.077100506506192e-11 + f64.sub + local.set $9 + local.get $10 + local.get $9 + f64.sub + f64.const 6.077100506506192e-11 + f64.sub + local.set $8 + else + local.get $10 + f64.const 6.077100506303966e-11 + f64.sub + local.set $10 + local.get $10 + f64.const 2.0222662487959506e-21 + f64.sub + local.set $9 + local.get $10 + local.get $9 + f64.sub + f64.const 2.0222662487959506e-21 + f64.sub + local.set $8 + end + else + local.get $5 + f64.const 1.5707963267341256 + f64.add + local.set $10 + local.get $12 + i32.const 1073291771 + i32.ne + if + local.get $10 + f64.const 6.077100506506192e-11 + f64.add + local.set $9 + local.get $10 + local.get $9 + f64.sub + f64.const 6.077100506506192e-11 + f64.add + local.set $8 + else + local.get $10 + f64.const 6.077100506303966e-11 + f64.add + local.set $10 + local.get $10 + f64.const 2.0222662487959506e-21 + f64.add + local.set $9 + local.get $10 + local.get $9 + f64.sub + f64.const 2.0222662487959506e-21 + f64.add + local.set $8 + end + i32.const -1 + local.set $13 + end + local.get $9 + global.set $~lib/math/rempio2_y0 + local.get $8 + global.set $~lib/math/rempio2_y1 + local.get $13 + br $~lib/math/rempio2|inlined.1 + end + local.get $12 + i32.const 1094263291 + i32.lt_u + if + local.get $5 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $8 + local.get $5 + local.get $8 + f64.const 1.5707963267341256 + f64.mul + f64.sub + local.set $9 + local.get $8 + f64.const 6.077100506506192e-11 + f64.mul + local.set $10 + local.get $12 + i32.const 20 + i32.shr_u + local.set $13 + local.get $9 + local.get $10 + f64.sub + local.set $7 + local.get $7 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $14 + local.get $13 + local.get $14 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $15 + local.get $15 + i32.const 16 + i32.gt_u + if + local.get $9 + local.set $6 + local.get $8 + f64.const 6.077100506303966e-11 + f64.mul + local.set $10 + local.get $6 + local.get $10 + f64.sub + local.set $9 + local.get $8 + f64.const 2.0222662487959506e-21 + f64.mul + local.get $6 + local.get $9 + f64.sub + local.get $10 + f64.sub + f64.sub + local.set $10 + local.get $9 + local.get $10 + f64.sub + local.set $7 + local.get $7 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $14 + local.get $13 + local.get $14 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $15 + local.get $15 + i32.const 49 + i32.gt_u + if + local.get $9 + local.set $16 + local.get $8 + f64.const 2.0222662487111665e-21 + f64.mul + local.set $10 + local.get $16 + local.get $10 + f64.sub + local.set $9 + local.get $8 + f64.const 8.4784276603689e-32 + f64.mul + local.get $16 + local.get $9 + f64.sub + local.get $10 + f64.sub + f64.sub + local.set $10 + local.get $9 + local.get $10 + f64.sub + local.set $7 + end + end + local.get $9 + local.get $7 + f64.sub + local.get $10 + f64.sub + local.set $6 + local.get $7 + global.set $~lib/math/rempio2_y0 + local.get $6 + global.set $~lib/math/rempio2_y1 + local.get $8 + i32.trunc_f64_s + br $~lib/math/rempio2|inlined.1 + end + local.get $5 + local.get $11 + call $~lib/math/pio2_large_quot + local.set $15 + i32.const 0 + local.get $15 + i32.sub + local.get $15 + local.get $4 + select + end + local.set $17 + global.get $~lib/math/rempio2_y0 + local.set $18 + global.get $~lib/math/rempio2_y1 + local.set $19 + local.get $17 + i32.const 1 + i32.and + if (result f64) + local.get $18 + local.set $8 + local.get $19 + local.set $16 + local.get $8 + local.get $8 + f64.mul + local.set $5 + local.get $5 + local.get $5 + f64.mul + local.set $6 + local.get $5 + f64.const 0.0416666666666666 + local.get $5 + f64.const -0.001388888888887411 + local.get $5 + f64.const 2.480158728947673e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.get $6 + local.get $6 + f64.mul + f64.const -2.7557314351390663e-07 + local.get $5 + f64.const 2.087572321298175e-09 + local.get $5 + f64.const -1.1359647557788195e-11 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $7 + f64.const 0.5 + local.get $5 + f64.mul + local.set $10 + f64.const 1 + local.get $10 + f64.sub + local.set $6 + local.get $6 + f64.const 1 + local.get $6 + f64.sub + local.get $10 + f64.sub + local.get $5 + local.get $7 + f64.mul + local.get $8 + local.get $16 + f64.mul + f64.sub + f64.add + f64.add + else + block $~lib/math/sin_kern|inlined.2 (result f64) + local.get $18 + local.set $16 + local.get $19 + local.set $9 + i32.const 1 + local.set $13 + local.get $16 + local.get $16 + f64.mul + local.set $10 + local.get $10 + local.get $10 + f64.mul + local.set $7 + f64.const 0.00833333333332249 + local.get $10 + f64.const -1.984126982985795e-04 + local.get $10 + f64.const 2.7557313707070068e-06 + f64.mul + f64.add + f64.mul + f64.add + local.get $10 + local.get $7 + f64.mul + f64.const -2.5050760253406863e-08 + local.get $10 + f64.const 1.58969099521155e-10 + f64.mul + f64.add + f64.mul + f64.add + local.set $6 + local.get $10 + local.get $16 + f64.mul + local.set $5 + local.get $13 + i32.eqz + if + local.get $16 + local.get $5 + f64.const -0.16666666666666632 + local.get $10 + local.get $6 + f64.mul + f64.add + f64.mul + f64.add + br $~lib/math/sin_kern|inlined.2 + else + local.get $16 + local.get $10 + f64.const 0.5 + local.get $9 + f64.mul + local.get $5 + local.get $6 + f64.mul + f64.sub + f64.mul + local.get $9 + f64.sub + local.get $5 + f64.const -0.16666666666666632 + f64.mul + f64.sub + f64.sub + br $~lib/math/sin_kern|inlined.2 + end + unreachable + end + end + local.set $0 + local.get $17 + i32.const 2 + i32.and + if (result f64) + local.get $0 + f64.neg + else + local.get $0 + end + ) + (func $std/math/test_sin (; 150 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.sin + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/sin + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.sin (; 151 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 f64) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 i32) + (local $9 i32) + (local $10 f32) + (local $11 i32) + (local $12 f32) + (local $13 i32) + (local $14 i32) + (local $15 i64) + (local $16 i32) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i32) + (local $25 i32) + (local $26 f64) + (local $27 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 31 + i32.shr_u + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1061752794 + i32.le_u + if + local.get $1 + i32.const 964689920 + i32.lt_u + if + local.get $0 + return + end + local.get $0 + f64.promote_f32 + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const -1.9839334836096632e-04 + local.get $4 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $6 + local.get $4 + local.get $3 + f64.mul + local.set $7 + local.get $3 + local.get $7 + f64.const -0.16666666641626524 + local.get $4 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $7 + local.get $5 + f64.mul + local.get $6 + f64.mul + f64.add + f32.demote_f64 + return + end + local.get $1 + i32.const 1081824209 + i32.le_u + if + local.get $1 + i32.const 1075235811 + i32.le_u + if + local.get $2 + if (result f32) + local.get $0 + f64.promote_f32 + f64.const 1.5707963267948966 + f64.add + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + f64.const -0.001388676377460993 + local.get $7 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $5 + f32.const 1 + f64.promote_f32 + local.get $7 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $6 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $6 + local.get $7 + f64.mul + local.get $5 + f64.mul + f64.add + f32.demote_f64 + f32.neg + else + local.get $0 + f64.promote_f32 + f64.const 1.5707963267948966 + f64.sub + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + local.get $5 + local.get $5 + f64.mul + local.set $6 + f64.const -0.001388676377460993 + local.get $5 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $7 + f32.const 1 + f64.promote_f32 + local.get $5 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $6 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $6 + local.get $5 + f64.mul + local.get $7 + f64.mul + f64.add + f32.demote_f64 + end + return + end + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 3.141592653589793 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 3.141592653589793 + f64.sub + end + f64.neg + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + f64.const -1.9839334836096632e-04 + local.get $7 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $5 + local.get $7 + local.get $3 + f64.mul + local.set $4 + local.get $3 + local.get $4 + f64.const -0.16666666641626524 + local.get $7 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $4 + local.get $6 + f64.mul + local.get $5 + f64.mul + f64.add + f32.demote_f64 + return + end + local.get $1 + i32.const 1088565717 + i32.le_u + if + local.get $1 + i32.const 1085271519 + i32.le_u + if + local.get $2 + if (result f32) + local.get $0 + f64.promote_f32 + f64.const 4.71238898038469 + f64.add + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const -0.001388676377460993 + local.get $4 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $6 + f32.const 1 + f64.promote_f32 + local.get $4 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $5 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $5 + local.get $4 + f64.mul + local.get $6 + f64.mul + f64.add + f32.demote_f64 + else + local.get $0 + f64.promote_f32 + f64.const 4.71238898038469 + f64.sub + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + local.get $6 + local.get $6 + f64.mul + local.set $5 + f64.const -0.001388676377460993 + local.get $6 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $4 + f32.const 1 + f64.promote_f32 + local.get $6 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $5 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $5 + local.get $6 + f64.mul + local.get $4 + f64.mul + f64.add + f32.demote_f64 + f32.neg + end + return + end + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 6.283185307179586 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 6.283185307179586 + f64.sub + end + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const -1.9839334836096632e-04 + local.get $4 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $6 + local.get $4 + local.get $3 + f64.mul + local.set $7 + local.get $3 + local.get $7 + f64.const -0.16666666641626524 + local.get $4 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $7 + local.get $5 + f64.mul + local.get $6 + f64.mul + f64.add + f32.demote_f64 + return + end + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + local.get $0 + f32.sub + return + end + block $~lib/math/rempio2f|inlined.1 (result i32) + local.get $0 + local.set $10 + local.get $1 + local.set $9 + local.get $2 + local.set $8 + local.get $9 + i32.const 1305022427 + i32.lt_u + if + local.get $10 + f64.promote_f32 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $7 + local.get $10 + f64.promote_f32 + local.get $7 + f64.const 1.5707963109016418 + f64.mul + f64.sub + local.get $7 + f64.const 1.5893254773528196e-08 + f64.mul + f64.sub + global.set $~lib/math/rempio2f_y + local.get $7 + i32.trunc_f64_s + br $~lib/math/rempio2f|inlined.1 + end + local.get $10 + local.set $12 + local.get $9 + local.set $11 + i32.const 352 + i32.load offset=4 + local.set $13 + local.get $11 + i32.const 23 + i32.shr_s + i32.const 152 + i32.sub + local.set $14 + local.get $14 + i32.const 63 + i32.and + i64.extend_i32_s + local.set $15 + local.get $13 + local.get $14 + i32.const 6 + i32.shr_s + i32.const 3 + i32.shl + i32.add + local.set $16 + local.get $16 + i64.load + local.set $17 + local.get $16 + i64.load offset=8 + local.set $18 + local.get $15 + i64.const 32 + i64.gt_u + if + local.get $16 + i64.load offset=16 + local.set $20 + local.get $20 + i64.const 96 + local.get $15 + i64.sub + i64.shr_u + local.set $19 + local.get $19 + local.get $18 + local.get $15 + i64.const 32 + i64.sub + i64.shl + i64.or + local.set $19 + else + local.get $18 + i64.const 32 + local.get $15 + i64.sub + i64.shr_u + local.set $19 + end + local.get $18 + i64.const 64 + local.get $15 + i64.sub + i64.shr_u + local.get $17 + local.get $15 + i64.shl + i64.or + local.set $20 + local.get $11 + i32.const 8388607 + i32.and + i32.const 8388608 + i32.or + i64.extend_i32_s + local.set $21 + local.get $21 + local.get $20 + i64.mul + local.get $21 + local.get $19 + i64.mul + i64.const 32 + i64.shr_u + i64.add + local.set $22 + local.get $22 + i64.const 2 + i64.shl + local.set $23 + local.get $22 + i64.const 62 + i64.shr_u + local.get $23 + i64.const 63 + i64.shr_u + i64.add + i32.wrap_i64 + local.set $24 + f64.const 8.515303950216386e-20 + local.get $12 + f64.promote_f32 + f64.copysign + local.get $23 + f64.convert_i64_s + f64.mul + global.set $~lib/math/rempio2f_y + local.get $24 + local.set $24 + i32.const 0 + local.get $24 + i32.sub + local.get $24 + local.get $8 + select + end + local.set $25 + global.get $~lib/math/rempio2f_y + local.set $26 + local.get $25 + i32.const 1 + i32.and + if (result f32) + local.get $26 + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $6 + f64.const -0.001388676377460993 + local.get $7 + f64.const 2.439044879627741e-05 + f64.mul + f64.add + local.set $5 + f32.const 1 + f64.promote_f32 + local.get $7 + f64.const -0.499999997251031 + f64.mul + f64.add + local.get $6 + f64.const 0.04166662332373906 + f64.mul + f64.add + local.get $6 + local.get $7 + f64.mul + local.get $5 + f64.mul + f64.add + f32.demote_f64 + else + local.get $26 + local.set $4 + local.get $4 + local.get $4 + f64.mul + local.set $5 + local.get $5 + local.get $5 + f64.mul + local.set $6 + f64.const -1.9839334836096632e-04 + local.get $5 + f64.const 2.718311493989822e-06 + f64.mul + f64.add + local.set $7 + local.get $5 + local.get $4 + f64.mul + local.set $3 + local.get $4 + local.get $3 + f64.const -0.16666666641626524 + local.get $5 + f64.const 0.008333329385889463 + f64.mul + f64.add + f64.mul + f64.add + local.get $3 + local.get $6 + f64.mul + local.get $7 + f64.mul + f64.add + f32.demote_f64 + end + local.set $27 + local.get $25 + i32.const 2 + i32.and + if (result f32) + local.get $27 + f32.neg + else + local.get $27 + end + ) + (func $std/math/test_sinf (; 152 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.sin + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.sinh (; 153 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 f64) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + local.get $0 + i64.reinterpret_f64 + i64.const 9223372036854775807 + i64.and + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $2 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $3 + f64.const 0.5 + local.get $0 + f64.copysign + local.set $5 + local.get $3 + i32.const 1082535490 + i32.lt_u + if + local.get $2 + call $~lib/math/NativeMath.expm1 + local.set $4 + local.get $3 + i32.const 1072693248 + i32.lt_u + if + local.get $3 + i32.const 1045430272 + i32.lt_u + if + local.get $0 + return + end + local.get $5 + f64.const 2 + local.get $4 + f64.mul + local.get $4 + local.get $4 + f64.mul + local.get $4 + f64.const 1 + f64.add + f64.div + f64.sub + f64.mul + return + end + local.get $5 + local.get $4 + local.get $4 + local.get $4 + f64.const 1 + f64.add + f64.div + f64.add + f64.mul + return + end + f64.const 2 + local.get $5 + f64.mul + local.get $2 + local.set $6 + i32.const 1023 + i32.const 2043 + i32.const 2 + i32.div_u + i32.add + i32.const 20 + i32.shl + i64.extend_i32_u + i64.const 32 + i64.shl + f64.reinterpret_i64 + local.set $7 + local.get $6 + f64.const 1416.0996898839683 + f64.sub + call $~lib/math/NativeMath.exp + local.get $7 + f64.mul + local.get $7 + f64.mul + f64.mul + local.set $4 + local.get $4 + ) + (func $std/math/test_sinh (; 154 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.sinh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/sinh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.sinh (; 155 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + (local $3 f32) + (local $4 f32) + (local $5 f32) + (local $6 f32) + local.get $0 + i32.reinterpret_f32 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $2 + f32.const 0.5 + local.get $0 + f32.copysign + local.set $4 + local.get $1 + i32.const 1118925335 + i32.lt_u + if + local.get $2 + call $~lib/math/NativeMathf.expm1 + local.set $3 + local.get $1 + i32.const 1065353216 + i32.lt_u + if + local.get $1 + i32.const 964689920 + i32.lt_u + if + local.get $0 + return + end + local.get $4 + f32.const 2 + local.get $3 + f32.mul + local.get $3 + local.get $3 + f32.mul + local.get $3 + f32.const 1 + f32.add + f32.div + f32.sub + f32.mul + return + end + local.get $4 + local.get $3 + local.get $3 + local.get $3 + f32.const 1 + f32.add + f32.div + f32.add + f32.mul + return + end + f32.const 2 + local.get $4 + f32.mul + local.get $2 + local.set $5 + i32.const 127 + i32.const 235 + i32.const 1 + i32.shr_u + i32.add + i32.const 23 + i32.shl + f32.reinterpret_i32 + local.set $6 + local.get $5 + f32.const 162.88958740234375 + f32.sub + call $~lib/math/NativeMathf.exp + local.get $6 + f32.mul + local.get $6 + f32.mul + f32.mul + local.set $3 + local.get $3 + ) + (func $std/math/test_sinhf (; 156 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.sinh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $std/math/test_sqrt (; 157 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (local $4 f64) + local.get $0 + local.set $4 + local.get $4 + f64.sqrt + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/sqrt + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $std/math/test_sqrtf (; 158 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (local $4 f32) + local.get $0 + local.set $4 + local.get $4 + f32.sqrt + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/tan_kern (; 159 ;) (type $FUNCSIG$dddi) (param $0 f64) (param $1 f64) (param $2 i32) (result f64) + (local $3 f64) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 f64) + (local $12 f64) + local.get $0 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $8 + local.get $8 + i32.const 2147483647 + i32.and + local.set $9 + local.get $9 + i32.const 1072010280 + i32.ge_s + local.set $10 + local.get $10 + if + local.get $8 + i32.const 0 + i32.lt_s + if + local.get $0 + f64.neg + local.set $0 + local.get $1 + f64.neg + local.set $1 + end + f64.const 0.7853981633974483 + local.get $0 + f64.sub + local.set $3 + f64.const 3.061616997868383e-17 + local.get $1 + f64.sub + local.set $6 + local.get $3 + local.get $6 + f64.add + local.set $0 + f64.const 0 + local.set $1 + end + local.get $0 + local.get $0 + f64.mul + local.set $3 + local.get $3 + local.get $3 + f64.mul + local.set $6 + f64.const 0.13333333333320124 + local.get $6 + f64.const 0.021869488294859542 + local.get $6 + f64.const 3.5920791075913124e-03 + local.get $6 + f64.const 5.880412408202641e-04 + local.get $6 + f64.const 7.817944429395571e-05 + local.get $6 + f64.const -1.8558637485527546e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $4 + local.get $3 + f64.const 0.05396825397622605 + local.get $6 + f64.const 0.0088632398235993 + local.get $6 + f64.const 1.4562094543252903e-03 + local.get $6 + f64.const 2.464631348184699e-04 + local.get $6 + f64.const 7.140724913826082e-05 + local.get $6 + f64.const 2.590730518636337e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.set $5 + local.get $3 + local.get $0 + f64.mul + local.set $7 + local.get $1 + local.get $3 + local.get $7 + local.get $4 + local.get $5 + f64.add + f64.mul + local.get $1 + f64.add + f64.mul + f64.add + local.set $4 + local.get $4 + f64.const 0.3333333333333341 + local.get $7 + f64.mul + f64.add + local.set $4 + local.get $0 + local.get $4 + f64.add + local.set $6 + local.get $10 + if + local.get $2 + f64.convert_i32_s + local.set $5 + f64.const 1 + local.get $8 + i32.const 30 + i32.shr_s + i32.const 2 + i32.and + f64.convert_i32_s + f64.sub + local.get $5 + f64.const 2 + local.get $0 + local.get $6 + local.get $6 + f64.mul + local.get $6 + local.get $5 + f64.add + f64.div + local.get $4 + f64.sub + f64.sub + f64.mul + f64.sub + f64.mul + return + end + local.get $2 + i32.const 1 + i32.eq + if + local.get $6 + return + end + local.get $6 + local.set $3 + local.get $3 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $3 + local.get $4 + local.get $3 + local.get $0 + f64.sub + f64.sub + local.set $5 + f64.const 1 + f64.neg + local.get $6 + f64.div + local.tee $11 + local.set $12 + local.get $12 + i64.reinterpret_f64 + i64.const -4294967296 + i64.and + f64.reinterpret_i64 + local.set $12 + f64.const 1 + local.get $12 + local.get $3 + f64.mul + f64.add + local.set $7 + local.get $12 + local.get $11 + local.get $7 + local.get $12 + local.get $5 + f64.mul + f64.add + f64.mul + f64.add + ) + (func $~lib/math/NativeMath.tan (; 160 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i64) + (local $6 f64) + (local $7 i32) + (local $8 i32) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 i32) + (local $14 i32) + (local $15 f64) + (local $16 f64) + (local $17 i32) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + local.get $2 + i32.const 31 + i32.shr_u + local.set $3 + local.get $2 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1072243195 + i32.le_s + if + local.get $2 + i32.const 1044381696 + i32.lt_s + if + local.get $0 + return + end + local.get $0 + f64.const 0 + i32.const 1 + call $~lib/math/tan_kern + return + end + local.get $2 + i32.const 2146435072 + i32.ge_s + if + local.get $0 + local.get $0 + f64.sub + return + end + block $~lib/math/rempio2|inlined.2 (result i32) + local.get $0 + local.set $6 + local.get $1 + local.set $5 + local.get $3 + local.set $4 + local.get $5 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 2147483647 + i32.and + local.set $7 + local.get $7 + i32.const 1073928572 + i32.lt_u + if + i32.const 1 + local.set $8 + local.get $4 + i32.eqz + if + local.get $6 + f64.const 1.5707963267341256 + f64.sub + local.set $9 + local.get $7 + i32.const 1073291771 + i32.ne + if + local.get $9 + f64.const 6.077100506506192e-11 + f64.sub + local.set $10 + local.get $9 + local.get $10 + f64.sub + f64.const 6.077100506506192e-11 + f64.sub + local.set $11 + else + local.get $9 + f64.const 6.077100506303966e-11 + f64.sub + local.set $9 + local.get $9 + f64.const 2.0222662487959506e-21 + f64.sub + local.set $10 + local.get $9 + local.get $10 + f64.sub + f64.const 2.0222662487959506e-21 + f64.sub + local.set $11 + end + else + local.get $6 + f64.const 1.5707963267341256 + f64.add + local.set $9 + local.get $7 + i32.const 1073291771 + i32.ne + if + local.get $9 + f64.const 6.077100506506192e-11 + f64.add + local.set $10 + local.get $9 + local.get $10 + f64.sub + f64.const 6.077100506506192e-11 + f64.add + local.set $11 + else + local.get $9 + f64.const 6.077100506303966e-11 + f64.add + local.set $9 + local.get $9 + f64.const 2.0222662487959506e-21 + f64.add + local.set $10 + local.get $9 + local.get $10 + f64.sub + f64.const 2.0222662487959506e-21 + f64.add + local.set $11 + end + i32.const -1 + local.set $8 + end + local.get $10 + global.set $~lib/math/rempio2_y0 + local.get $11 + global.set $~lib/math/rempio2_y1 + local.get $8 + br $~lib/math/rempio2|inlined.2 + end + local.get $7 + i32.const 1094263291 + i32.lt_u + if + local.get $6 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $11 + local.get $6 + local.get $11 + f64.const 1.5707963267341256 + f64.mul + f64.sub + local.set $10 + local.get $11 + f64.const 6.077100506506192e-11 + f64.mul + local.set $9 + local.get $7 + i32.const 20 + i32.shr_u + local.set $8 + local.get $10 + local.get $9 + f64.sub + local.set $12 + local.get $12 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $13 + local.get $8 + local.get $13 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $14 + local.get $14 + i32.const 16 + i32.gt_u + if + local.get $10 + local.set $15 + local.get $11 + f64.const 6.077100506303966e-11 + f64.mul + local.set $9 + local.get $15 + local.get $9 + f64.sub + local.set $10 + local.get $11 + f64.const 2.0222662487959506e-21 + f64.mul + local.get $15 + local.get $10 + f64.sub + local.get $9 + f64.sub + f64.sub + local.set $9 + local.get $10 + local.get $9 + f64.sub + local.set $12 + local.get $12 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $13 + local.get $8 + local.get $13 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $14 + local.get $14 + i32.const 49 + i32.gt_u + if + local.get $10 + local.set $16 + local.get $11 + f64.const 2.0222662487111665e-21 + f64.mul + local.set $9 + local.get $16 + local.get $9 + f64.sub + local.set $10 + local.get $11 + f64.const 8.4784276603689e-32 + f64.mul + local.get $16 + local.get $10 + f64.sub + local.get $9 + f64.sub + f64.sub + local.set $9 + local.get $10 + local.get $9 + f64.sub + local.set $12 + end + end + local.get $10 + local.get $12 + f64.sub + local.get $9 + f64.sub + local.set $15 + local.get $12 + global.set $~lib/math/rempio2_y0 + local.get $15 + global.set $~lib/math/rempio2_y1 + local.get $11 + i32.trunc_f64_s + br $~lib/math/rempio2|inlined.2 + end + local.get $6 + local.get $5 + call $~lib/math/pio2_large_quot + local.set $14 + i32.const 0 + local.get $14 + i32.sub + local.get $14 + local.get $4 + select + end + local.set $17 + global.get $~lib/math/rempio2_y0 + global.get $~lib/math/rempio2_y1 + i32.const 1 + local.get $17 + i32.const 1 + i32.and + i32.const 1 + i32.shl + i32.sub + call $~lib/math/tan_kern + ) + (func $std/math/test_tan (; 161 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.tan + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/tan + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.tan (; 162 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 i32) + (local $12 f32) + (local $13 i32) + (local $14 f32) + (local $15 i32) + (local $16 i32) + (local $17 i64) + (local $18 i32) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i64) + (local $25 i64) + (local $26 i32) + (local $27 i32) + (local $28 f64) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 31 + i32.shr_u + local.set $2 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + i32.const 1061752794 + i32.le_u + if + local.get $1 + i32.const 964689920 + i32.lt_u + if + local.get $0 + return + end + local.get $0 + f64.promote_f32 + local.set $4 + i32.const 0 + local.set $3 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const 0.002974357433599673 + local.get $5 + f64.const 0.009465647849436732 + f64.mul + f64.add + local.set $6 + f64.const 0.05338123784456704 + local.get $5 + f64.const 0.024528318116654728 + f64.mul + f64.add + local.set $7 + local.get $5 + local.get $5 + f64.mul + local.set $8 + local.get $5 + local.get $4 + f64.mul + local.set $9 + f64.const 0.3333313950307914 + local.get $5 + f64.const 0.13339200271297674 + f64.mul + f64.add + local.set $10 + local.get $4 + local.get $9 + local.get $10 + f64.mul + f64.add + local.get $9 + local.get $8 + f64.mul + local.get $7 + local.get $8 + local.get $6 + f64.mul + f64.add + f64.mul + f64.add + local.set $6 + local.get $3 + if (result f64) + f32.const -1 + f64.promote_f32 + local.get $6 + f64.div + else + local.get $6 + end + f32.demote_f64 + return + end + local.get $1 + i32.const 1081824209 + i32.le_u + if + local.get $1 + i32.const 1075235811 + i32.le_u + if + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 1.5707963267948966 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 1.5707963267948966 + f64.sub + end + local.set $4 + i32.const 1 + local.set $3 + local.get $4 + local.get $4 + f64.mul + local.set $10 + f64.const 0.002974357433599673 + local.get $10 + f64.const 0.009465647849436732 + f64.mul + f64.add + local.set $9 + f64.const 0.05338123784456704 + local.get $10 + f64.const 0.024528318116654728 + f64.mul + f64.add + local.set $8 + local.get $10 + local.get $10 + f64.mul + local.set $7 + local.get $10 + local.get $4 + f64.mul + local.set $6 + f64.const 0.3333313950307914 + local.get $10 + f64.const 0.13339200271297674 + f64.mul + f64.add + local.set $5 + local.get $4 + local.get $6 + local.get $5 + f64.mul + f64.add + local.get $6 + local.get $7 + f64.mul + local.get $8 + local.get $7 + local.get $9 + f64.mul + f64.add + f64.mul + f64.add + local.set $9 + local.get $3 + if (result f64) + f32.const -1 + f64.promote_f32 + local.get $9 + f64.div + else + local.get $9 + end + f32.demote_f64 + return + else + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 3.141592653589793 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 3.141592653589793 + f64.sub + end + local.set $4 + i32.const 0 + local.set $3 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const 0.002974357433599673 + local.get $5 + f64.const 0.009465647849436732 + f64.mul + f64.add + local.set $6 + f64.const 0.05338123784456704 + local.get $5 + f64.const 0.024528318116654728 + f64.mul + f64.add + local.set $7 + local.get $5 + local.get $5 + f64.mul + local.set $8 + local.get $5 + local.get $4 + f64.mul + local.set $9 + f64.const 0.3333313950307914 + local.get $5 + f64.const 0.13339200271297674 + f64.mul + f64.add + local.set $10 + local.get $4 + local.get $9 + local.get $10 + f64.mul + f64.add + local.get $9 + local.get $8 + f64.mul + local.get $7 + local.get $8 + local.get $6 + f64.mul + f64.add + f64.mul + f64.add + local.set $6 + local.get $3 + if (result f64) + f32.const -1 + f64.promote_f32 + local.get $6 + f64.div + else + local.get $6 + end + f32.demote_f64 + return + end + unreachable + end + local.get $1 + i32.const 1088565717 + i32.le_u + if + local.get $1 + i32.const 1085271519 + i32.le_u + if + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 4.71238898038469 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 4.71238898038469 + f64.sub + end + local.set $4 + i32.const 1 + local.set $3 + local.get $4 + local.get $4 + f64.mul + local.set $10 + f64.const 0.002974357433599673 + local.get $10 + f64.const 0.009465647849436732 + f64.mul + f64.add + local.set $9 + f64.const 0.05338123784456704 + local.get $10 + f64.const 0.024528318116654728 + f64.mul + f64.add + local.set $8 + local.get $10 + local.get $10 + f64.mul + local.set $7 + local.get $10 + local.get $4 + f64.mul + local.set $6 + f64.const 0.3333313950307914 + local.get $10 + f64.const 0.13339200271297674 + f64.mul + f64.add + local.set $5 + local.get $4 + local.get $6 + local.get $5 + f64.mul + f64.add + local.get $6 + local.get $7 + f64.mul + local.get $8 + local.get $7 + local.get $9 + f64.mul + f64.add + f64.mul + f64.add + local.set $9 + local.get $3 + if (result f64) + f32.const -1 + f64.promote_f32 + local.get $9 + f64.div + else + local.get $9 + end + f32.demote_f64 + return + else + local.get $2 + if (result f64) + local.get $0 + f64.promote_f32 + f64.const 6.283185307179586 + f64.add + else + local.get $0 + f64.promote_f32 + f64.const 6.283185307179586 + f64.sub + end + local.set $4 + i32.const 0 + local.set $3 + local.get $4 + local.get $4 + f64.mul + local.set $5 + f64.const 0.002974357433599673 + local.get $5 + f64.const 0.009465647849436732 + f64.mul + f64.add + local.set $6 + f64.const 0.05338123784456704 + local.get $5 + f64.const 0.024528318116654728 + f64.mul + f64.add + local.set $7 + local.get $5 + local.get $5 + f64.mul + local.set $8 + local.get $5 + local.get $4 + f64.mul + local.set $9 + f64.const 0.3333313950307914 + local.get $5 + f64.const 0.13339200271297674 + f64.mul + f64.add + local.set $10 + local.get $4 + local.get $9 + local.get $10 + f64.mul + f64.add + local.get $9 + local.get $8 + f64.mul + local.get $7 + local.get $8 + local.get $6 + f64.mul + f64.add + f64.mul + f64.add + local.set $6 + local.get $3 + if (result f64) + f32.const -1 + f64.promote_f32 + local.get $6 + f64.div + else + local.get $6 + end + f32.demote_f64 + return + end + unreachable + end + local.get $1 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + local.get $0 + f32.sub + return + end + block $~lib/math/rempio2f|inlined.2 (result i32) + local.get $0 + local.set $12 + local.get $1 + local.set $11 + local.get $2 + local.set $3 + local.get $11 + i32.const 1305022427 + i32.lt_u + if + local.get $12 + f64.promote_f32 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $10 + local.get $12 + f64.promote_f32 + local.get $10 + f64.const 1.5707963109016418 + f64.mul + f64.sub + local.get $10 + f64.const 1.5893254773528196e-08 + f64.mul + f64.sub + global.set $~lib/math/rempio2f_y + local.get $10 + i32.trunc_f64_s + br $~lib/math/rempio2f|inlined.2 + end + local.get $12 + local.set $14 + local.get $11 + local.set $13 + i32.const 352 + i32.load offset=4 + local.set $15 + local.get $13 + i32.const 23 + i32.shr_s + i32.const 152 + i32.sub + local.set $16 + local.get $16 + i32.const 63 + i32.and + i64.extend_i32_s + local.set $17 + local.get $15 + local.get $16 + i32.const 6 + i32.shr_s + i32.const 3 + i32.shl + i32.add + local.set $18 + local.get $18 + i64.load + local.set $19 + local.get $18 + i64.load offset=8 + local.set $20 + local.get $17 + i64.const 32 + i64.gt_u + if + local.get $18 + i64.load offset=16 + local.set $22 + local.get $22 + i64.const 96 + local.get $17 + i64.sub + i64.shr_u + local.set $21 + local.get $21 + local.get $20 + local.get $17 + i64.const 32 + i64.sub + i64.shl + i64.or + local.set $21 + else + local.get $20 + i64.const 32 + local.get $17 + i64.sub + i64.shr_u + local.set $21 + end + local.get $20 + i64.const 64 + local.get $17 + i64.sub + i64.shr_u + local.get $19 + local.get $17 + i64.shl + i64.or + local.set $22 + local.get $13 + i32.const 8388607 + i32.and + i32.const 8388608 + i32.or + i64.extend_i32_s + local.set $23 + local.get $23 + local.get $22 + i64.mul + local.get $23 + local.get $21 + i64.mul + i64.const 32 + i64.shr_u + i64.add + local.set $24 + local.get $24 + i64.const 2 + i64.shl + local.set $25 + local.get $24 + i64.const 62 + i64.shr_u + local.get $25 + i64.const 63 + i64.shr_u + i64.add + i32.wrap_i64 + local.set $26 + f64.const 8.515303950216386e-20 + local.get $14 + f64.promote_f32 + f64.copysign + local.get $25 + f64.convert_i64_s + f64.mul + global.set $~lib/math/rempio2f_y + local.get $26 + local.set $26 + i32.const 0 + local.get $26 + i32.sub + local.get $26 + local.get $3 + select + end + local.set $27 + global.get $~lib/math/rempio2f_y + local.set $28 + local.get $28 + local.set $4 + local.get $27 + i32.const 1 + i32.and + local.set $13 + local.get $4 + local.get $4 + f64.mul + local.set $10 + f64.const 0.002974357433599673 + local.get $10 + f64.const 0.009465647849436732 + f64.mul + f64.add + local.set $9 + f64.const 0.05338123784456704 + local.get $10 + f64.const 0.024528318116654728 + f64.mul + f64.add + local.set $8 + local.get $10 + local.get $10 + f64.mul + local.set $7 + local.get $10 + local.get $4 + f64.mul + local.set $6 + f64.const 0.3333313950307914 + local.get $10 + f64.const 0.13339200271297674 + f64.mul + f64.add + local.set $5 + local.get $4 + local.get $6 + local.get $5 + f64.mul + f64.add + local.get $6 + local.get $7 + f64.mul + local.get $8 + local.get $7 + local.get $9 + f64.mul + f64.add + f64.mul + f64.add + local.set $9 + local.get $13 + if (result f64) + f32.const -1 + f64.promote_f32 + local.get $9 + f64.div + else + local.get $9 + end + f32.demote_f64 + ) + (func $std/math/test_tanf (; 163 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.tan + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.tanh (; 164 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + (local $1 i64) + (local $2 f64) + (local $3 i32) + (local $4 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 9223372036854775807 + i64.and + local.set $1 + local.get $1 + f64.reinterpret_i64 + local.set $2 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $3 + local.get $3 + i32.const 1071748074 + i32.gt_u + if + local.get $3 + i32.const 1077149696 + i32.gt_u + if + f64.const 1 + f64.const 0 + local.get $2 + f64.div + f64.sub + local.set $4 + else + f64.const 2 + local.get $2 + f64.mul + call $~lib/math/NativeMath.expm1 + local.set $4 + f64.const 1 + f64.const 2 + local.get $4 + f64.const 2 + f64.add + f64.div + f64.sub + local.set $4 + end + else + local.get $3 + i32.const 1070618798 + i32.gt_u + if + f64.const 2 + local.get $2 + f64.mul + call $~lib/math/NativeMath.expm1 + local.set $4 + local.get $4 + local.get $4 + f64.const 2 + f64.add + f64.div + local.set $4 + else + local.get $3 + i32.const 1048576 + i32.ge_u + if + f64.const -2 + local.get $2 + f64.mul + call $~lib/math/NativeMath.expm1 + local.set $4 + local.get $4 + f64.neg + local.get $4 + f64.const 2 + f64.add + f64.div + local.set $4 + else + local.get $2 + local.set $4 + end + end + end + local.get $4 + local.get $0 + f64.copysign + ) + (func $std/math/test_tanh (; 165 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMath.tanh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/tanh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $~lib/math/NativeMathf.tanh (; 166 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32) + (local $1 i32) + (local $2 f32) + (local $3 f32) + local.get $0 + i32.reinterpret_f32 + local.set $1 + local.get $1 + i32.const 2147483647 + i32.and + local.set $1 + local.get $1 + f32.reinterpret_i32 + local.set $2 + local.get $1 + i32.const 1057791828 + i32.gt_u + if + local.get $1 + i32.const 1092616192 + i32.gt_u + if + f32.const 1 + f32.const 0 + local.get $2 + f32.div + f32.add + local.set $3 + else + f32.const 2 + local.get $2 + f32.mul + call $~lib/math/NativeMathf.expm1 + local.set $3 + f32.const 1 + f32.const 2 + local.get $3 + f32.const 2 + f32.add + f32.div + f32.sub + local.set $3 + end + else + local.get $1 + i32.const 1048757624 + i32.gt_u + if + f32.const 2 + local.get $2 + f32.mul + call $~lib/math/NativeMathf.expm1 + local.set $3 + local.get $3 + local.get $3 + f32.const 2 + f32.add + f32.div + local.set $3 + else + local.get $1 + i32.const 8388608 + i32.ge_u + if + f32.const -2 + local.get $2 + f32.mul + call $~lib/math/NativeMathf.expm1 + local.set $3 + local.get $3 + f32.neg + local.get $3 + f32.const 2 + f32.add + f32.div + local.set $3 + else + local.get $2 + local.set $3 + end + end + end + local.get $3 + local.get $0 + f32.copysign + ) + (func $std/math/test_tanhf (; 167 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + local.get $0 + call $~lib/math/NativeMathf.tanh + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $std/math/test_trunc (; 168 ;) (type $FUNCSIG$idddi) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (local $4 f64) + local.get $0 + local.set $4 + local.get $4 + f64.trunc + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + if (result i32) + global.get $std/math/js + i32.eqz + if (result i32) + i32.const 1 + else + local.get $0 + call $~lib/bindings/Math/trunc + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + end + else + i32.const 0 + end + ) + (func $std/math/test_truncf (; 169 ;) (type $FUNCSIG$ifffi) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (local $4 f32) + local.get $0 + local.set $4 + local.get $4 + f32.trunc + local.get $1 + local.get $2 + local.get $3 + call $std/math/check + ) + (func $~lib/math/NativeMath.sincos (; 170 ;) (type $FUNCSIG$vd) (param $0 f64) + (local $1 i64) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 i64) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 f64) + (local $17 i32) + (local $18 f64) + (local $19 f64) + (local $20 f64) + (local $21 f64) + (local $22 f64) + (local $23 f64) + local.get $0 + i64.reinterpret_f64 + local.set $1 + local.get $1 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $2 + local.get $2 + i32.const 31 + i32.shr_u + local.set $3 + local.get $2 + i32.const 2147483647 + i32.and + local.set $2 + local.get $2 + i32.const 1072243195 + i32.le_u + if + local.get $2 + i32.const 1044816030 + i32.lt_u + if + local.get $0 + global.set $~lib/math/NativeMath.sincos_sin + f64.const 1 + global.set $~lib/math/NativeMath.sincos_cos + return + end + block $~lib/math/sin_kern|inlined.3 (result f64) + local.get $0 + local.set $6 + f64.const 0 + local.set $5 + i32.const 0 + local.set $4 + local.get $6 + local.get $6 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $8 + f64.const 0.00833333333332249 + local.get $7 + f64.const -1.984126982985795e-04 + local.get $7 + f64.const 2.7557313707070068e-06 + f64.mul + f64.add + f64.mul + f64.add + local.get $7 + local.get $8 + f64.mul + f64.const -2.5050760253406863e-08 + local.get $7 + f64.const 1.58969099521155e-10 + f64.mul + f64.add + f64.mul + f64.add + local.set $9 + local.get $7 + local.get $6 + f64.mul + local.set $10 + local.get $4 + i32.eqz + if + local.get $6 + local.get $10 + f64.const -0.16666666666666632 + local.get $7 + local.get $9 + f64.mul + f64.add + f64.mul + f64.add + br $~lib/math/sin_kern|inlined.3 + else + local.get $6 + local.get $7 + f64.const 0.5 + local.get $5 + f64.mul + local.get $10 + local.get $9 + f64.mul + f64.sub + f64.mul + local.get $5 + f64.sub + local.get $10 + f64.const -0.16666666666666632 + f64.mul + f64.sub + f64.sub + br $~lib/math/sin_kern|inlined.3 + end + unreachable + end + global.set $~lib/math/NativeMath.sincos_sin + local.get $0 + local.set $6 + f64.const 0 + local.set $5 + local.get $6 + local.get $6 + f64.mul + local.set $10 + local.get $10 + local.get $10 + f64.mul + local.set $9 + local.get $10 + f64.const 0.0416666666666666 + local.get $10 + f64.const -0.001388888888887411 + local.get $10 + f64.const 2.480158728947673e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.get $9 + local.get $9 + f64.mul + f64.const -2.7557314351390663e-07 + local.get $10 + f64.const 2.087572321298175e-09 + local.get $10 + f64.const -1.1359647557788195e-11 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $8 + f64.const 0.5 + local.get $10 + f64.mul + local.set $7 + f64.const 1 + local.get $7 + f64.sub + local.set $9 + local.get $9 + f64.const 1 + local.get $9 + f64.sub + local.get $7 + f64.sub + local.get $10 + local.get $8 + f64.mul + local.get $6 + local.get $5 + f64.mul + f64.sub + f64.add + f64.add + global.set $~lib/math/NativeMath.sincos_cos + return + end + local.get $2 + i32.const 2139095040 + i32.ge_u + if + local.get $0 + local.get $0 + f64.sub + local.set $7 + local.get $7 + global.set $~lib/math/NativeMath.sincos_sin + local.get $7 + global.set $~lib/math/NativeMath.sincos_cos + return + end + block $~lib/math/rempio2|inlined.3 (result i32) + local.get $0 + local.set $5 + local.get $1 + local.set $11 + local.get $3 + local.set $4 + local.get $11 + i64.const 32 + i64.shr_u + i32.wrap_i64 + i32.const 2147483647 + i32.and + local.set $12 + local.get $12 + i32.const 1073928572 + i32.lt_u + if + i32.const 1 + local.set $13 + local.get $4 + i32.eqz + if + local.get $5 + f64.const 1.5707963267341256 + f64.sub + local.set $7 + local.get $12 + i32.const 1073291771 + i32.ne + if + local.get $7 + f64.const 6.077100506506192e-11 + f64.sub + local.set $8 + local.get $7 + local.get $8 + f64.sub + f64.const 6.077100506506192e-11 + f64.sub + local.set $9 + else + local.get $7 + f64.const 6.077100506303966e-11 + f64.sub + local.set $7 + local.get $7 + f64.const 2.0222662487959506e-21 + f64.sub + local.set $8 + local.get $7 + local.get $8 + f64.sub + f64.const 2.0222662487959506e-21 + f64.sub + local.set $9 + end + else + local.get $5 + f64.const 1.5707963267341256 + f64.add + local.set $7 + local.get $12 + i32.const 1073291771 + i32.ne + if + local.get $7 + f64.const 6.077100506506192e-11 + f64.add + local.set $8 + local.get $7 + local.get $8 + f64.sub + f64.const 6.077100506506192e-11 + f64.add + local.set $9 + else + local.get $7 + f64.const 6.077100506303966e-11 + f64.add + local.set $7 + local.get $7 + f64.const 2.0222662487959506e-21 + f64.add + local.set $8 + local.get $7 + local.get $8 + f64.sub + f64.const 2.0222662487959506e-21 + f64.add + local.set $9 + end + i32.const -1 + local.set $13 + end + local.get $8 + global.set $~lib/math/rempio2_y0 + local.get $9 + global.set $~lib/math/rempio2_y1 + local.get $13 + br $~lib/math/rempio2|inlined.3 + end + local.get $12 + i32.const 1094263291 + i32.lt_u + if + local.get $5 + f64.const 0.6366197723675814 + f64.mul + f64.nearest + local.set $9 + local.get $5 + local.get $9 + f64.const 1.5707963267341256 + f64.mul + f64.sub + local.set $8 + local.get $9 + f64.const 6.077100506506192e-11 + f64.mul + local.set $7 + local.get $12 + i32.const 20 + i32.shr_u + local.set $13 + local.get $8 + local.get $7 + f64.sub + local.set $10 + local.get $10 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $14 + local.get $13 + local.get $14 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $15 + local.get $15 + i32.const 16 + i32.gt_u + if + local.get $8 + local.set $6 + local.get $9 + f64.const 6.077100506303966e-11 + f64.mul + local.set $7 + local.get $6 + local.get $7 + f64.sub + local.set $8 + local.get $9 + f64.const 2.0222662487959506e-21 + f64.mul + local.get $6 + local.get $8 + f64.sub + local.get $7 + f64.sub + f64.sub + local.set $7 + local.get $8 + local.get $7 + f64.sub + local.set $10 + local.get $10 + i64.reinterpret_f64 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $14 + local.get $13 + local.get $14 + i32.const 20 + i32.shr_u + i32.const 2047 + i32.and + i32.sub + local.set $15 + local.get $15 + i32.const 49 + i32.gt_u + if + local.get $8 + local.set $16 + local.get $9 + f64.const 2.0222662487111665e-21 + f64.mul + local.set $7 + local.get $16 + local.get $7 + f64.sub + local.set $8 + local.get $9 + f64.const 8.4784276603689e-32 + f64.mul + local.get $16 + local.get $8 + f64.sub + local.get $7 + f64.sub + f64.sub + local.set $7 + local.get $8 + local.get $7 + f64.sub + local.set $10 + end + end + local.get $8 + local.get $10 + f64.sub + local.get $7 + f64.sub + local.set $6 + local.get $10 + global.set $~lib/math/rempio2_y0 + local.get $6 + global.set $~lib/math/rempio2_y1 + local.get $9 + i32.trunc_f64_s + br $~lib/math/rempio2|inlined.3 + end + local.get $5 + local.get $11 + call $~lib/math/pio2_large_quot + local.set $15 + i32.const 0 + local.get $15 + i32.sub + local.get $15 + local.get $4 + select + end + local.set $17 + global.get $~lib/math/rempio2_y0 + local.set $18 + global.get $~lib/math/rempio2_y1 + local.set $19 + block $~lib/math/sin_kern|inlined.4 (result f64) + local.get $18 + local.set $9 + local.get $19 + local.set $16 + i32.const 1 + local.set $13 + local.get $9 + local.get $9 + f64.mul + local.set $5 + local.get $5 + local.get $5 + f64.mul + local.set $6 + f64.const 0.00833333333332249 + local.get $5 + f64.const -1.984126982985795e-04 + local.get $5 + f64.const 2.7557313707070068e-06 + f64.mul + f64.add + f64.mul + f64.add + local.get $5 + local.get $6 + f64.mul + f64.const -2.5050760253406863e-08 + local.get $5 + f64.const 1.58969099521155e-10 + f64.mul + f64.add + f64.mul + f64.add + local.set $10 + local.get $5 + local.get $9 + f64.mul + local.set $7 + local.get $13 + i32.eqz + if + local.get $9 + local.get $7 + f64.const -0.16666666666666632 + local.get $5 + local.get $10 + f64.mul + f64.add + f64.mul + f64.add + br $~lib/math/sin_kern|inlined.4 + else + local.get $9 + local.get $5 + f64.const 0.5 + local.get $16 + f64.mul + local.get $7 + local.get $10 + f64.mul + f64.sub + f64.mul + local.get $16 + f64.sub + local.get $7 + f64.const -0.16666666666666632 + f64.mul + f64.sub + f64.sub + br $~lib/math/sin_kern|inlined.4 + end + unreachable + end + local.set $20 + local.get $18 + local.set $16 + local.get $19 + local.set $8 + local.get $16 + local.get $16 + f64.mul + local.set $7 + local.get $7 + local.get $7 + f64.mul + local.set $10 + local.get $7 + f64.const 0.0416666666666666 + local.get $7 + f64.const -0.001388888888887411 + local.get $7 + f64.const 2.480158728947673e-05 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + local.get $10 + local.get $10 + f64.mul + f64.const -2.7557314351390663e-07 + local.get $7 + f64.const 2.087572321298175e-09 + local.get $7 + f64.const -1.1359647557788195e-11 + f64.mul + f64.add + f64.mul + f64.add + f64.mul + f64.add + local.set $6 + f64.const 0.5 + local.get $7 + f64.mul + local.set $5 + f64.const 1 + local.get $5 + f64.sub + local.set $10 + local.get $10 + f64.const 1 + local.get $10 + f64.sub + local.get $5 + f64.sub + local.get $7 + local.get $6 + f64.mul + local.get $16 + local.get $8 + f64.mul + f64.sub + f64.add + f64.add + local.set $21 + local.get $20 + local.set $22 + local.get $21 + local.set $23 + local.get $17 + i32.const 1 + i32.and + if + local.get $21 + local.set $22 + local.get $20 + f64.neg + local.set $23 + end + local.get $17 + i32.const 2 + i32.and + if + local.get $22 + f64.neg + local.set $22 + local.get $23 + f64.neg + local.set $23 + end + local.get $22 + global.set $~lib/math/NativeMath.sincos_sin + local.get $23 + global.set $~lib/math/NativeMath.sincos_cos + ) + (func $std/math/test_sincos (; 171 ;) (type $FUNCSIG$ijjjjji) (param $0 i64) (param $1 i64) (param $2 i64) (param $3 i64) (param $4 i64) (param $5 i32) (result i32) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + local.get $0 + f64.reinterpret_i64 + local.set $6 + local.get $1 + f64.reinterpret_i64 + local.set $7 + local.get $3 + f64.reinterpret_i64 + local.set $8 + local.get $2 + f64.reinterpret_i64 + local.set $9 + local.get $4 + f64.reinterpret_i64 + local.set $10 + local.get $6 + call $~lib/math/NativeMath.sincos + global.get $~lib/math/NativeMath.sincos_sin + local.get $7 + local.get $9 + local.get $5 + call $std/math/check + if (result i32) + global.get $~lib/math/NativeMath.sincos_cos + local.get $8 + local.get $10 + local.get $5 + call $std/math/check + else + i32.const 0 + end + ) + (func $~lib/math/dtoi32 (; 172 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (local $1 i32) + (local $2 i64) + (local $3 i64) + (local $4 i64) + i32.const 0 + local.set $1 + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $2 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $3 + local.get $3 + i64.const 1053 + i64.le_u + if + local.get $0 + i32.trunc_f64_s + local.set $1 + else + local.get $3 + i64.const 1106 + i64.le_u + if + local.get $2 + i64.const 1 + i64.const 52 + i64.shl + i64.const 1 + i64.sub + i64.and + i64.const 1 + i64.const 52 + i64.shl + i64.or + local.set $4 + local.get $4 + local.get $3 + i64.const 1023 + i64.sub + i64.const 52 + i64.sub + i64.const 32 + i64.add + i64.shl + local.set $4 + local.get $4 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $1 + i32.const 0 + local.get $1 + i32.sub + local.get $1 + local.get $2 + i64.const 63 + i64.shr_u + i64.const 0 + i64.ne + select + local.set $1 + end + end + local.get $1 + return + ) + (func $~lib/math/NativeMath.imul (; 173 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + local.get $0 + local.get $1 + f64.add + call $~lib/number/isFinite + i32.eqz + if + f64.const 0 + return + end + local.get $0 + call $~lib/math/dtoi32 + local.get $1 + call $~lib/math/dtoi32 + i32.mul + f64.convert_i32_s + ) + (func $~lib/math/NativeMath.clz32 (; 174 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) + local.get $0 + call $~lib/number/isFinite + i32.eqz + if + f64.const 32 + return + end + local.get $0 + call $~lib/math/dtoi32 + i32.clz + f64.convert_i32_s + ) + (func $~lib/math/ipow64 (; 175 ;) (type $FUNCSIG$jji) (param $0 i64) (param $1 i32) (result i64) + (local $2 i64) + (local $3 i32) + (local $4 i32) + i64.const 1 + local.set $2 + local.get $1 + i32.const 0 + i32.lt_s + if + i64.const 0 + return + end + block $break|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $1 + local.set $3 + local.get $3 + i32.const 0 + i32.eq + br_if $case0|0 + local.get $3 + i32.const 1 + i32.eq + br_if $case1|0 + local.get $3 + i32.const 2 + i32.eq + br_if $case2|0 + br $break|0 + end + i64.const 1 + return + end + local.get $0 + return + end + local.get $0 + local.get $0 + i64.mul + return + end + i32.const 32 + local.get $1 + i32.clz + i32.sub + local.set $3 + local.get $3 + i32.const 6 + i32.le_s + if + block $break|1 + block $case5|1 + block $case4|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $3 + local.set $4 + local.get $4 + i32.const 6 + i32.eq + br_if $case0|1 + local.get $4 + i32.const 5 + i32.eq + br_if $case1|1 + local.get $4 + i32.const 4 + i32.eq + br_if $case2|1 + local.get $4 + i32.const 3 + i32.eq + br_if $case3|1 + local.get $4 + i32.const 2 + i32.eq + br_if $case4|1 + local.get $4 + i32.const 1 + i32.eq + br_if $case5|1 + br $break|1 + end + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i64.mul + local.set $2 + end + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + i64.mul + local.set $0 + end + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i64.mul + local.set $2 + end + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + i64.mul + local.set $0 + end + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i64.mul + local.set $2 + end + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + i64.mul + local.set $0 + end + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i64.mul + local.set $2 + end + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + i64.mul + local.set $0 + end + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i64.mul + local.set $2 + end + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + i64.mul + local.set $0 + end + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i64.mul + local.set $2 + end + end + local.get $2 + return + end + block $break|2 + loop $continue|2 + local.get $1 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|2 + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i64.mul + local.set $2 + end + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + i64.mul + local.set $0 + br $continue|2 + end + unreachable + end + local.get $2 + ) + (func $~lib/math/ipow32f (; 176 ;) (type $FUNCSIG$ffi) (param $0 f32) (param $1 i32) (result f32) + (local $2 i32) + (local $3 f32) + local.get $1 + i32.const 31 + i32.shr_s + local.set $2 + local.get $1 + local.get $2 + i32.add + local.get $2 + i32.xor + local.set $1 + f32.const 1 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i32.eqz + br_if $break|0 + local.get $3 + local.get $0 + f32.const 1 + local.get $1 + i32.const 1 + i32.and + select + f32.mul + local.set $3 + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + f32.mul + local.set $0 + br $continue|0 + end + unreachable + end + local.get $2 + if (result f32) + f32.const 1 + local.get $3 + f32.div + else + local.get $3 + end + ) + (func $~lib/math/ipow64f (; 177 ;) (type $FUNCSIG$ddi) (param $0 f64) (param $1 i32) (result f64) + (local $2 i32) + (local $3 f64) + local.get $1 + i32.const 31 + i32.shr_s + local.set $2 + local.get $1 + local.get $2 + i32.add + local.get $2 + i32.xor + local.set $1 + f64.const 1 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i32.eqz + br_if $break|0 + local.get $3 + local.get $0 + f64.const 1 + local.get $1 + i32.const 1 + i32.and + select + f64.mul + local.set $3 + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + f64.mul + local.set $0 + br $continue|0 + end + unreachable + end + local.get $2 + if (result f64) + f64.const 1 + local.get $3 + f64.div + else + local.get $3 + end + ) + (func $start:std/math (; 178 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 f64) + (local $2 i64) + (local $3 f32) + f64.const 2.718281828459045 + global.get $~lib/bindings/Math/E + f64.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 111 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6931471805599453 + global.get $~lib/bindings/Math/LN2 + f64.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 112 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.302585092994046 + global.get $~lib/bindings/Math/LN10 + f64.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 113 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.4426950408889634 + global.get $~lib/bindings/Math/LOG2E + f64.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 114 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.141592653589793 + global.get $~lib/bindings/Math/PI + f64.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 115 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7071067811865476 + global.get $~lib/bindings/Math/SQRT1_2 + f64.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 116 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.4142135623730951 + global.get $~lib/bindings/Math/SQRT2 + f64.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 117 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.7182817459106445 + global.get $~lib/bindings/Math/E + f32.demote_f64 + f32.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 119 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6931471824645996 + global.get $~lib/bindings/Math/LN2 + f32.demote_f64 + f32.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 120 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.3025851249694824 + global.get $~lib/bindings/Math/LN10 + f32.demote_f64 + f32.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 121 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.4426950216293335 + global.get $~lib/bindings/Math/LOG2E + f32.demote_f64 + f32.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 122 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 3.1415927410125732 + global.get $~lib/bindings/Math/PI + f32.demote_f64 + f32.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 123 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7071067690849304 + global.get $~lib/bindings/Math/SQRT1_2 + f32.demote_f64 + f32.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 124 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.4142135381698608 + global.get $~lib/bindings/Math/SQRT2 + f32.demote_f64 + f32.const 0 + i32.const 0 + call $std/math/check + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 125 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + i32.const -2 + f64.const -2.01671209764492 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 136 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + i32.const -1 + f64.const 2.1726199246691524 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 137 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + i32.const 0 + f64.const -8.38143342755525 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 138 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + i32.const 1 + f64.const -13.063347163826968 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 139 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + i32.const 2 + f64.const 37.06822786789034 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 140 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + i32.const 3 + f64.const 5.295887184796036 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 141 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + i32.const 4 + f64.const -6.505662758165685 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 142 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + i32.const 5 + f64.const 17.97631187906317 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 143 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + i32.const 6 + f64.const 49.545746981843436 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 144 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + i32.const 7 + f64.const -86.88175393784351 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 145 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + i32.const 2147483647 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 148 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + i32.const -2147483647 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 149 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + i32.const 2147483647 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 150 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + i32.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 151 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + i32.const 0 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 152 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + i32.const 0 + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 153 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + i32.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 154 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + i32.const 1 + f64.const 2 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 155 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + i32.const -1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 156 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + i32.const 2147483647 + f64.const inf + f64.const 0 + i32.const 17 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 157 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + i32.const 1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 158 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + i32.const 2147483647 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 159 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + i32.const -2147483647 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 160 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + i32.const 2147483647 + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 161 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8988465674311579538646525e283 + i32.const -2097 + f64.const 5e-324 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 162 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5e-324 + i32.const 2097 + f64.const 8988465674311579538646525e283 + f64.const 0 + i32.const 0 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 163 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.000244140625 + i32.const -1074 + f64.const 5e-324 + f64.const 0 + i32.const 9 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 164 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7499999999999999 + i32.const -1073 + f64.const 5e-324 + f64.const 0 + i32.const 9 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 165 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5000000000000012 + i32.const -1024 + f64.const 2.781342323134007e-309 + f64.const 0 + i32.const 9 + call $std/math/test_scalbn + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 166 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + i32.const -2 + f32.const -2.016712188720703 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 175 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + i32.const -1 + f32.const 2.1726198196411133 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 176 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + i32.const 0 + f32.const -8.381433486938477 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 177 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + i32.const 1 + f32.const -13.063346862792969 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 178 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + i32.const 2 + f32.const 37.06822967529297 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 179 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + i32.const 3 + f32.const 5.295886993408203 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 180 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + i32.const 4 + f32.const -6.50566291809082 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 181 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + i32.const 5 + f32.const 17.9763126373291 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 182 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + i32.const 6 + f32.const 49.545745849609375 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 183 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + i32.const 7 + f32.const -86.88175201416016 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 184 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + i32.const 2147483647 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 187 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + i32.const -2147483647 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 188 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + i32.const 2147483647 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 189 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + i32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 190 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + i32.const 0 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 191 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + i32.const 0 + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 192 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + i32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 193 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + i32.const 1 + f32.const 2 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 194 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + i32.const -1 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 195 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + i32.const 2147483647 + f32.const inf + f32.const 0 + i32.const 17 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 196 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + i32.const 1 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 197 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + i32.const 2147483647 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 198 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + i32.const -2147483647 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 199 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + i32.const 2147483647 + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 200 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1701411834604692317316873e14 + i32.const -276 + f32.const 1.401298464324817e-45 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 201 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.401298464324817e-45 + i32.const 276 + f32.const 1701411834604692317316873e14 + f32.const 0 + i32.const 0 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 202 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.000244140625 + i32.const -149 + f32.const 1.401298464324817e-45 + f32.const 0 + i32.const 9 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 203 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7499999403953552 + i32.const -148 + f32.const 1.401298464324817e-45 + f32.const 0 + i32.const 9 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 204 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5000006556510925 + i32.const -128 + f32.const 1.4693693398263237e-39 + f32.const 0 + i32.const 9 + call $std/math/test_scalbnf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 205 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const 8.06684839057968 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 217 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 4.345239849338305 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 218 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const 8.38143342755525 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 219 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const 6.531673581913484 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 220 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 9.267056966972586 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 221 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.6619858980995045 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 222 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const 0.4066039223853553 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 223 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.5617597462207241 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 224 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.7741522965913037 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 225 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const 0.6787637026394024 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 226 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 229 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 230 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 231 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 232 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 233 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 234 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_abs + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 235 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const 8.066848754882812 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 244 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 4.345239639282227 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 245 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const 8.381433486938477 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 246 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const 6.531673431396484 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 247 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 9.267057418823242 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 248 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.6619858741760254 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 249 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const 0.40660393238067627 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 250 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.5617597699165344 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 251 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.7741522789001465 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 252 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const 0.6787636876106262 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 253 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 256 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 257 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 258 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 259 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 260 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 261 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_absf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 262 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 274 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 275 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 276 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 277 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 278 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.8473310828433507 + f64.const -0.41553276777267456 + i32.const 1 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 279 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const 1.989530071088669 + f64.const 0.4973946213722229 + i32.const 1 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 280 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.9742849645674904 + f64.const -0.4428897500038147 + i32.const 1 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 281 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.6854215158636222 + f64.const -0.12589527666568756 + i32.const 1 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 282 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const 2.316874138205964 + f64.const -0.17284949123859406 + i32.const 1 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 283 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 1.5707963267948966 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 286 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 3.141592653589793 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 287 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 288 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0000000000000002 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 289 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.0000000000000002 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 290 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 291 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 292 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 293 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5309227209592985 + f64.const 2.1304853799705463 + f64.const 0.1391008496284485 + i32.const 1 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 294 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.4939556746399746 + f64.const 1.0541629875851946 + f64.const 0.22054767608642578 + i32.const 1 + call $std/math/test_acos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 295 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 304 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 305 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 306 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 307 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 308 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.8473311066627502 + f32.const -0.13588131964206696 + i32.const 1 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 309 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const 1.989530086517334 + f32.const 0.03764917701482773 + i32.const 1 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 310 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.9742849469184875 + f32.const 0.18443739414215088 + i32.const 1 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 311 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.6854215264320374 + f32.const -0.29158344864845276 + i32.const 1 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 312 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const 2.3168740272521973 + f32.const -0.3795364499092102 + i32.const 1 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 313 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 1.5707963705062866 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 316 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 3.1415927410125732 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 317 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 318 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.0000001192092896 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 319 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.0000001192092896 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 320 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 321 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 322 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 323 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.49965065717697144 + f32.const 1.0476008653640747 + f32.const -0.21161814033985138 + i32.const 1 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 324 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5051405429840088 + f32.const 2.1003410816192627 + f32.const -0.20852705836296082 + i32.const 1 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 325 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5189794898033142 + f32.const 2.116452932357788 + f32.const -0.14600826799869537 + i32.const 1 + call $std/math/test_acosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 326 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 338 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 2.1487163980597503 + f64.const -0.291634738445282 + i32.const 1 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 339 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 340 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 341 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 2.91668914109908 + f64.const -0.24191908538341522 + i32.const 1 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 342 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 343 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 344 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 345 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 346 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 347 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 350 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 351 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 352 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9999923706054688 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 353 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 354 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 355 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 356 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1060831199926429 + f64.const 0.4566373404384803 + f64.const -0.29381608963012695 + i32.const 1 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 372 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1089809557628658 + f64.const 0.4627246859959428 + f64.const -0.3990095555782318 + i32.const 1 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 374 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1169429159875521 + f64.const 0.47902433134075284 + f64.const -0.321674108505249 + i32.const 1 + call $std/math/test_acosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 375 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 384 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 2.148716449737549 + f32.const 0.4251045286655426 + i32.const 1 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 385 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 386 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 387 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 2.916689157485962 + f32.const -0.1369788944721222 + i32.const 1 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 388 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 389 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 390 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 391 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 392 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 393 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 396 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 397 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 398 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.9999923706054688 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 399 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 400 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 401 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 402 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1125899906842624 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_acoshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 403 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 415 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 416 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 417 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 418 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 419 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.7234652439515459 + f64.const -0.13599912822246552 + i32.const 1 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 420 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0.41873374429377225 + f64.const -0.09264230728149414 + i32.const 1 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 421 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.5965113622274062 + f64.const -0.10864213854074478 + i32.const 1 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 422 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.8853748109312743 + f64.const -0.4256366193294525 + i32.const 1 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 423 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -0.7460778114110673 + f64.const 0.13986606895923615 + i32.const 1 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 424 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1.5707963267948966 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 427 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1.5707963267948966 + f64.const 0.27576595544815063 + i32.const 1 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 428 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 429 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 430 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0000000000000002 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 431 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.0000000000000002 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 432 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 433 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 434 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 435 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5073043929119148 + f64.const 0.5320538997772349 + f64.const -0.16157317161560059 + i32.const 1 + call $std/math/test_asin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 436 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 445 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 446 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 447 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 448 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 449 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.7234652042388916 + f32.const -0.1307632476091385 + i32.const 1 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 450 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0.41873374581336975 + f32.const 0.3161141574382782 + i32.const 1 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 451 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.5965113639831543 + f32.const -0.4510819613933563 + i32.const 1 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 452 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.8853747844696045 + f32.const 0.02493886835873127 + i32.const 1 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 453 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -0.7460777759552002 + f32.const 0.2515012323856354 + i32.const 1 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 454 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1.5707963705062866 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 457 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1.5707963705062866 + f32.const -0.3666777014732361 + i32.const 1 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 458 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 459 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 460 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.0000001192092896 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 461 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.0000001192092896 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 462 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 463 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 464 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 465 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5004770159721375 + f32.const 0.5241496562957764 + f32.const -0.29427099227905273 + i32.const 1 + call $std/math/test_asinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 466 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const -2.784729878387861 + f64.const -0.4762189984321594 + i32.const 1 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 478 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 2.175213389013164 + f64.const -0.02728751301765442 + i32.const 1 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 479 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -2.822706083697696 + f64.const 0.20985257625579834 + i32.const 1 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 480 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const -2.575619446591922 + f64.const 0.3113134205341339 + i32.const 1 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 481 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 2.9225114951048674 + f64.const 0.4991756081581116 + i32.const 1 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 482 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.6212462762707166 + f64.const -0.4697347581386566 + i32.const 1 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 483 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0.39615990393192035 + f64.const -0.40814438462257385 + i32.const 1 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 484 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.5357588870255474 + f64.const 0.3520713150501251 + i32.const 1 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 485 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.7123571263197349 + f64.const 0.13371451199054718 + i32.const 1 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 486 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -0.635182348903198 + f64.const 0.04749670997262001 + i32.const 1 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 487 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 490 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 491 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 492 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 493 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_asinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 494 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const -2.7847299575805664 + f32.const -0.14418013393878937 + i32.const 1 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 523 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 2.17521333694458 + f32.const -0.020796965807676315 + i32.const 1 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 524 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -2.8227059841156006 + f32.const 0.44718533754348755 + i32.const 1 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 525 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const -2.5756194591522217 + f32.const -0.14822272956371307 + i32.const 1 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 526 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 2.922511577606201 + f32.const 0.14270681142807007 + i32.const 1 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 527 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.6212462782859802 + f32.const 0.3684912919998169 + i32.const 1 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 528 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0.39615991711616516 + f32.const -0.13170306384563446 + i32.const 1 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 529 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.535758912563324 + f32.const 0.08184859901666641 + i32.const 1 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 530 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.7123571038246155 + f32.const -0.14270737767219543 + i32.const 1 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 531 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -0.6351823210716248 + f32.const 0.2583143711090088 + i32.const 1 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 532 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 535 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 536 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 537 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 538 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_asinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 539 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const -1.4474613762633468 + f64.const 0.14857111871242523 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 551 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 1.344597927114538 + f64.const -0.08170335739850998 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 552 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -1.4520463463295539 + f64.const -0.07505480200052261 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 553 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const -1.4188758658752532 + f64.const -0.057633496820926666 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 554 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 1.463303145448706 + f64.const 0.1606956422328949 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 555 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.5847550670238325 + f64.const 0.4582556486129761 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 556 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0.3861864177552131 + f64.const -0.2574281692504883 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 557 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.5118269531628881 + f64.const -0.11444277316331863 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 558 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.6587802431653822 + f64.const -0.11286488175392151 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 559 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -0.5963307826973472 + f64.const -0.2182842344045639 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 560 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 563 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 564 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0.7853981633974483 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 565 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -0.7853981633974483 + f64.const 0.27576595544815063 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 566 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 1.5707963267948966 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 567 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -1.5707963267948966 + f64.const 0.27576595544815063 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 568 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 569 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6929821535674624 + f64.const 0.6060004555152562 + f64.const -0.17075790464878082 + i32.const 1 + call $std/math/test_atan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 570 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const -1.4474613666534424 + f32.const 0.12686480581760406 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 579 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 1.3445979356765747 + f32.const 0.16045434772968292 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 580 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -1.4520463943481445 + f32.const -0.39581751823425293 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 581 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const -1.418875813484192 + f32.const 0.410570353269577 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 582 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 1.4633032083511353 + f32.const 0.48403501510620117 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 583 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.5847550630569458 + f32.const 0.2125193476676941 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 584 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0.386186420917511 + f32.const 0.18169628083705902 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 585 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.5118269920349121 + f32.const 0.3499770760536194 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 586 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.6587802171707153 + f32.const -0.2505330741405487 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 587 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -0.5963307619094849 + f32.const 0.17614826560020447 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 588 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 591 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 592 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0.7853981852531433 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 593 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -0.7853981852531433 + f32.const -0.3666777014732361 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 594 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 1.5707963705062866 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 595 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -1.5707963705062866 + f32.const -0.3666777014732361 + i32.const 1 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 596 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_atanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 597 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 609 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 610 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 611 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 612 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 613 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.7963404371347943 + f64.const 0.21338365972042084 + i32.const 1 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 614 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0.43153570730602897 + f64.const -0.4325666129589081 + i32.const 1 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 615 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.6354006111644578 + f64.const -0.06527865678071976 + i32.const 1 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 616 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 1.0306085575277995 + f64.const 0.14632052183151245 + i32.const 1 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 617 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -0.8268179645205255 + f64.const 0.1397128701210022 + i32.const 1 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 618 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 621 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 622 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 623 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 624 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 625 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const inf + f64.const 0 + i32.const 4 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 626 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -inf + f64.const 0 + i32.const 4 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 627 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0000152587890625 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 628 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.0000152587890625 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 629 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.3552527156068805e-20 + f64.const 1.3552527156068805e-20 + f64.const 0 + i32.const 1 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 630 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.332636185032189e-302 + f64.const 9.332636185032189e-302 + f64.const 0 + i32.const 1 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 631 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5.562684646268003e-309 + f64.const 5.562684646268003e-309 + f64.const 0 + i32.const 9 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 632 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -5.562684646268003e-309 + f64.const -5.562684646268003e-309 + f64.const 0 + i32.const 9 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 633 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8988465674311579538646525e283 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_atanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 634 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 643 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 644 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 645 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 646 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 647 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.7963404059410095 + f32.const 0.19112196564674377 + i32.const 1 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 648 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0.4315357208251953 + f32.const -0.05180925130844116 + i32.const 1 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 649 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.635400652885437 + f32.const 0.11911056190729141 + i32.const 1 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 650 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 1.0306085348129272 + f32.const 0.1798270344734192 + i32.const 1 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 651 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -0.8268179297447205 + f32.const 0.11588983237743378 + i32.const 1 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 652 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 655 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 656 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 657 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 658 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 659 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const inf + f32.const 0 + i32.const 4 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 660 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -inf + f32.const 0 + i32.const 4 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 661 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.0000152587890625 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 662 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.0000152587890625 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 663 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.3552527156068805e-20 + f32.const 1.3552527156068805e-20 + f32.const 0 + i32.const 1 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 664 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.888609052210118e-31 + f32.const 7.888609052210118e-31 + f32.const 0 + i32.const 1 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 665 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.938735877055719e-39 + f32.const 2.938735877055719e-39 + f32.const 0 + i32.const 9 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 666 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.938735877055719e-39 + f32.const -2.938735877055719e-39 + f32.const 0 + i32.const 9 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 667 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1701411834604692317316873e14 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_atanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 668 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const 4.535662560676869 + f64.const -1.0585895402489023 + f64.const 0.09766263514757156 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 680 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const -8.88799136300345 + f64.const 2.6868734126013067 + f64.const 0.35833948850631714 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 681 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -2.763607337379588 + f64.const -1.889300091849528 + f64.const -0.46235957741737366 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 682 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const 4.567535276842744 + f64.const -0.9605469021111489 + f64.const -0.21524477005004883 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 683 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 4.811392084359796 + f64.const 1.0919123946142109 + f64.const 0.3894443213939667 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 684 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.450045556060236 + f64.const 0.6620717923376739 + f64.const -1.468508500616424 + f64.const -0.448591411113739 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 685 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.858890253041697 + f64.const 0.05215452675006225 + f64.const 1.5641600512601268 + f64.const 0.3784842789173126 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 686 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.792054511984896 + f64.const 7.67640268511754 + f64.const -0.10281658910678508 + f64.const -0.13993260264396667 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 687 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.615702673197924 + f64.const 2.0119025790324803 + f64.const 0.29697974004493516 + f64.const 0.44753071665763855 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 688 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5587586823609152 + f64.const 0.03223983060263804 + f64.const -1.5131612053303916 + f64.const 0.39708876609802246 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 689 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 692 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -0 + f64.const 3.141592653589793 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 693 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -1 + f64.const 3.141592653589793 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 694 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -inf + f64.const 3.141592653589793 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 695 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 696 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 697 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 698 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const -3.141592653589793 + f64.const 0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 699 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -1 + f64.const -3.141592653589793 + f64.const 0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 700 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -inf + f64.const -3.141592653589793 + f64.const 0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 701 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 702 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const inf + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 703 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 0 + f64.const -1.5707963267948966 + f64.const 0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 704 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -0 + f64.const -1.5707963267948966 + f64.const 0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 705 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0 + f64.const 1.5707963267948966 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 706 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -0 + f64.const 1.5707963267948966 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 707 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const inf + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 708 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 709 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -inf + f64.const -3.141592653589793 + f64.const 0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 710 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -inf + f64.const 3.141592653589793 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 711 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 0 + f64.const 1.5707963267948966 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 712 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 0 + f64.const -1.5707963267948966 + f64.const 0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 713 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0.7853981633974483 + f64.const -0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 714 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -inf + f64.const 2.356194490192345 + f64.const -0.20682445168495178 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 715 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const inf + f64.const -0.7853981633974483 + f64.const 0.27576595544815063 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 716 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const -2.356194490192345 + f64.const 0.20682445168495178 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 717 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1125369292536007e-308 + f64.const 1 + f64.const 1.1125369292536007e-308 + f64.const 0 + i32.const 9 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 718 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 8988465674311579538646525e283 + f64.const 1.1125369292536007e-308 + f64.const 0 + i32.const 9 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 719 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5 + f64.const 8988465674311579538646525e283 + f64.const 1.668805393880401e-308 + f64.const 0 + i32.const 9 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 720 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5 + f64.const -8988465674311579538646525e283 + f64.const 3.141592653589793 + f64.const 0 + i32.const 1 + call $std/math/test_atan2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 721 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const 4.535662651062012 + f32.const -1.0585895776748657 + f32.const -0.22352588176727295 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 730 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const -8.887990951538086 + f32.const 2.686873435974121 + f32.const 0.09464472532272339 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 731 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -2.7636072635650635 + f32.const -1.8893001079559326 + f32.const -0.21941901743412018 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 732 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const 4.567535400390625 + f32.const -0.9605468511581421 + f32.const 0.46015575528144836 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 733 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 4.811392307281494 + f32.const 1.0919123888015747 + f32.const -0.05708503723144531 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 734 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.450045585632324 + f32.const 0.6620717644691467 + f32.const -1.4685084819793701 + f32.const 0.19611206650733948 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 735 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.858890056610107 + f32.const 0.052154526114463806 + f32.const 1.5641601085662842 + f32.const 0.48143187165260315 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 736 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.7920545339584351 + f32.const 7.676402568817139 + f32.const -0.10281659662723541 + f32.const -0.4216274917125702 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 737 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6157026886940002 + f32.const 2.0119025707244873 + f32.const 0.29697975516319275 + f32.const 0.2322007566690445 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 738 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5587586760520935 + f32.const 0.03223983198404312 + f32.const -1.5131611824035645 + f32.const 0.16620726883411407 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 739 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 742 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -0 + f32.const 3.1415927410125732 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 743 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -1 + f32.const 3.1415927410125732 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 744 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -inf + f32.const 3.1415927410125732 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 745 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 746 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 747 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 748 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const -3.1415927410125732 + f32.const -0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 749 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -1 + f32.const -3.1415927410125732 + f32.const -0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 750 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -inf + f32.const -3.1415927410125732 + f32.const -0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 751 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 752 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const inf + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 753 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 0 + f32.const -1.5707963705062866 + f32.const -0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 754 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -0 + f32.const -1.5707963705062866 + f32.const -0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 755 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0 + f32.const 1.5707963705062866 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 756 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -0 + f32.const 1.5707963705062866 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 757 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const inf + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 758 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 759 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -inf + f32.const -3.1415927410125732 + f32.const -0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 760 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -inf + f32.const 3.1415927410125732 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 761 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 0 + f32.const 1.5707963705062866 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 762 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 0 + f32.const -1.5707963705062866 + f32.const -0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 763 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0.7853981852531433 + f32.const 0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 764 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -inf + f32.const 2.356194496154785 + f32.const 0.02500828728079796 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 765 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const inf + f32.const -0.7853981852531433 + f32.const -0.3666777014732361 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 766 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const -2.356194496154785 + f32.const -0.02500828728079796 + i32.const 1 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 767 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 5.877471754111438e-39 + f32.const 1 + f32.const 5.877471754111438e-39 + f32.const 0 + i32.const 9 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 768 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1701411834604692317316873e14 + f32.const 5.877471754111438e-39 + f32.const 0 + i32.const 9 + call $std/math/test_atan2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 769 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const -2.0055552545020245 + f64.const 0.46667951345443726 + i32.const 1 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 781 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 1.6318162410515635 + f64.const -0.08160271495580673 + i32.const 1 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 782 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -2.031293910673361 + f64.const -0.048101816326379776 + i32.const 1 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 783 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const -1.8692820012204925 + f64.const 0.08624018728733063 + i32.const 1 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 784 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 2.100457720859702 + f64.const -0.2722989022731781 + i32.const 1 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 785 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.8715311470455973 + f64.const 0.4414918124675751 + i32.const 1 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 786 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0.740839030300223 + f64.const 0.016453813761472702 + i32.const 1 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 787 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.8251195400559286 + f64.const 0.30680638551712036 + i32.const 1 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 788 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.9182102478959914 + f64.const 0.06543998420238495 + i32.const 1 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 789 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -0.8788326906580094 + f64.const -0.2016713172197342 + i32.const 1 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 790 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 793 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 794 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 795 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 796 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 797 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.313225746154785e-10 + f64.const 0.0009765625 + f64.const 0 + i32.const 0 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 798 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -9.313225746154785e-10 + f64.const -0.0009765625 + f64.const 0 + i32.const 0 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 799 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 800 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 801 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8 + f64.const 2 + f64.const 0 + i32.const 0 + call $std/math/test_cbrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 802 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const -2.0055553913116455 + f32.const -0.44719240069389343 + i32.const 1 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 811 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 1.6318162679672241 + f32.const 0.44636252522468567 + i32.const 1 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 812 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -2.0312938690185547 + f32.const 0.19483426213264465 + i32.const 1 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 813 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const -1.8692820072174072 + f32.const -0.17075514793395996 + i32.const 1 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 814 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 2.1004576683044434 + f32.const -0.36362043023109436 + i32.const 1 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 815 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.8715311288833618 + f32.const -0.12857209146022797 + i32.const 1 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 816 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0.7408390641212463 + f32.const -0.4655757546424866 + i32.const 1 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 817 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.8251195549964905 + f32.const 0.05601907894015312 + i32.const 1 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 818 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.9182102680206299 + f32.const 0.45498204231262207 + i32.const 1 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 819 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -0.8788326978683472 + f32.const -0.22978967428207397 + i32.const 1 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 820 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 823 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 824 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 825 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 826 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 827 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.313225746154785e-10 + f32.const 0.0009765625 + f32.const 0 + i32.const 0 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 828 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -9.313225746154785e-10 + f32.const -0.0009765625 + f32.const 0 + i32.const 0 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 829 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 830 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 831 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 8 + f32.const 2 + f32.const 0 + i32.const 0 + call $std/math/test_cbrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 832 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const -8 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 844 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 5 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 845 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -8 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 846 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const -6 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 847 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 10 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 848 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 849 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 850 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 851 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 852 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 853 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 856 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 857 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 858 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 859 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 860 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 861 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 862 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 863 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 864 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0000152587890625 + f64.const 2 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 865 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.0000152587890625 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 866 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9999923706054688 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 867 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.9999923706054688 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 868 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.888609052210118e-31 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 869 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.888609052210118e-31 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 870 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 871 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 872 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 873 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 874 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 875 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 876 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 877 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 878 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 879 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0000152587890625 + f64.const 2 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 880 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.0000152587890625 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 881 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9999923706054688 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 882 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.9999923706054688 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 883 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.888609052210118e-31 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 884 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.888609052210118e-31 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 885 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 886 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 887 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 888 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 889 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 890 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 891 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 892 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 893 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 894 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0000152587890625 + f64.const 2 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 895 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.0000152587890625 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 896 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9999923706054688 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 897 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.9999923706054688 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 898 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.888609052210118e-31 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 899 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.888609052210118e-31 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_ceil + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 900 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const -8 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 909 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 5 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 910 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -8 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 911 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const -6 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 912 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 10 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 913 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 914 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 915 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 916 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 917 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 918 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 921 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 922 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 923 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 924 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 925 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 926 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 927 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 928 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 929 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.0000152587890625 + f32.const 2 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 930 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.0000152587890625 + f32.const -1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 931 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.9999923706054688 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 932 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.9999923706054688 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 933 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.888609052210118e-31 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 934 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -7.888609052210118e-31 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 935 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 936 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 937 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 938 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 939 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 940 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 941 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 942 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 943 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 944 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.0000152587890625 + f32.const 2 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 945 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.0000152587890625 + f32.const -1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 946 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.9999923706054688 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 947 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.9999923706054688 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 948 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.888609052210118e-31 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 949 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -7.888609052210118e-31 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 950 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 951 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 952 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 953 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 954 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 955 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 956 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 957 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 958 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 959 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.0000152587890625 + f32.const 2 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 960 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.0000152587890625 + f32.const -1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 961 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.9999923706054688 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 962 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.9999923706054688 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 963 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.888609052210118e-31 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 964 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -7.888609052210118e-31 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_ceilf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 965 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const -0.21126281599887137 + f64.const -0.10962469130754471 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 976 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const -0.35895602297578955 + f64.const -0.10759828239679337 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 977 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -0.503333091765516 + f64.const -0.021430473774671555 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 978 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const 0.9692853212503283 + f64.const -0.4787876307964325 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 979 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const -0.9875878064788627 + f64.const 0.4880668818950653 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 980 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.7887730869248576 + f64.const 0.12708666920661926 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 981 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const 0.9184692397007294 + f64.const -0.26120713353157043 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 982 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.8463190467415896 + f64.const -0.302586168050766 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 983 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.7150139289952383 + f64.const -0.08537746220827103 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 984 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const 0.7783494994757447 + f64.const 0.30890750885009766 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 985 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 988 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 989 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 990 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 991 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 992 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0.5403023058681398 + f64.const 0.4288286566734314 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 993 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2 + f64.const -0.4161468365471424 + f64.const -0.35859397053718567 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 994 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3 + f64.const -0.9899924966004454 + f64.const 0.3788451552391052 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 995 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4 + f64.const -0.6536436208636119 + f64.const -0.23280560970306396 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 996 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5 + f64.const 0.28366218546322625 + f64.const -0.3277357816696167 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 997 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.1 + f64.const 0.9950041652780258 + f64.const 0.49558526277542114 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 998 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.2 + f64.const 0.9800665778412416 + f64.const -0.02407640963792801 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 999 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.3 + f64.const 0.955336489125606 + f64.const -0.37772229313850403 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1000 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.4 + f64.const 0.9210609940028851 + f64.const 0.25818485021591187 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1001 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const 0.8775825618903728 + f64.const 0.3839152157306671 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1002 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.3641409746639015e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1003 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1820704873319507e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1004 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5e-324 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1005 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -5e-324 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1006 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -3.14 + f64.const -0.9999987317275395 + f64.const 0.3855516016483307 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1007 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8988465674311579538646525e283 + f64.const -0.826369834614148 + f64.const -0.3695965111255646 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1008 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + f64.const -0.9999876894265599 + f64.const 0.23448343575000763 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1009 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8988465674311579538646525e283 + f64.const -0.826369834614148 + f64.const -0.3695965111255646 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1010 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.14 + f64.const -0.9999987317275395 + f64.const 0.3855516016483307 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1011 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.1415 + f64.const -0.9999999957076562 + f64.const -0.30608975887298584 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1012 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.141592 + f64.const -0.9999999999997864 + f64.const 0.15403328835964203 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1013 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.14159265 + f64.const -1 + f64.const -0.02901807427406311 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1014 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.1415926535 + f64.const -1 + f64.const -1.8155848010792397e-05 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1015 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.141592653589 + f64.const -1 + f64.const -1.4169914130945926e-09 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1016 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.14159265358979 + f64.const -1 + f64.const -2.350864897985184e-14 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1017 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.141592653589793 + f64.const -1 + f64.const -3.377158741883318e-17 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1018 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.57 + f64.const 7.963267107332633e-04 + f64.const 0.2968159317970276 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1019 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.570796 + f64.const 3.2679489653813835e-07 + f64.const -0.32570895552635193 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1020 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5707963267 + f64.const 9.489659630678013e-11 + f64.const -0.27245646715164185 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1021 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.57079632679489 + f64.const 6.722570487708307e-15 + f64.const -0.10747683793306351 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1022 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5707963267948966 + f64.const 6.123233995736766e-17 + f64.const 0.12148229777812958 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1023 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6700635199486106 + f64.const 0.7837822193016158 + f64.const -0.07278502732515335 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1024 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5343890189437553 + f64.const 0.8605799719039517 + f64.const -0.48434028029441833 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1025 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.43999702754890085 + f64.const 0.9047529293001976 + f64.const 0.029777472838759422 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1026 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9902840844687313 + f64.const 0.5484523364480768 + f64.const 0.19765280187129974 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1027 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.45381447534338915 + f64.const 0.8987813902263783 + f64.const -0.017724866047501564 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1028 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.4609888813583589 + f64.const 0.8956130474713057 + f64.const 0.36449819803237915 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1029 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9285434097956422 + f64.const 0.5990009794292984 + f64.const -0.2899416387081146 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1030 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9109092124488352 + f64.const 0.6130276692774378 + f64.const -0.49353134632110596 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1031 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.8328600650359556 + f64.const 0.6727624710046357 + f64.const -0.36606088280677795 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1032 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9536201252203433 + f64.const 0.5787346183487084 + f64.const -0.17089833319187164 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1033 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.8726590065457699 + f64.const 0.6427919144259047 + f64.const -0.2744986116886139 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1034 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.18100447535968447 + f64.const 0.9836633656884893 + f64.const 3.0195272993296385e-03 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1035 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.356194490349839 + f64.const -0.7071067812979126 + f64.const -0.48278746008872986 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1036 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.356194490372272 + f64.const -0.7071067813137752 + f64.const -0.4866050183773041 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1037 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.3561944902251115 + f64.const -0.707106781209717 + f64.const -0.3533952236175537 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1038 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.3561944903149996 + f64.const -0.7071067812732775 + f64.const -0.41911986470222473 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1039 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.3561944903603527 + f64.const -0.707106781305347 + f64.const -0.4706200063228607 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1040 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.3561944903826197 + f64.const -0.7071067813210922 + f64.const -0.30618351697921753 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1041 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.356194490371803 + f64.const -0.7071067813134436 + f64.const -0.30564820766448975 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1042 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.356194490399931 + f64.const -0.7071067813333329 + f64.const -0.38845571875572205 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1043 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.356194490260191 + f64.const -0.707106781234522 + f64.const -0.23796851933002472 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1044 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.3561944904043153 + f64.const -0.7071067813364332 + f64.const -0.3274589478969574 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1045 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.0943951024759446 + f64.const -0.5000000000716629 + f64.const -0.41711342334747314 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1046 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.09439510243324 + f64.const -0.5000000000346797 + f64.const -0.3566164970397949 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1047 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.0943951025133885 + f64.const -0.5000000001040902 + f64.const -0.2253485918045044 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1048 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.0943951025466707 + f64.const -0.5000000001329135 + f64.const -0.12982259690761566 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1049 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.094395102413896 + f64.const -0.5000000000179272 + f64.const -0.15886764228343964 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1050 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.0943951024223404 + f64.const -0.5000000000252403 + f64.const -0.266656756401062 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1051 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.0943951024960477 + f64.const -0.5000000000890726 + f64.const -0.4652077853679657 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1052 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.0943951025173315 + f64.const -0.500000000107505 + f64.const -0.46710994839668274 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1053 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.094395102405924 + f64.const -0.5000000000110234 + f64.const -0.2469603717327118 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1054 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.094395102428558 + f64.const -0.500000000030625 + f64.const -0.3799441158771515 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1055 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8.513210770864056 + f64.const -0.6125076939987759 + f64.const 0.4989966154098511 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1056 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 6.802886129801017 + f64.const 0.8679677961345452 + f64.const 0.4972165524959564 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1057 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.171925393086408 + f64.const -0.9682027440424544 + f64.const -0.49827584624290466 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1058 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8.854690112888573 + f64.const -0.8418535663818527 + f64.const 0.4974979758262634 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1059 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.213510813859608 + f64.const -0.9777659802838506 + f64.const -0.4995604455471039 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1060 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.782449081542151 + f64.const 0.07147156381293339 + f64.const 0.49858126044273376 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1061 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.500261332273616 + f64.const 0.34639017633458113 + f64.const -0.4996210038661957 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1062 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.121739418731588 + f64.const -0.9544341297541811 + f64.const 0.4982815086841583 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1063 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 6.784954020476316 + f64.const 0.8767332233166646 + f64.const -0.4988083839416504 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1064 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8.770846542666664 + f64.const -0.7936984117400705 + f64.const 0.4999682903289795 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1065 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.313225746154785e-10 + f64.const 1 + f64.const 0.001953125 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1068 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -9.313225746154785e-10 + f64.const 1 + f64.const 0.001953125 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1069 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072014e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1070 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.2250738585072014e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1071 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5e-324 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1072 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -5e-324 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1073 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1074 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1075 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1e-323 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1076 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.4e-323 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1077 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5.562684646268003e-309 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1078 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1125369292536007e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1079 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072004e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1080 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507201e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1081 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507202e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1082 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072024e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1083 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.4501477170144003e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1084 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.450147717014403e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1085 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.450147717014406e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1086 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8.900295434028806e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1087 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.450580596923828e-09 + f64.const 1 + f64.const 0.125 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1088 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.4901161193847656e-08 + f64.const 0.9999999999999999 + f64.const -1.850372590034581e-17 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1089 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.470348358154297e-08 + f64.const 0.999999999999999 + f64.const -1.4988010832439613e-15 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1090 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1e-323 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1091 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.4e-323 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1092 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -5.562684646268003e-309 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1093 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.1125369292536007e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1094 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.2250738585072004e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1095 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.225073858507201e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1096 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.225073858507202e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1097 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.2250738585072024e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1098 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.4501477170144003e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1099 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.450147717014403e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1100 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.450147717014406e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1101 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.900295434028806e-308 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1102 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.450580596923828e-09 + f64.const 1 + f64.const 0.125 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1103 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.4901161193847656e-08 + f64.const 0.9999999999999999 + f64.const -1.850372590034581e-17 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1104 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.470348358154297e-08 + f64.const 0.999999999999999 + f64.const -1.4988010832439613e-15 + i32.const 1 + call $std/math/test_cos + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1105 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5707963267948966 + call $~lib/math/NativeMath.cos + f64.const 1.5707963267948966 + call $~lib/bindings/Math/cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1107 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.141592653589793 + call $~lib/math/NativeMath.cos + f64.const 3.141592653589793 + call $~lib/bindings/Math/cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1108 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3141592653589793231804887e66 + call $~lib/math/NativeMath.cos + f64.const 3141592653589793231804887e66 + call $~lib/bindings/Math/cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1109 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.3283064365386963e-10 + call $~lib/math/NativeMath.cos + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1113 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.3283064365386963e-10 + call $~lib/math/NativeMath.cos + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1114 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.15707963267948966 + call $~lib/math/NativeMath.cos + f64.const 0.9876883405951378 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1117 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7812504768371582 + call $~lib/math/NativeMath.cos + f64.const 0.7100335477927638 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1119 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.78125 + call $~lib/math/NativeMath.cos + f64.const 0.7100338835660797 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1120 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9238795325112867 + f64.const 0.39269908169872414 + call $~lib/math/NativeMath.cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1123 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9238795325112867 + f64.const -0.39269908169872414 + call $~lib/math/NativeMath.cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1125 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.725290298461914e-09 + call $~lib/math/NativeMath.cos + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1128 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9689124217106447 + f64.const 0.25 + call $~lib/math/NativeMath.cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1130 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.8775825618903728 + f64.const 0.5 + call $~lib/math/NativeMath.cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1131 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7073882691671998 + f64.const 0.785 + call $~lib/math/NativeMath.cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1132 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 6.123233995736766e-17 + f64.const 1.5707963267948966 + call $~lib/math/NativeMath.cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1134 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7071067811865474 + f64.const 5.497787143782138 + call $~lib/math/NativeMath.cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1136 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7071067811865477 + f64.const 7.0685834705770345 + call $~lib/math/NativeMath.cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1137 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.7071067811865467 + f64.const 8.63937979737193 + call $~lib/math/NativeMath.cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1138 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.7071067811865471 + f64.const 10.210176124166829 + call $~lib/math/NativeMath.cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1139 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9367521275331447 + f64.const 1e6 + call $~lib/math/NativeMath.cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1140 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -3.435757038074824e-12 + f64.const 1647097.7583689587 + call $~lib/math/NativeMath.cos + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1141 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const -0.21126316487789154 + f32.const 0.48328569531440735 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1150 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const -0.3589562177658081 + f32.const 0.042505208402872086 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1151 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -0.5033331513404846 + f32.const -0.1386195719242096 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1152 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const 0.9692853689193726 + f32.const 0.1786951720714569 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1153 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const -0.9875878691673279 + f32.const 0.1389600932598114 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1154 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.7887731194496155 + f32.const 0.2989593744277954 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1155 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const 0.918469250202179 + f32.const 0.24250665307044983 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1156 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.8463190197944641 + f32.const -0.24033240973949432 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1157 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.7150139212608337 + f32.const -0.3372635245323181 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1158 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const 0.7783495187759399 + f32.const 0.16550153493881226 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1159 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1162 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1163 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1164 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1165 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1166 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.862645149230957e-09 + f32.const 1 + f32.const 1.4551915228366852e-11 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1169 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.862645149230957e-09 + f32.const 1 + f32.const 1.4551915228366852e-11 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1170 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1754943508222875e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1171 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754943508222875e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1172 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.401298464324817e-45 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1173 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.401298464324817e-45 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1174 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.802596928649634e-45 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1175 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.2611686178923354e-44 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1176 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.938735877055719e-39 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1177 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 5.877471754111438e-39 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1178 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1754940705625946e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1179 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1754942106924411e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1180 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.175494490952134e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1181 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1754946310819804e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1182 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.3509880009953429e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1183 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.350988701644575e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1184 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.3509895424236536e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1185 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.70197740328915e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1186 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.450580596923828e-09 + f32.const 1 + f32.const 2.3283064365386963e-10 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1187 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.000244140625 + f32.const 1 + f32.const 0.25 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1188 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.00048828125 + f32.const 0.9999998807907104 + f32.const -3.973643103449831e-08 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1189 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.0009765625 + f32.const 0.9999995231628418 + f32.const -6.357828397085541e-07 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1190 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.802596928649634e-45 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1191 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.2611686178923354e-44 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1192 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.938735877055719e-39 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1193 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -5.877471754111438e-39 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1194 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754940705625946e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1195 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754942106924411e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1196 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.175494490952134e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1197 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754946310819804e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1198 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.3509880009953429e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1199 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.350988701644575e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1200 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.3509895424236536e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1201 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -4.70197740328915e-38 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1202 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -7.450580596923828e-09 + f32.const 1 + f32.const 2.3283064365386963e-10 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1203 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.000244140625 + f32.const 1 + f32.const 0.25 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1204 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.00048828125 + f32.const 0.9999998807907104 + f32.const -3.973643103449831e-08 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1205 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.0009765625 + f32.const 0.9999995231628418 + f32.const -6.357828397085541e-07 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1206 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 255.99993896484375 + f32.const -0.03985174745321274 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1209 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 5033165 + f32.const 0.8471871614456177 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1210 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 421657440 + f32.const 0.6728929281234741 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1211 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2147483392 + f32.const 0.9610780477523804 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1212 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 68719476736 + f32.const 0.1694190502166748 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1213 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 549755813888 + f32.const 0.20735950767993927 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1214 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 3402823466385288598117041e14 + f32.const 0.8530210256576538 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1215 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -255.99993896484375 + f32.const -0.03985174745321274 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1216 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -5033165 + f32.const 0.8471871614456177 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1217 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -421657440 + f32.const 0.6728929281234741 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1218 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2147483392 + f32.const 0.9610780477523804 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1219 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -68719476736 + f32.const 0.1694190502166748 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1220 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -549755813888 + f32.const 0.20735950767993927 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1221 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -3402823466385288598117041e14 + f32.const 0.8530210256576538 + f32.const 0 + i32.const 1 + call $std/math/test_cosf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1222 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const 1593.5209938862329 + f64.const -0.38098856806755066 + i32.const 1 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1233 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 38.56174928426729 + f64.const -0.2712278366088867 + i32.const 1 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1234 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const 2182.630979595893 + f64.const 0.0817827582359314 + i32.const 1 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1235 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const 343.273849250879 + f64.const -0.429940402507782 + i32.const 1 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1236 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 5291.779170005587 + f64.const -0.1592995822429657 + i32.const 1 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1237 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 1.2272321957342842 + f64.const 0.23280741274356842 + i32.const 1 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1238 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const 1.083808541871197 + f64.const -0.3960916996002197 + i32.const 1 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1239 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 1.1619803583175077 + f64.const 0.37748390436172485 + i32.const 1 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1240 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 1.3149236876276706 + f64.const 0.43587008118629456 + i32.const 1 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1241 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const 1.2393413245934533 + f64.const 0.10201606154441833 + i32.const 1 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1242 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1245 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1246 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1247 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1248 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_cosh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1249 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const 1593.5216064453125 + f32.const 0.26242581009864807 + i32.const 1 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1258 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 38.56174087524414 + f32.const -0.08168885856866837 + i32.const 1 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1259 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const 2182.631103515625 + f32.const -0.02331414446234703 + i32.const 1 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1260 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const 343.2738037109375 + f32.const 0.20081493258476257 + i32.const 1 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1261 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 5291.78173828125 + f32.const 0.36286723613739014 + i32.const 1 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1262 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 1.2272322177886963 + f32.const 0.32777416706085205 + i32.const 1 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1263 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const 1.0838085412979126 + f32.const -0.039848703891038895 + i32.const 1 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1264 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 1.161980390548706 + f32.const 0.15274477005004883 + i32.const 1 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1265 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 1.314923644065857 + f32.const -0.2387111485004425 + i32.const 1 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1266 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const 1.2393412590026855 + f32.const -0.45791932940483093 + i32.const 1 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1267 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1270 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1271 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1272 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1273 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_coshf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1274 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const 3.137706068161745e-04 + f64.const -0.2599197328090668 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1286 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 77.11053017112141 + f64.const -0.02792675793170929 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1287 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const 2.290813384916323e-04 + f64.const -0.24974334239959717 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1288 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const 1.4565661260931588e-03 + f64.const -0.4816822409629822 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1289 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 10583.558245524993 + f64.const 0.17696762084960938 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1290 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 1.9386384525571998 + f64.const -0.4964246451854706 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1291 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const 0.6659078892838025 + f64.const -0.10608318448066711 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1292 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 1.7537559518626311 + f64.const -0.39162111282348633 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1293 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 2.1687528885129246 + f64.const -0.2996125817298889 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1294 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const 0.5072437089402843 + f64.const 0.47261738777160645 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1295 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1298 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1299 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 2.718281828459045 + f64.const -0.3255307376384735 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1300 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 0.36787944117144233 + f64.const 0.22389651834964752 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1301 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1302 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1303 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1304 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0397214889526365 + f64.const 2.828429155876411 + f64.const 0.18803080916404724 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1305 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.0397214889526365 + f64.const 0.35355313670217847 + f64.const 0.2527272403240204 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1306 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0397210121154785 + f64.const 2.8284278071766122 + f64.const -0.4184139370918274 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1307 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0397214889526367 + f64.const 2.8284291558764116 + f64.const -0.22618377208709717 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1308 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5e-324 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1311 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -5e-324 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1312 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 709.782712893384 + f64.const 1797693134862273196746681e284 + f64.const -0.10568465292453766 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1314 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 709.7827128933841 + f64.const inf + f64.const 0 + i32.const 17 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1321 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -745.1332191019411 + f64.const 5e-324 + f64.const 0.5 + i32.const 9 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1322 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -745.1332191019412 + f64.const 0 + f64.const -0.5 + i32.const 9 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1329 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -708.3964185322641 + f64.const 2.2250738585072626e-308 + f64.const 0.26172348856925964 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1336 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -708.3964185322642 + f64.const 2.2250738585070097e-308 + f64.const 2.2250738585070097e-308 + i32.const 9 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1343 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5006933289508785 + f64.const 1.6498647732549399 + f64.const 0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1350 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.628493326460252 + f64.const 1.8747837631658781 + f64.const 0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1357 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.837522455340574 + f64.const 2.3106351774748006 + f64.const -0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1364 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.8504909932810999 + f64.const 2.3407958848710777 + f64.const 0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1370 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.6270060846924657 + f64.const 5.088617001442459 + f64.const 0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1376 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.6744336219614115 + f64.const 5.335772228886831 + f64.const 0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1382 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 6.657914718791208 + f64.const 778.924964819056 + f64.const 0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1389 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 11.022872793631722 + f64.const 61259.41271820104 + f64.const 0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1396 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 11.411195701885317 + f64.const 90327.36165653409 + f64.const 0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1403 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 11.794490387560606 + f64.const 132520.20290772576 + f64.const 0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1410 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 412.83872756953286 + f64.const 1965989977109266413433084e155 + f64.const 0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1417 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 510.87569028483415 + f64.const 7421526272656495968225491e197 + f64.const -0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1424 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.6589841439772853e-14 + f64.const 0.9999999999999735 + f64.const 0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1431 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.7144952952085447e-14 + f64.const 0.9999999999999728 + f64.const -0.5 + i32.const 1 + call $std/math/test_exp + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1438 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const 3.1377049162983894e-04 + f32.const -0.030193336308002472 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1452 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 77.11051177978516 + f32.const -0.2875460684299469 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1453 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const 2.2908132814336568e-04 + f32.const 0.2237040400505066 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1454 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const 1.4565663877874613e-03 + f32.const 0.36469703912734985 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1455 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 10583.5634765625 + f32.const 0.45962104201316833 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1456 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 1.93863844871521 + f32.const 0.3568260967731476 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1457 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const 0.6659078598022461 + f32.const -0.38294991850852966 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1458 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 1.753756046295166 + f32.const 0.44355490803718567 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1459 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 2.168752908706665 + f32.const 0.24562469124794006 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1460 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const 0.5072436928749084 + f32.const -0.3974292278289795 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1461 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1464 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1465 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 2.7182817459106445 + f32.const -0.3462330996990204 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1466 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 0.3678794503211975 + f32.const 0.3070148527622223 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1467 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1468 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1469 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1470 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 88.72283172607422 + f32.const 340279851902147610656242e15 + f32.const -0.09067153930664062 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1471 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 88.72283935546875 + f32.const inf + f32.const 0 + i32.const 17 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1472 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -103.97207641601562 + f32.const 1.401298464324817e-45 + f32.const 0.49999967217445374 + i32.const 9 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1473 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -103.97208404541016 + f32.const 0 + f32.const -0.49999651312828064 + i32.const 9 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1474 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.3465735614299774 + f32.const 1.4142135381698608 + f32.const 0.13922421634197235 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1475 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.3465735912322998 + f32.const 1.4142135381698608 + f32.const -0.21432916820049286 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1476 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.3465736210346222 + f32.const 1.4142136573791504 + f32.const 0.43211743235588074 + i32.const 1 + call $std/math/test_expf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1477 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const -0.9996862293931839 + f64.const -0.2760058343410492 + i32.const 1 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1489 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 76.11053017112141 + f64.const -0.02792675793170929 + i32.const 1 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1490 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -0.9997709186615084 + f64.const 0.10052496194839478 + i32.const 1 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1491 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const -0.9985434338739069 + f64.const -0.27437829971313477 + i32.const 1 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1492 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 10582.558245524993 + f64.const 0.17696762084960938 + i32.const 1 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1493 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.9386384525571999 + f64.const 0.007150684483349323 + i32.const 1 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1494 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0.3340921107161975 + f64.const -0.21216636896133423 + i32.const 1 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1495 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.7537559518626312 + f64.const 0.21675777435302734 + i32.const 1 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1496 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 1.1687528885129248 + f64.const 0.4007748067378998 + i32.const 1 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1497 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -0.4927562910597158 + f64.const -0.05476519837975502 + i32.const 1 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1498 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1501 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1502 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1.7182818284590453 + f64.const 0.348938524723053 + i32.const 1 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1503 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -0.6321205588285577 + f64.const 0.11194825917482376 + i32.const 1 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1504 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1505 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1506 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1507 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507201e-308 + f64.const 2.225073858507201e-308 + f64.const 0 + i32.const 9 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1508 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.225073858507201e-308 + f64.const -2.225073858507201e-308 + f64.const 0 + i32.const 9 + call $std/math/test_expm1 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1509 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const -0.9996862411499023 + f32.const -0.19532723724842072 + i32.const 1 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1518 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 76.11051177978516 + f32.const -0.2875460684299469 + i32.const 1 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1519 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -0.9997709393501282 + f32.const -0.34686920046806335 + i32.const 1 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1520 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const -0.9985434412956238 + f32.const -0.1281939446926117 + i32.const 1 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1521 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 10582.5634765625 + f32.const 0.45962104201316833 + i32.const 1 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1522 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.9386383891105652 + f32.const -0.28634780645370483 + i32.const 1 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1523 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0.3340921103954315 + f32.const 0.23410017788410187 + i32.const 1 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1524 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.7537559866905212 + f32.const -0.11289017647504807 + i32.const 1 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1525 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 1.168752908706665 + f32.const 0.4912493824958801 + i32.const 1 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1526 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -0.49275627732276917 + f32.const 0.20514154434204102 + i32.const 1 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1527 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1530 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1531 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1.718281865119934 + f32.const 0.3075338304042816 + i32.const 1 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1532 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -0.6321205496788025 + f32.const 0.15350742638111115 + i32.const 1 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1533 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1534 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1535 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_expm1f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1536 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const -9 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1548 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 4 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1549 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -9 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1550 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const -7 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1551 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 9 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1552 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1553 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1554 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1555 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1556 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1557 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1560 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1561 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1562 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1563 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1564 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1565 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1566 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1567 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1568 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0000152587890625 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1569 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.0000152587890625 + f64.const -2 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1570 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9999923706054688 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1571 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.9999923706054688 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1572 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.888609052210118e-31 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1573 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.888609052210118e-31 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_floor + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1574 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const -9 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1583 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 4 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1584 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -9 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1585 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const -7 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1586 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 9 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1587 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1588 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -1 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1589 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1590 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1591 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -1 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1592 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1595 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1596 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1597 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1598 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1599 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1600 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1601 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1602 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const -1 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1603 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.0000152587890625 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1604 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.0000152587890625 + f32.const -2 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1605 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.9999923706054688 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1606 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.9999923706054688 + f32.const -1 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1607 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.888609052210118e-31 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1608 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -7.888609052210118e-31 + f32.const -1 + f32.const 0 + i32.const 1 + call $std/math/test_floorf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1609 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const 4.535662560676869 + f64.const 9.25452742288464 + f64.const -0.31188681721687317 + i32.const 1 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1621 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const -8.88799136300345 + f64.const 9.893305808328252 + f64.const 0.4593673348426819 + i32.const 1 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1622 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -2.763607337379588 + f64.const 8.825301797432132 + f64.const -0.1701754331588745 + i32.const 1 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1623 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const 4.567535276842744 + f64.const 7.970265885519092 + f64.const -0.3176782727241516 + i32.const 1 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1624 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 4.811392084359796 + f64.const 10.441639651824575 + f64.const -0.2693633437156677 + i32.const 1 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1625 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.450045556060236 + f64.const 0.6620717923376739 + f64.const 6.483936052542593 + f64.const 0.35618898272514343 + i32.const 1 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1626 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.858890253041697 + f64.const 0.05215452675006225 + f64.const 7.859063309581766 + f64.const 0.08044655621051788 + i32.const 1 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1627 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.792054511984896 + f64.const 7.67640268511754 + f64.const 7.717156764899584 + f64.const 0.05178084969520569 + i32.const 1 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1628 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.615702673197924 + f64.const 2.0119025790324803 + f64.const 2.104006123874314 + f64.const -0.0918039008975029 + i32.const 1 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1629 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5587586823609152 + f64.const 0.03223983060263804 + f64.const 0.5596880129062913 + f64.const 0.1383407711982727 + i32.const 1 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1630 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3 + f64.const 4 + f64.const 5 + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1633 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -3 + f64.const 4 + f64.const 5 + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1634 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4 + f64.const 3 + f64.const 5 + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1635 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4 + f64.const -3 + f64.const 5 + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1636 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -3 + f64.const -4 + f64.const 5 + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1637 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + f64.const 0 + f64.const 1797693134862315708145274e284 + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1638 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + f64.const -0 + f64.const 1797693134862315708145274e284 + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1639 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5e-324 + f64.const 0 + f64.const 5e-324 + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1640 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5e-324 + f64.const -0 + f64.const 5e-324 + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1641 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 1 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1642 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1643 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const nan:0x8000000000000 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1644 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1645 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 1 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1646 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1647 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1648 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const -inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1649 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const 1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1650 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_hypot + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1651 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const 4.535662651062012 + f32.const 9.254528045654297 + f32.const 0.2735958993434906 + i32.const 1 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1660 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const -8.887990951538086 + f32.const 9.893305778503418 + f32.const 0.4530770778656006 + i32.const 1 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1661 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -2.7636072635650635 + f32.const 8.825302124023438 + f32.const 0.30755728483200073 + i32.const 1 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1662 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const 4.567535400390625 + f32.const 7.970265865325928 + f32.const 0.06785223633050919 + i32.const 1 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1663 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 4.811392307281494 + f32.const 10.44163990020752 + f32.const -0.26776307821273804 + i32.const 1 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1664 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.450045585632324 + f32.const 0.6620717644691467 + f32.const 6.483936309814453 + f32.const 0.48381292819976807 + i32.const 1 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1665 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.858890056610107 + f32.const 0.052154526114463806 + f32.const 7.859063148498535 + f32.const 0.07413065433502197 + i32.const 1 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1666 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.7920545339584351 + f32.const 7.676402568817139 + f32.const 7.717156887054443 + f32.const 0.4940592646598816 + i32.const 1 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1667 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6157026886940002 + f32.const 2.0119025707244873 + f32.const 2.104006052017212 + f32.const -0.287089467048645 + i32.const 1 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1668 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5587586760520935 + f32.const 0.03223983198404312 + f32.const 0.5596880316734314 + f32.const 0.4191940724849701 + i32.const 1 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1669 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 3 + f32.const 4 + f32.const 5 + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1672 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -3 + f32.const 4 + f32.const 5 + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1673 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4 + f32.const 3 + f32.const 5 + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1674 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4 + f32.const -3 + f32.const 5 + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1675 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -3 + f32.const -4 + f32.const 5 + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1676 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 3402823466385288598117041e14 + f32.const 0 + f32.const 3402823466385288598117041e14 + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1677 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 3402823466385288598117041e14 + f32.const -0 + f32.const 3402823466385288598117041e14 + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1678 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.401298464324817e-45 + f32.const 0 + f32.const 1.401298464324817e-45 + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1679 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.401298464324817e-45 + f32.const -0 + f32.const 1.401298464324817e-45 + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1680 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 1 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1681 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1682 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const nan:0x400000 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1683 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1684 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 1 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1685 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1686 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1687 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const -inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1688 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const 1 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1689 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_hypotf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1690 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1702 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 1.4690809584224322 + f64.const -0.3412533402442932 + i32.const 1 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1703 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1704 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1705 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 2.2264658498795615 + f64.const 0.3638114035129547 + i32.const 1 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1706 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const -0.4125110252365137 + f64.const -0.29108747839927673 + i32.const 1 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1707 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1708 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const -0.5766810183195862 + f64.const -0.10983199626207352 + i32.const 1 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1709 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const -0.2559866591263865 + f64.const -0.057990044355392456 + i32.const 1 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1710 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1711 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -inf + f64.const 0 + i32.const 4 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1714 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -inf + f64.const 0 + i32.const 4 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1715 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.888609052210118e-31 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1716 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1717 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1718 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1719 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1720 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_log + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1721 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -inf + f32.const 0 + i32.const 4 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1730 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -inf + f32.const 0 + i32.const 4 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1731 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -7.888609052210118e-31 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1732 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1733 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1734 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1735 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1736 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1737 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -inf + f32.const 0 + i32.const 4 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1740 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -inf + f32.const 0 + i32.const 4 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1741 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -7.888609052210118e-31 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1742 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1743 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1744 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1745 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1746 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_logf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1747 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1759 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 0.6380137537120029 + f64.const -0.2088824063539505 + i32.const 1 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1760 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1761 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1762 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 0.9669418327487274 + f64.const -0.06120431795716286 + i32.const 1 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1763 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const -0.17915126198447093 + f64.const 0.39090874791145325 + i32.const 1 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1764 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1765 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const -0.25044938407454437 + f64.const -0.3046841621398926 + i32.const 1 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1766 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const -0.11117359349943837 + f64.const -0.31503361463546753 + i32.const 1 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1767 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1768 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -inf + f64.const 0 + i32.const 4 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1771 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -inf + f64.const 0 + i32.const 4 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1772 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.888609052210118e-31 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1773 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1774 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1775 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1776 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1777 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_log10 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1778 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1787 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 0.6380137205123901 + f32.const -0.20476758480072021 + i32.const 1 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1788 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1789 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1790 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 0.9669418334960938 + f32.const -0.34273025393486023 + i32.const 1 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1791 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const -0.1791512817144394 + f32.const -0.27078554034233093 + i32.const 1 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1792 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1793 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const -0.25044935941696167 + f32.const 0.2126826047897339 + i32.const 1 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1794 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const -0.1111735999584198 + f32.const 0.46515095233917236 + i32.const 1 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1795 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1796 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -inf + f32.const 0 + i32.const 4 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1799 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -inf + f32.const 0 + i32.const 4 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1800 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -7.888609052210118e-31 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1801 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1802 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1803 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1804 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1805 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_log10f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1806 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1818 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 1.6762064170601734 + f64.const 0.46188199520111084 + i32.const 1 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1819 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1820 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1821 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 2.3289404168523826 + f64.const -0.411114901304245 + i32.const 1 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1822 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.5080132114992477 + f64.const -0.29306045174598694 + i32.const 1 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1823 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0.5218931811663979 + f64.const -0.25825726985931396 + i32.const 1 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1824 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.4458132279488102 + f64.const -0.13274887204170227 + i32.const 1 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1825 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.5733227294648414 + f64.const 0.02716583013534546 + i32.const 1 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1826 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -1.1355782978128564 + f64.const 0.2713092863559723 + i32.const 1 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1827 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1830 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1831 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.888609052210118e-31 + f64.const -7.888609052210118e-31 + f64.const 1.7763568394002505e-15 + i32.const 1 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1832 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0.6931471805599453 + f64.const -0.2088811695575714 + i32.const 1 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1833 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -inf + f64.const 0 + i32.const 4 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1834 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1835 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1836 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_log1p + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1837 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1846 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 1.676206350326538 + f32.const -0.23014859855175018 + i32.const 1 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1847 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1848 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1849 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 2.3289403915405273 + f32.const -0.29075589776039124 + i32.const 1 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1850 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.5080131888389587 + f32.const -0.1386766880750656 + i32.const 1 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1851 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0.5218932032585144 + f32.const -0.08804433047771454 + i32.const 1 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1852 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.44581323862075806 + f32.const -0.15101368725299835 + i32.const 1 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1853 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.5733227133750916 + f32.const -0.10264533013105392 + i32.const 1 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1854 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -1.1355782747268677 + f32.const -0.19879481196403503 + i32.const 1 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1855 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1858 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1859 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -7.888609052210118e-31 + f32.const -7.888609052210118e-31 + f32.const 3.308722450212111e-24 + i32.const 1 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1860 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0.6931471824645996 + f32.const 0.031954795122146606 + i32.const 1 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1861 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -inf + f32.const 0 + i32.const 4 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1862 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1863 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1864 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1865 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754942106924411e-38 + f32.const -1.1754942106924411e-38 + f32.const 4.930380657631324e-32 + i32.const 9 + call $std/math/test_log1pf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1866 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1878 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 2.1194358133804485 + f64.const -0.10164877772331238 + i32.const 1 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1879 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1880 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1881 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 3.2121112403298744 + f64.const -0.15739446878433228 + i32.const 1 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1882 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const -0.5951276104207402 + f64.const 0.3321485221385956 + i32.const 1 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1883 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1884 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const -0.8319748453044644 + f64.const 0.057555437088012695 + i32.const 1 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1885 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const -0.36931068365537134 + f64.const -0.19838279485702515 + i32.const 1 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1886 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1887 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -inf + f64.const 0 + i32.const 4 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1890 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -inf + f64.const 0 + i32.const 4 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1891 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.888609052210118e-31 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1892 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1893 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1894 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1895 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1896 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_log2 + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1897 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1906 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 2.1194357872009277 + f32.const 0.18271538615226746 + i32.const 1 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1907 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1908 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1909 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 3.212111234664917 + f32.const -0.3188050389289856 + i32.const 1 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1910 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const -0.5951276421546936 + f32.const 0.34231460094451904 + i32.const 1 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1911 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1912 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const -0.8319748044013977 + f32.const -0.33473604917526245 + i32.const 1 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1913 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const -0.3693107068538666 + f32.const 0.3278401792049408 + i32.const 1 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1914 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1915 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -inf + f32.const 0 + i32.const 4 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1918 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -inf + f32.const 0 + i32.const 4 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1919 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -7.888609052210118e-31 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1920 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1921 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1922 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1923 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1924 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_log2f + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1925 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const 4.535662560676869 + f64.const 4.535662560676869 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1937 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const -8.88799136300345 + f64.const 4.345239849338305 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1938 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -2.763607337379588 + f64.const -2.763607337379588 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1939 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const 4.567535276842744 + f64.const 4.567535276842744 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1940 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 4.811392084359796 + f64.const 9.267056966972586 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1941 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.450045556060236 + f64.const 0.6620717923376739 + f64.const 0.6620717923376739 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1942 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.858890253041697 + f64.const 0.05215452675006225 + f64.const 7.858890253041697 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1943 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.792054511984896 + f64.const 7.67640268511754 + f64.const 7.67640268511754 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1944 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.615702673197924 + f64.const 2.0119025790324803 + f64.const 2.0119025790324803 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1945 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5587586823609152 + f64.const 0.03223983060263804 + f64.const 0.03223983060263804 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1946 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1949 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1950 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1951 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1952 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1953 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1954 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 1 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1955 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1956 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const 1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1957 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1958 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1959 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const -1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1960 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const -1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1961 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1962 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1963 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -1 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1964 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1965 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1966 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1967 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1968 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1969 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1970 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1971 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1972 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1973 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1974 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -inf + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1975 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1976 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1977 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1978 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 0 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1979 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1980 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1981 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1982 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -0 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1983 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1984 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1985 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 2 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1986 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -0.5 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1987 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1988 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 2 + f64.const 2 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1989 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -0.5 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1990 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1991 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1992 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1993 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1994 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1995 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1996 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1997 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1998 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -inf + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 1999 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -inf + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2000 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2001 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2002 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.75 + f64.const 0.5 + f64.const 1.75 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2003 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.75 + f64.const 0.5 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2004 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.75 + f64.const -0.5 + f64.const 1.75 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2005 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.75 + f64.const -0.5 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_max + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2006 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const 4.535662651062012 + f32.const 4.535662651062012 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2015 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const -8.887990951538086 + f32.const 4.345239639282227 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2016 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -2.7636072635650635 + f32.const -2.7636072635650635 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2017 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const 4.567535400390625 + f32.const 4.567535400390625 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2018 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 4.811392307281494 + f32.const 9.267057418823242 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2019 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.450045585632324 + f32.const 0.6620717644691467 + f32.const 0.6620717644691467 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2020 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.858890056610107 + f32.const 0.052154526114463806 + f32.const 7.858890056610107 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2021 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.7920545339584351 + f32.const 7.676402568817139 + f32.const 7.676402568817139 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2022 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6157026886940002 + f32.const 2.0119025707244873 + f32.const 2.0119025707244873 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2023 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5587586760520935 + f32.const 0.03223983198404312 + f32.const 0.03223983198404312 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2024 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2027 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2028 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2029 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2030 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2031 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2032 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 1 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2033 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2034 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const 1 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2035 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2036 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2037 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const -1 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2038 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const -1 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2039 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2040 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2041 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -1 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2042 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2043 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2044 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2045 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2046 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2047 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2048 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2049 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2050 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2051 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2052 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -inf + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2053 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2054 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2055 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2056 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 0 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2057 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2058 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2059 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2060 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -0 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2061 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2062 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2063 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 2 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2064 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -0.5 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2065 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2066 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 2 + f32.const 2 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2067 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -0.5 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2068 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2069 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2070 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2071 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2072 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2073 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2074 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2075 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2076 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -inf + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2077 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -inf + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2078 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2079 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2080 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.75 + f32.const 0.5 + f32.const 1.75 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2081 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.75 + f32.const 0.5 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2082 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.75 + f32.const -0.5 + f32.const 1.75 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2083 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.75 + f32.const -0.5 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_maxf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2084 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const 4.535662560676869 + f64.const -8.06684839057968 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2096 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const -8.88799136300345 + f64.const -8.88799136300345 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2097 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -2.763607337379588 + f64.const -8.38143342755525 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2098 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const 4.567535276842744 + f64.const -6.531673581913484 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2099 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 4.811392084359796 + f64.const 4.811392084359796 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2100 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.450045556060236 + f64.const 0.6620717923376739 + f64.const -6.450045556060236 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2101 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.858890253041697 + f64.const 0.05215452675006225 + f64.const 0.05215452675006225 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2102 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.792054511984896 + f64.const 7.67640268511754 + f64.const -0.792054511984896 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2103 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.615702673197924 + f64.const 2.0119025790324803 + f64.const 0.615702673197924 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2104 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5587586823609152 + f64.const 0.03223983060263804 + f64.const -0.5587586823609152 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2105 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2108 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2109 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const 1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2110 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const 1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2111 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2112 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2113 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2114 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 1 + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2115 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const 1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2116 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2117 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2118 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2119 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2120 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2121 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2122 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2123 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -1 + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2124 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2125 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2126 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2127 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2128 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2129 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2130 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2131 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2132 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const inf + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2133 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2134 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2135 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2136 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 0 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2137 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2138 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 0 + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2139 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2140 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -0 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2141 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2142 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -0 + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2143 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2144 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 2 + f64.const 2 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2145 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -0.5 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2146 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2147 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 2 + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2148 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -0.5 + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2149 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2150 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2151 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2152 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2153 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const inf + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2154 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const inf + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2155 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2156 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2157 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2158 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2159 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2160 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2161 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.75 + f64.const 0.5 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2162 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.75 + f64.const 0.5 + f64.const -1.75 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2163 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.75 + f64.const -0.5 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2164 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.75 + f64.const -0.5 + f64.const -1.75 + f64.const 0 + i32.const 0 + call $std/math/test_min + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2165 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const 4.535662651062012 + f32.const -8.066848754882812 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2174 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const -8.887990951538086 + f32.const -8.887990951538086 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2175 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -2.7636072635650635 + f32.const -8.381433486938477 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2176 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const 4.567535400390625 + f32.const -6.531673431396484 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2177 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 4.811392307281494 + f32.const 4.811392307281494 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2178 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.450045585632324 + f32.const 0.6620717644691467 + f32.const -6.450045585632324 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2179 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.858890056610107 + f32.const 0.052154526114463806 + f32.const 0.052154526114463806 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2180 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.7920545339584351 + f32.const 7.676402568817139 + f32.const -0.7920545339584351 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2181 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6157026886940002 + f32.const 2.0119025707244873 + f32.const 0.6157026886940002 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2182 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5587586760520935 + f32.const 0.03223983198404312 + f32.const -0.5587586760520935 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2183 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2186 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2187 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const 1 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2188 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const 1 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2189 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2190 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2191 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2192 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 1 + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2193 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const 1 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2194 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2195 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2196 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2197 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2198 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2199 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2200 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2201 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -1 + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2202 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2203 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2204 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2205 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2206 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2207 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2208 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2209 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2210 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const inf + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2211 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2212 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2213 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2214 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 0 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2215 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2216 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 0 + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2217 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2218 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -0 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2219 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2220 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -0 + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2221 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2222 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 2 + f32.const 2 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2223 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -0.5 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2224 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2225 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 2 + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2226 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -0.5 + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2227 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2228 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2229 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2230 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2231 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const inf + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2232 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const inf + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2233 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2234 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2235 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2236 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2237 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2238 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2239 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.75 + f32.const 0.5 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2240 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.75 + f32.const 0.5 + f32.const -1.75 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2241 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.75 + f32.const -0.5 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2242 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.75 + f32.const -0.5 + f32.const -1.75 + f32.const 0 + i32.const 0 + call $std/math/test_minf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2243 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const 4.535662560676869 + f64.const -3.531185829902812 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2257 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const -8.88799136300345 + f64.const 4.345239849338305 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2258 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -2.763607337379588 + f64.const -0.09061141541648476 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2259 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const 4.567535276842744 + f64.const -1.9641383050707404 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2260 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 4.811392084359796 + f64.const 4.45566488261279 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2261 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.450045556060236 + f64.const 0.6620717923376739 + f64.const -0.4913994250211714 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2262 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.858890253041697 + f64.const 0.05215452675006225 + f64.const 0.035711240532359426 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2263 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.792054511984896 + f64.const 7.67640268511754 + f64.const -0.792054511984896 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2264 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.615702673197924 + f64.const 2.0119025790324803 + f64.const 0.615702673197924 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2265 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5587586823609152 + f64.const 0.03223983060263804 + f64.const -0.0106815621160685 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2266 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2269 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2270 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const 1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2271 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const 1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2272 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2273 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2274 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5 + f64.const 1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2275 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.5 + f64.const 1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2276 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2 + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2277 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2 + f64.const 1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2278 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2279 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2280 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const 1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2281 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2282 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2283 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const -1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2284 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const -1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2285 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2286 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2287 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5 + f64.const -1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2288 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.5 + f64.const -1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2289 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2 + f64.const -1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2290 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2 + f64.const -1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2291 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2292 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2293 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2294 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2295 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2296 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2297 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2298 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2299 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2300 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2301 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const inf + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2302 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -inf + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2303 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2304 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2305 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2306 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2307 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2308 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2309 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2310 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2311 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2312 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2313 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 2 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2314 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -0.5 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2315 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2316 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 2 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2317 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -0.5 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2318 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2319 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2320 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2321 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2322 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const inf + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2323 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const inf + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2324 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2325 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2326 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -inf + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2327 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -inf + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2328 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2329 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2330 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.75 + f64.const 0.5 + f64.const 0.25 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2331 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.75 + f64.const 0.5 + f64.const -0.25 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2332 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.75 + f64.const -0.5 + f64.const 0.25 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2333 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.75 + f64.const -0.5 + f64.const -0.25 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2334 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072014e-308 + f64.const 2.2250738585072014e-308 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2337 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072014e-308 + f64.const -2.2250738585072014e-308 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2338 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.2250738585072014e-308 + f64.const 2.2250738585072014e-308 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2339 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.2250738585072014e-308 + f64.const -2.2250738585072014e-308 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2340 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + f64.const 1797693134862315708145274e284 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2341 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + f64.const -1797693134862315708145274e284 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2342 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1797693134862315708145274e284 + f64.const 1797693134862315708145274e284 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2343 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1797693134862315708145274e284 + f64.const -1797693134862315708145274e284 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2344 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 2.2250738585072014e-308 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2347 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 1797693134862315708145274e284 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2348 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -2.2250738585072014e-308 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2349 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -1797693134862315708145274e284 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2350 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 2.2250738585072014e-308 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2351 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 1797693134862315708145274e284 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2352 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -2.2250738585072014e-308 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2353 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -1797693134862315708145274e284 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2354 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + f64.const 1797693134862315508561243e284 + f64.const 1995840309534719811656372e268 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2357 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1797693134862315708145274e284 + f64.const 1797693134862315508561243e284 + f64.const -1995840309534719811656372e268 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2358 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + f64.const -8988465674311579538646525e283 + f64.const 8988465674311577542806216e283 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2360 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1797693134862315708145274e284 + f64.const -8988465674311579538646525e283 + f64.const -8988465674311577542806216e283 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2361 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + f64.const 8988465674311578540726371e283 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2363 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1797693134862315708145274e284 + f64.const 8988465674311578540726371e283 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2364 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + f64.const -8988465674311577542806216e283 + f64.const 1995840309534719811656372e268 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2366 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1797693134862315708145274e284 + f64.const -8988465674311577542806216e283 + f64.const -1995840309534719811656372e268 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2367 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8988465674311579538646525e283 + f64.const 1797693134862315708145274e284 + f64.const 8988465674311579538646525e283 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2369 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8988465674311579538646525e283 + f64.const 1797693134862315708145274e284 + f64.const -8988465674311579538646525e283 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2370 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8988465674311578540726371e283 + f64.const -1797693134862315708145274e284 + f64.const 8988465674311578540726371e283 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2372 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8988465674311578540726371e283 + f64.const -1797693134862315708145274e284 + f64.const -8988465674311578540726371e283 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2373 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8988465674311577542806216e283 + f64.const 1797693134862315708145274e284 + f64.const 8988465674311577542806216e283 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2375 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8988465674311577542806216e283 + f64.const 1797693134862315708145274e284 + f64.const -8988465674311577542806216e283 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2376 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315508561243e284 + f64.const -1797693134862315708145274e284 + f64.const 1797693134862315508561243e284 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2378 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1797693134862315508561243e284 + f64.const -1797693134862315708145274e284 + f64.const -1797693134862315508561243e284 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2379 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315508561243e284 + f64.const 8988465674311578540726371e283 + f64.const 8988465674311576544886061e283 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2381 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1797693134862315508561243e284 + f64.const 8988465674311578540726371e283 + f64.const -8988465674311576544886061e283 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2382 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.5 + f64.const 1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2384 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 6.5 + f64.const 1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2385 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5.5 + f64.const 1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2386 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.5 + f64.const 1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2387 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.5 + f64.const 1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2388 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.5 + f64.const 1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2389 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -5.5 + f64.const 1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2390 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.5 + f64.const 1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2391 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585071994e-308 + f64.const 2.2250738585072004e-308 + f64.const 2.2250738585071994e-308 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2393 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585071994e-308 + f64.const -2.2250738585072004e-308 + f64.const 2.2250738585071994e-308 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2394 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507201e-308 + f64.const 1.5e-323 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2395 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507201e-308 + f64.const 4.4501477170144023e-308 + f64.const 2.225073858507201e-308 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2396 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507201e-308 + f64.const inf + f64.const 2.225073858507201e-308 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2397 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507201e-308 + f64.const -1.5e-323 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2398 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072014e-308 + f64.const 1.5e-323 + f64.const 5e-324 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2399 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072014e-308 + f64.const 2.2250738585072004e-308 + f64.const 1e-323 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2400 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072014e-308 + f64.const 4.4501477170144023e-308 + f64.const 2.2250738585072014e-308 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2401 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072014e-308 + f64.const -1.5e-323 + f64.const 5e-324 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2402 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507202e-308 + f64.const 2.2250738585072004e-308 + f64.const 1.5e-323 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2403 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072024e-308 + f64.const 1.5e-323 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2404 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072024e-308 + f64.const -1.5e-323 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2405 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507203e-308 + f64.const 1.5e-323 + f64.const 5e-324 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2406 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507203e-308 + f64.const 2.225073858507204e-308 + f64.const 2.225073858507203e-308 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2407 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507203e-308 + f64.const -1.5e-323 + f64.const 5e-324 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2408 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072034e-308 + f64.const 2.225073858507204e-308 + f64.const 2.2250738585072034e-308 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2409 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072043e-308 + f64.const 2.225073858507204e-308 + f64.const 5e-324 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2410 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.4501477170144023e-308 + f64.const 4.450147717014403e-308 + f64.const 4.4501477170144023e-308 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2411 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.139237815555687e-305 + f64.const 5.696189077778436e-306 + f64.const 5.696189077778434e-306 + f64.const 0 + i32.const 0 + call $std/math/test_mod + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2412 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const 4.535662651062012 + f32.const -3.531186103820801 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2421 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const -8.887990951538086 + f32.const 4.345239639282227 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2422 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -2.7636072635650635 + f32.const -0.09061169624328613 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2423 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const 4.567535400390625 + f32.const -1.9641380310058594 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2424 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 4.811392307281494 + f32.const 4.455665111541748 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2425 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.450045585632324 + f32.const 0.6620717644691467 + f32.const -0.49139970541000366 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2426 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.858890056610107 + f32.const 0.052154526114463806 + f32.const 0.0357111394405365 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2427 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.7920545339584351 + f32.const 7.676402568817139 + f32.const -0.7920545339584351 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2428 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6157026886940002 + f32.const 2.0119025707244873 + f32.const 0.6157026886940002 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2429 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5587586760520935 + f32.const 0.03223983198404312 + f32.const -0.010681532323360443 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2430 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2433 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2434 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const 1 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2435 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const 1 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2436 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2437 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2438 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.5 + f32.const 1 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2439 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.5 + f32.const 1 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2440 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2 + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2441 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2 + f32.const 1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2442 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2443 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2444 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const 1 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2445 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2446 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2447 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const -1 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2448 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const -1 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2449 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2450 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2451 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.5 + f32.const -1 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2452 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.5 + f32.const -1 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2453 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2 + f32.const -1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2454 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2 + f32.const -1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2455 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2456 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2457 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2458 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2459 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2460 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2461 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2462 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2463 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2464 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2465 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const inf + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2466 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -inf + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2467 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2468 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2469 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2470 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2471 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2472 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2473 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2474 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2475 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2476 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2477 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 2 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2478 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -0.5 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2479 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2480 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 2 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2481 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -0.5 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2482 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2483 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2484 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2485 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2486 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const inf + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2487 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const inf + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2488 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2489 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2490 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -inf + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2491 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -inf + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2492 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2493 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2494 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.75 + f32.const 0.5 + f32.const 0.25 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2495 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.75 + f32.const 0.5 + f32.const -0.25 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2496 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.75 + f32.const -0.5 + f32.const 0.25 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2497 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.75 + f32.const -0.5 + f32.const -0.25 + f32.const 0 + i32.const 0 + call $std/math/test_modf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2498 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const 4.535662560676869 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2510 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const -8.88799136300345 + f64.const 2.1347118825587285e-06 + f64.const 0.3250160217285156 + i32.const 1 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2511 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -2.763607337379588 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2512 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const 4.567535276842744 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2513 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 4.811392084359796 + f64.const 44909.29941512966 + f64.const -0.26659080386161804 + i32.const 1 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2514 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.450045556060236 + f64.const 0.6620717923376739 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2515 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.858890253041697 + f64.const 0.05215452675006225 + f64.const 1.1135177413458652 + f64.const -0.37168607115745544 + i32.const 1 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2516 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.792054511984896 + f64.const 7.67640268511754 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2517 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.615702673197924 + f64.const 2.0119025790324803 + f64.const 0.37690773521380183 + f64.const 0.32473301887512207 + i32.const 1 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2518 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5587586823609152 + f64.const 0.03223983060263804 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2519 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2522 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2523 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 3 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2524 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 2 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2525 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2526 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0.5 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2527 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2528 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2529 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -0.5 + f64.const inf + f64.const 0 + i32.const 4 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2530 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -1 + f64.const inf + f64.const 0 + i32.const 4 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2531 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -2 + f64.const inf + f64.const 0 + i32.const 4 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2532 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -3 + f64.const inf + f64.const 0 + i32.const 4 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2533 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -4 + f64.const inf + f64.const 0 + i32.const 4 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2534 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2535 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2536 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2537 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 3 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2538 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 2 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2539 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2540 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 0.5 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2541 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2542 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2543 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0.5 + f64.const inf + f64.const 0 + i32.const 4 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2544 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -1 + f64.const -inf + f64.const 0 + i32.const 4 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2545 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -2 + f64.const inf + f64.const 0 + i32.const 4 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2546 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -3 + f64.const -inf + f64.const 0 + i32.const 4 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2547 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -4 + f64.const inf + f64.const 0 + i32.const 4 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2548 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2549 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2550 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2551 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2552 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2553 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2554 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const 0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2555 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const -0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2556 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2557 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2558 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2559 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2560 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const -0 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2561 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2562 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2563 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2564 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 2 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2565 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2566 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -2 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2567 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -3 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2568 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 0.5 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2569 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2570 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2571 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2572 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 3 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2573 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0.5 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2574 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -0.5 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2575 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -3 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2576 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const 0.5 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2577 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const 1.5 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2578 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const 2 + f64.const 0.25 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2579 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const 3 + f64.const -0.125 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2580 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2581 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const -inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2582 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2583 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2584 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const -inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2585 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2586 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5 + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2587 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5 + f64.const -inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2588 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2589 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2590 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2591 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2592 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 3 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2593 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 2 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2594 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 1 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2595 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 0.5 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2596 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -0.5 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2597 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2598 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -2 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2599 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2600 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2601 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2602 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 3 + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2603 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 2 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2604 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 1 + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2605 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 0.5 + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2606 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -0.5 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2607 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2608 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -2 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2609 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const 1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2610 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2611 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2 + f64.const 1 + f64.const -2 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2612 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2 + f64.const -1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_pow + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2613 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const 4.535662651062012 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2622 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const -8.887990951538086 + f32.const 2.134714122803416e-06 + f32.const 0.1436440795660019 + i32.const 1 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2623 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -2.7636072635650635 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2624 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const 4.567535400390625 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2625 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 4.811392307281494 + f32.const 44909.33203125 + f32.const -0.05356409028172493 + i32.const 1 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2626 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.450045585632324 + f32.const 0.6620717644691467 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2627 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.858890056610107 + f32.const 0.052154526114463806 + f32.const 1.1135177612304688 + f32.const 0.19122089445590973 + i32.const 1 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2628 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.7920545339584351 + f32.const 7.676402568817139 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2629 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6157026886940002 + f32.const 2.0119025707244873 + f32.const 0.3769077658653259 + f32.const 0.337149053812027 + i32.const 1 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2630 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5587586760520935 + f32.const 0.03223983198404312 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2631 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2634 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2635 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 3 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2636 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 2 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2637 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2638 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0.5 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2639 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2640 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2641 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -0.5 + f32.const inf + f32.const 0 + i32.const 4 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2642 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -1 + f32.const inf + f32.const 0 + i32.const 4 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2643 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -2 + f32.const inf + f32.const 0 + i32.const 4 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2644 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -3 + f32.const inf + f32.const 0 + i32.const 4 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2645 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -4 + f32.const inf + f32.const 0 + i32.const 4 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2646 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2647 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2648 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2649 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 3 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2650 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 2 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2651 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2652 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 0.5 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2653 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2654 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2655 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0.5 + f32.const inf + f32.const 0 + i32.const 4 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2656 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -1 + f32.const -inf + f32.const 0 + i32.const 4 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2657 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -2 + f32.const inf + f32.const 0 + i32.const 4 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2658 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -3 + f32.const -inf + f32.const 0 + i32.const 4 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2659 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -4 + f32.const inf + f32.const 0 + i32.const 4 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2660 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2661 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2662 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2663 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2664 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2665 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2666 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const 0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2667 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const -0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2668 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2669 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2670 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2671 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2672 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const -0 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2673 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2674 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const inf + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2675 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2676 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 2 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2677 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2678 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -2 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2679 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -3 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2680 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 0.5 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2681 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2682 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const inf + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2683 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2684 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 3 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2685 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0.5 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2686 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -0.5 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2687 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -3 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2688 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const 0.5 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2689 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const 1.5 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2690 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const 2 + f32.const 0.25 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2691 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const 3 + f32.const -0.125 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2692 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2693 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const -inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2694 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2695 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2696 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const -inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2697 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2698 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.5 + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2699 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.5 + f32.const -inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2700 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.5 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2701 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2702 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2703 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2704 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 3 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2705 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 2 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2706 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 1 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2707 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 0.5 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2708 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -0.5 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2709 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2710 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -2 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2711 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2712 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2713 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2714 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 3 + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2715 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 2 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2716 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 1 + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2717 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 0.5 + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2718 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -0.5 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2719 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2720 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -2 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2721 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const 1 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2722 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2723 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2 + f32.const 1 + f32.const -2 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2724 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2 + f32.const -1 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_powf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2725 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + call $~lib/bindings/Math/random + i64.reinterpret_f64 + call $~lib/math/NativeMath.seedRandom + block $break|0 + i32.const 0 + local.set $0 + loop $loop|0 + local.get $0 + f64.convert_i32_s + f64.const 1e6 + f64.lt + i32.eqz + br_if $break|0 + call $~lib/math/NativeMath.random + local.set $1 + local.get $1 + f64.const 0 + f64.ge + if (result i32) + local.get $1 + f64.const 1 + f64.lt + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2734 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop|0 + end + unreachable + end + call $~lib/bindings/Math/random + i64.reinterpret_f64 + local.set $2 + local.get $2 + call $~lib/math/NativeMath.seedRandom + block $break|1 + i32.const 0 + local.set $0 + loop $loop|1 + local.get $0 + f64.convert_i32_s + f64.const 1e6 + f64.lt + i32.eqz + br_if $break|1 + call $~lib/math/NativeMathf.random + local.set $3 + local.get $3 + f32.const 0 + f32.ge + if (result i32) + local.get $3 + f32.const 1 + f32.lt + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2742 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + i32.add + local.set $0 + br $loop|1 + end + unreachable + end + f64.const -8.06684839057968 + f64.const -8 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2756 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 4 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2757 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -8 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2758 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const -7 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2759 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 9 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2760 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2761 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2762 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2763 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2764 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2765 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2768 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2769 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2770 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2771 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2772 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2773 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2774 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2775 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2776 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5 + f64.const 2 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2777 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.5 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2778 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0000152587890625 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2779 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.0000152587890625 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2780 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9999923706054688 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2781 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.9999923706054688 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2782 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.888609052210118e-31 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2783 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.888609052210118e-31 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2784 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const -8 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2793 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 4 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2794 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -8 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2795 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const -7 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2796 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 9 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2797 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2798 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2799 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2800 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2801 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -1 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2802 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2805 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2806 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2807 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2808 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2809 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2810 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2811 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2812 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2813 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5 + f64.const 2 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2814 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.5 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_round + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2815 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.0000152587890625 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2816 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.0000152587890625 + f32.const -1 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2817 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.9999923706054688 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2818 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.9999923706054688 + f32.const -1 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2819 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.888609052210118e-31 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2820 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -7.888609052210118e-31 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_roundf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2821 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_sign + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2832 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_sign + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2833 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_sign + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2834 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_sign + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2835 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_sign + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2836 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_sign + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2837 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_sign + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2838 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_sign + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2839 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_sign + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2840 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_signf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2848 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_signf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2849 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_signf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2850 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_signf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2851 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_signf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2852 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_signf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2853 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_signf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2854 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_signf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2855 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_signf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2856 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + local.set $1 + local.get $1 + i64.reinterpret_f64 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.get $1 + local.get $1 + f64.eq + i32.and + i32.const 0 + i32.ne + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2862 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + local.set $1 + local.get $1 + i64.reinterpret_f64 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.get $1 + local.get $1 + f64.eq + i32.and + i32.const 0 + i32.ne + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2863 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + local.set $1 + local.get $1 + i64.reinterpret_f64 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.get $1 + local.get $1 + f64.eq + i32.and + i32.const 0 + i32.ne + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2864 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + local.set $1 + local.get $1 + i64.reinterpret_f64 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.get $1 + local.get $1 + f64.eq + i32.and + i32.const 0 + i32.ne + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2865 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + local.set $1 + local.get $1 + i64.reinterpret_f64 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.get $1 + local.get $1 + f64.eq + i32.and + i32.const 0 + i32.ne + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2866 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -nan:0x8000000000000 + local.set $1 + local.get $1 + i64.reinterpret_f64 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.get $1 + local.get $1 + f64.eq + i32.and + i32.const 0 + i32.ne + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2867 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + local.set $1 + local.get $1 + i64.reinterpret_f64 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.get $1 + local.get $1 + f64.eq + i32.and + i32.const 0 + i32.ne + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2868 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + local.set $1 + local.get $1 + i64.reinterpret_f64 + i64.const 63 + i64.shr_u + i32.wrap_i64 + local.get $1 + local.get $1 + f64.eq + i32.and + i32.const 0 + i32.ne + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2869 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + local.set $3 + local.get $3 + i32.reinterpret_f32 + i32.const 31 + i32.shr_u + local.get $3 + local.get $3 + f32.eq + i32.and + i32.const 0 + i32.ne + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2875 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + local.set $3 + local.get $3 + i32.reinterpret_f32 + i32.const 31 + i32.shr_u + local.get $3 + local.get $3 + f32.eq + i32.and + i32.const 0 + i32.ne + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2876 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + local.set $3 + local.get $3 + i32.reinterpret_f32 + i32.const 31 + i32.shr_u + local.get $3 + local.get $3 + f32.eq + i32.and + i32.const 0 + i32.ne + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2877 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + local.set $3 + local.get $3 + i32.reinterpret_f32 + i32.const 31 + i32.shr_u + local.get $3 + local.get $3 + f32.eq + i32.and + i32.const 0 + i32.ne + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2878 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + local.set $3 + local.get $3 + i32.reinterpret_f32 + i32.const 31 + i32.shr_u + local.get $3 + local.get $3 + f32.eq + i32.and + i32.const 0 + i32.ne + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2879 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -nan:0x400000 + local.set $3 + local.get $3 + i32.reinterpret_f32 + i32.const 31 + i32.shr_u + local.get $3 + local.get $3 + f32.eq + i32.and + i32.const 0 + i32.ne + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2880 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + local.set $3 + local.get $3 + i32.reinterpret_f32 + i32.const 31 + i32.shr_u + local.get $3 + local.get $3 + f32.eq + i32.and + i32.const 0 + i32.ne + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2881 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + local.set $3 + local.get $3 + i32.reinterpret_f32 + i32.const 31 + i32.shr_u + local.get $3 + local.get $3 + f32.eq + i32.and + i32.const 0 + i32.ne + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2882 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const 4.535662560676869 + f64.const 1.0044767307740567 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2893 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const -8.88799136300345 + f64.const 4.345239849338305 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2894 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -2.763607337379588 + f64.const -0.09061141541648476 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2895 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const 4.567535276842744 + f64.const -1.9641383050707404 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2896 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 4.811392084359796 + f64.const -0.35572720174700656 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2897 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.450045556060236 + f64.const 0.6620717923376739 + f64.const 0.17067236731650248 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2898 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.858890253041697 + f64.const 0.05215452675006225 + f64.const -0.016443286217702822 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2899 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.792054511984896 + f64.const 7.67640268511754 + f64.const -0.792054511984896 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2900 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.615702673197924 + f64.const 2.0119025790324803 + f64.const 0.615702673197924 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2901 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5587586823609152 + f64.const 0.03223983060263804 + f64.const -0.0106815621160685 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2902 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2905 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2906 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const 1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2907 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const 1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2908 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2909 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2910 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5 + f64.const 1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2911 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.5 + f64.const 1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2912 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2 + f64.const 1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2913 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2 + f64.const 1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2914 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2915 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2916 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const 1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2917 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2918 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2919 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const -1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2920 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const -1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2921 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2922 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2923 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5 + f64.const -1 + f64.const -0.5 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2924 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.5 + f64.const -1 + f64.const 0.5 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2925 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2 + f64.const -1 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2926 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2 + f64.const -1 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2927 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2928 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2929 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2930 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2931 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2932 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2933 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const -inf + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2934 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2935 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2936 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2937 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const inf + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2938 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -inf + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2939 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2940 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2941 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2942 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2943 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2944 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const 0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2945 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2946 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2947 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2948 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const -0 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2949 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 2 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2950 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -0.5 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2951 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2952 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const 2 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2953 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -0.5 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2954 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2955 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2956 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2957 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2958 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const inf + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2959 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const inf + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2960 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2961 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2962 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const -inf + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2963 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -inf + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2964 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2965 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2966 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.75 + f64.const 0.5 + f64.const -0.25 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2967 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.75 + f64.const 0.5 + f64.const 0.25 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2968 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.75 + f64.const -0.5 + f64.const -0.25 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2969 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.75 + f64.const -0.5 + f64.const 0.25 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2970 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8e-323 + f64.const inf + f64.const 8e-323 + f64.const 0 + i32.const 0 + call $std/math/test_rem + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2971 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const 4.535662651062012 + f32.const 1.004476547241211 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2980 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const -8.887990951538086 + f32.const 4.345239639282227 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2981 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -2.7636072635650635 + f32.const -0.09061169624328613 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2982 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const 4.567535400390625 + f32.const -1.9641380310058594 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2983 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 4.811392307281494 + f32.const -0.3557271957397461 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2984 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.450045585632324 + f32.const 0.6620717644691467 + f32.const 0.17067205905914307 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2985 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.858890056610107 + f32.const 0.052154526114463806 + f32.const -0.016443386673927307 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2986 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.7920545339584351 + f32.const 7.676402568817139 + f32.const -0.7920545339584351 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2987 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6157026886940002 + f32.const 2.0119025707244873 + f32.const 0.6157026886940002 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2988 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5587586760520935 + f32.const 0.03223983198404312 + f32.const -0.010681532323360443 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2989 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2992 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2993 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const 1 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2994 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const 1 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2995 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2996 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2997 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.5 + f32.const 1 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2998 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.5 + f32.const 1 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 2999 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2 + f32.const 1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3000 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2 + f32.const 1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3001 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3002 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3003 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const 1 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3004 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3005 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3006 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const -1 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3007 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const -1 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3008 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3009 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3010 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.5 + f32.const -1 + f32.const -0.5 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3011 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.5 + f32.const -1 + f32.const 0.5 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3012 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2 + f32.const -1 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3013 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2 + f32.const -1 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3014 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3015 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3016 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3017 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3018 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3019 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3020 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const -inf + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3021 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3022 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3023 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3024 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const inf + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3025 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -inf + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3026 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3027 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3028 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3029 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3030 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3031 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const 0 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3032 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3033 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3034 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3035 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const -0 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3036 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 2 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3037 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -0.5 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3038 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3039 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const 2 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3040 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -0.5 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3041 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3042 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3043 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3044 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3045 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const inf + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3046 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const inf + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3047 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3048 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3049 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const -inf + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3050 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -inf + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3051 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3052 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3053 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.75 + f32.const 0.5 + f32.const -0.25 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3054 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.75 + f32.const 0.5 + f32.const 0.25 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3055 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.75 + f32.const -0.5 + f32.const -0.25 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3056 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.75 + f32.const -0.5 + f32.const 0.25 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3057 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 5.877471754111438e-39 + f32.const inf + f32.const 5.877471754111438e-39 + f32.const 0 + i32.const 0 + call $std/math/test_remf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3058 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const -0.9774292928781227 + f64.const -0.14564912021160126 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3070 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const -0.9333544736965718 + f64.const -0.08813747018575668 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3071 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -0.8640924711706304 + f64.const -0.11743883043527603 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3072 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const -0.24593894772615374 + f64.const -0.12697851657867432 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3073 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 0.15706789772028007 + f64.const -0.029550159350037575 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3074 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.6146844860113447 + f64.const -0.09976737946271896 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3075 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0.39549242182823696 + f64.const -0.3668774962425232 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3076 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.5326763286672376 + f64.const -0.3550407588481903 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3077 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.6991102068649779 + f64.const -0.427672415971756 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3078 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -0.6278312326301215 + f64.const -0.3828115463256836 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3079 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.313225746154785e-10 + f64.const 9.313225746154785e-10 + f64.const 6.510416860692203e-04 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3082 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -9.313225746154785e-10 + f64.const -9.313225746154785e-10 + f64.const -6.510416860692203e-04 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3083 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072014e-308 + f64.const 2.2250738585072014e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3084 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.2250738585072014e-308 + f64.const -2.2250738585072014e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3085 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5e-324 + f64.const 5e-324 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3086 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -5e-324 + f64.const -5e-324 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3087 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3088 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3089 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507202e-308 + f64.const 2.225073858507202e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3090 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072024e-308 + f64.const 2.2250738585072024e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3091 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.4501477170144003e-308 + f64.const 4.4501477170144003e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3092 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.450147717014403e-308 + f64.const 4.450147717014403e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3093 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.450147717014406e-308 + f64.const 4.450147717014406e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3094 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8.900295434028806e-308 + f64.const 8.900295434028806e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3095 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1175870895385742e-08 + f64.const 1.1175870895385742e-08 + f64.const 0.140625 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3096 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.4901161193847656e-08 + f64.const 1.4901161193847656e-08 + f64.const 0.1666666716337204 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3097 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.225073858507202e-308 + f64.const -2.225073858507202e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3098 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.2250738585072024e-308 + f64.const -2.2250738585072024e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3099 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.4501477170144003e-308 + f64.const -4.4501477170144003e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3100 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.450147717014403e-308 + f64.const -4.450147717014403e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3101 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.450147717014406e-308 + f64.const -4.450147717014406e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3102 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.900295434028806e-308 + f64.const -8.900295434028806e-308 + f64.const 0 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3103 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.1175870895385742e-08 + f64.const -1.1175870895385742e-08 + f64.const -0.140625 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3104 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.4901161193847656e-08 + f64.const -1.4901161193847656e-08 + f64.const -0.1666666716337204 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3105 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.4901161193847656e-08 + f64.const -1.4901161193847656e-08 + f64.const -0.1666666716337204 + i32.const 1 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3106 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1e-323 + f64.const 1e-323 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3107 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.4e-323 + f64.const 4.4e-323 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3108 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5.562684646268003e-309 + f64.const 5.562684646268003e-309 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3109 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1125369292536007e-308 + f64.const 1.1125369292536007e-308 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3110 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072004e-308 + f64.const 2.2250738585072004e-308 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3111 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507201e-308 + f64.const 2.225073858507201e-308 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3112 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1e-323 + f64.const -1e-323 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3113 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.4e-323 + f64.const -4.4e-323 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3114 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -5.562684646268003e-309 + f64.const -5.562684646268003e-309 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3115 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.1125369292536007e-308 + f64.const -1.1125369292536007e-308 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3116 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.2250738585072004e-308 + f64.const -2.2250738585072004e-308 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3117 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.225073858507201e-308 + f64.const -2.225073858507201e-308 + f64.const 0 + i32.const 9 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3118 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3121 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3122 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3123 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3124 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_sin + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3125 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5707963267948966 + call $~lib/math/NativeMath.sin + f64.const 1.5707963267948966 + call $~lib/bindings/Math/sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3128 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.141592653589793 + call $~lib/math/NativeMath.sin + f64.const 3.141592653589793 + call $~lib/bindings/Math/sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3129 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.3283064365386963e-10 + f64.const 2.3283064365386963e-10 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3132 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.3283064365386963e-10 + f64.const -2.3283064365386963e-10 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3133 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.3826834323650898 + f64.const 0.39269908169872414 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3135 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.3826834323650898 + f64.const -0.39269908169872414 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3136 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.479425538604203 + f64.const 0.5 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3139 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.479425538604203 + f64.const -0.5 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3140 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1.5707963267948966 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3141 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1.5707963267948966 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3142 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.2246467991473532e-16 + f64.const 3.141592653589793 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3144 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.047032979958965e-14 + f64.const 6911.503837897545 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3145 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.7071067811865477 + f64.const 5.497787143782138 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3147 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7071067811865474 + f64.const 7.0685834705770345 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3148 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7071067811865483 + f64.const 8.63937979737193 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3149 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.7071067811865479 + f64.const 10.210176124166829 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3150 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -3.2103381051568376e-11 + f64.const 823549.6645826427 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3151 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.377820109360752 + f64.const 1329227995784915872903807e12 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3154 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.377820109360752 + f64.const -1329227995784915872903807e12 + call $~lib/math/NativeMath.sin + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3155 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const -0.977429211139679 + f32.const 0.0801057294011116 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3164 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const -0.933354377746582 + f32.const 0.34475627541542053 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3165 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -0.8640924692153931 + f32.const -0.468659907579422 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3166 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const -0.24593880772590637 + f32.const -0.3955177664756775 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3167 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 0.1570674479007721 + f32.const -0.24006809294223785 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3168 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.6146844625473022 + f32.const -0.07707194238901138 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3169 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0.39549243450164795 + f32.const -0.11720617115497589 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3170 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.5326763391494751 + f32.const -0.16059114038944244 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3171 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.699110209941864 + f32.const 0.26384368538856506 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3172 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -0.627831220626831 + f32.const 0.005127954296767712 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3173 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3176 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3177 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3178 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3179 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3180 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.862645149230957e-09 + f32.const 1.862645149230957e-09 + f32.const 4.850638554015907e-12 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3183 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.862645149230957e-09 + f32.const -1.862645149230957e-09 + f32.const -4.850638554015907e-12 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3184 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1754943508222875e-38 + f32.const 1.1754943508222875e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3185 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754943508222875e-38 + f32.const -1.1754943508222875e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3186 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.401298464324817e-45 + f32.const 1.401298464324817e-45 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3187 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.401298464324817e-45 + f32.const -1.401298464324817e-45 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3188 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.175494490952134e-38 + f32.const 1.175494490952134e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3189 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1754946310819804e-38 + f32.const 1.1754946310819804e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3190 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.3509880009953429e-38 + f32.const 2.3509880009953429e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3191 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.350988701644575e-38 + f32.const 2.350988701644575e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3192 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.3509895424236536e-38 + f32.const 2.3509895424236536e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3193 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.70197740328915e-38 + f32.const 4.70197740328915e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3194 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1175870895385742e-08 + f32.const 1.1175870895385742e-08 + f32.const 2.6193447411060333e-10 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3195 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.4901161193847656e-08 + f32.const 1.4901161193847656e-08 + f32.const 3.1044086745701804e-10 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3196 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.000244140625 + f32.const 0.000244140625 + f32.const 0.0833333358168602 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3197 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.0003662109375 + f32.const 0.0003662109375 + f32.const 0.28125 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3198 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.175494490952134e-38 + f32.const -1.175494490952134e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3199 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754946310819804e-38 + f32.const -1.1754946310819804e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3200 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.3509880009953429e-38 + f32.const -2.3509880009953429e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3201 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.350988701644575e-38 + f32.const -2.350988701644575e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3202 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.3509895424236536e-38 + f32.const -2.3509895424236536e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3203 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -4.70197740328915e-38 + f32.const -4.70197740328915e-38 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3204 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1175870895385742e-08 + f32.const -1.1175870895385742e-08 + f32.const -2.6193447411060333e-10 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3205 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.4901161193847656e-08 + f32.const -1.4901161193847656e-08 + f32.const -3.1044086745701804e-10 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3206 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.000244140625 + f32.const -0.000244140625 + f32.const -0.0833333358168602 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3207 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.0003662109375 + f32.const -0.0003662109375 + f32.const -0.28125 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3208 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.802596928649634e-45 + f32.const 2.802596928649634e-45 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3209 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.2611686178923354e-44 + f32.const 1.2611686178923354e-44 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3210 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.938735877055719e-39 + f32.const 2.938735877055719e-39 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3211 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 5.877471754111438e-39 + f32.const 5.877471754111438e-39 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3212 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1754940705625946e-38 + f32.const 1.1754940705625946e-38 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3213 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1754942106924411e-38 + f32.const 1.1754942106924411e-38 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3214 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.802596928649634e-45 + f32.const -2.802596928649634e-45 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3215 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.2611686178923354e-44 + f32.const -1.2611686178923354e-44 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3216 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.938735877055719e-39 + f32.const -2.938735877055719e-39 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3217 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -5.877471754111438e-39 + f32.const -5.877471754111438e-39 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3218 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754940705625946e-38 + f32.const -1.1754940705625946e-38 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3219 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754942106924411e-38 + f32.const -1.1754942106924411e-38 + f32.const 0 + i32.const 9 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3220 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 255.99993896484375 + f32.const -0.9992055892944336 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3223 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 5033165 + f32.const 0.5312945246696472 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3224 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 421657440 + f32.const -0.7397398948669434 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3225 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2147483392 + f32.const 0.2762770354747772 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3226 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 68719476736 + f32.const 0.9855440855026245 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3227 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 549755813888 + f32.const -0.9782648086547852 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3228 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 3402823466385288598117041e14 + f32.const -0.5218765139579773 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3229 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -255.99993896484375 + f32.const 0.9992055892944336 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3230 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -5033165 + f32.const -0.5312945246696472 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3231 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -421657440 + f32.const 0.7397398948669434 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3232 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2147483392 + f32.const -0.2762770354747772 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3233 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -68719476736 + f32.const -0.9855440855026245 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3234 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -549755813888 + f32.const 0.9782648086547852 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3235 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -3402823466385288598117041e14 + f32.const 0.5218765139579773 + f32.const 0 + i32.const 1 + call $std/math/test_sinf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3236 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const -1593.5206801156262 + f64.const -0.2138727605342865 + i32.const 1 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3248 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 38.54878088685412 + f64.const 0.21537430584430695 + i32.const 1 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3249 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -2182.6307505145546 + f64.const 0.16213826835155487 + i32.const 1 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3250 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const -343.2723926847529 + f64.const 0.20479513704776764 + i32.const 1 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3251 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 5291.7790755194055 + f64.const -0.48676517605781555 + i32.const 1 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3252 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.7114062568229157 + f64.const -0.4584641456604004 + i32.const 1 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3253 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0.41790065258739445 + f64.const 0.37220045924186707 + i32.const 1 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3254 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.5917755935451237 + f64.const 0.46178996562957764 + i32.const 1 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3255 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.8538292008852542 + f64.const -0.07019051909446716 + i32.const 1 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3256 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -0.732097615653169 + f64.const 0.26858529448509216 + i32.const 1 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3257 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3260 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3261 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3262 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3263 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_sinh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3264 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const -1593.521240234375 + f32.const 0.1671663224697113 + i32.const 1 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3273 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 38.548770904541016 + f32.const -0.49340328574180603 + i32.const 1 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3274 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -2182.630859375 + f32.const 0.0849970355629921 + i32.const 1 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3275 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const -343.2723388671875 + f32.const 0.0704190656542778 + i32.const 1 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3276 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 5291.78125 + f32.const -0.44362515211105347 + i32.const 1 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3277 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.7114062309265137 + f32.const 0.058103885501623154 + i32.const 1 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3278 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0.4179006516933441 + f32.const 0.39349499344825745 + i32.const 1 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3279 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.5917755961418152 + f32.const -0.4183797240257263 + i32.const 1 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3280 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.8538292050361633 + f32.const 0.45992106199264526 + i32.const 1 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3281 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -0.7320976257324219 + f32.const -0.48159059882164 + i32.const 1 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3282 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3285 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3286 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3287 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3288 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_sinhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3289 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3301 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 2.0845238903256313 + f64.const -0.07180261611938477 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3302 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3303 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3304 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 3.0441841217266385 + f64.const -0.01546262577176094 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3305 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.8136251582267503 + f64.const -0.08618157356977463 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3306 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3307 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.7495063350104014 + f64.const -0.0981396734714508 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3308 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.879859248170583 + f64.const -0.37124353647232056 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3309 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3310 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3313 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3314 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3315 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3316 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3317 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3318 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3319 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4 + f64.const 2 + f64.const 0 + i32.const 0 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3320 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1e-323 + f64.const 3.1434555694052576e-162 + f64.const 0.43537619709968567 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3321 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5e-323 + f64.const 3.849931087076416e-162 + f64.const -0.45194002985954285 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3322 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5e-324 + f64.const 2.2227587494850775e-162 + f64.const 0 + i32.const 0 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3323 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -5e-324 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3324 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9999999999999999 + f64.const 0.9999999999999999 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3325 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.9999999999999998 + f64.const 1.414213562373095 + f64.const -0.21107041835784912 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3326 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0000000000000002 + f64.const 1 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3327 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.0000000000000004 + f64.const 1.4142135623730951 + f64.const -0.27173060178756714 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3328 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0000000000000002 + f64.const 1 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3329 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9999999999999999 + f64.const 0.9999999999999999 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3330 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1797693134862315708145274e284 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3331 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + f64.const 1340780792994259561100831e130 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3332 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 179769313486231490980915e285 + f64.const 134078079299425926338769e131 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3333 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862314111473026e284 + f64.const 1340780792994258965674548e130 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3334 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862313313136902e284 + f64.const 1340780792994258667961407e130 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3335 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862312514800778e284 + f64.const 1340780792994258370248265e130 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3336 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862311716464655e284 + f64.const 1340780792994258072535124e130 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3337 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862310918128531e284 + f64.const 1340780792994257774821982e130 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3338 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862310119792407e284 + f64.const 1340780792994257477108841e130 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3339 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862309321456283e284 + f64.const 1340780792994257179395699e130 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3340 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862308523120159e284 + f64.const 1340780792994256881682558e130 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3341 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862307724784036e284 + f64.const 1340780792994256583969417e130 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3342 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507203e-308 + f64.const 1.4916681462400417e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3343 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507205e-308 + f64.const 1.4916681462400423e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3344 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507207e-308 + f64.const 1.491668146240043e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3345 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507209e-308 + f64.const 1.4916681462400437e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3346 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507211e-308 + f64.const 1.4916681462400443e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3347 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072127e-308 + f64.const 1.491668146240045e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3348 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072147e-308 + f64.const 1.4916681462400457e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3349 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072167e-308 + f64.const 1.4916681462400463e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3350 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072187e-308 + f64.const 1.491668146240047e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3351 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072207e-308 + f64.const 1.4916681462400476e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3352 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072226e-308 + f64.const 1.4916681462400483e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3353 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072246e-308 + f64.const 1.491668146240049e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3354 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072266e-308 + f64.const 1.4916681462400496e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3355 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072286e-308 + f64.const 1.4916681462400503e-154 + f64.const -0.5 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3356 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 92.35130391890645 + f64.const 9.609958580499006 + f64.const 0.4998137056827545 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3357 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 93.3599596388916 + f64.const 9.662295774757238 + f64.const -0.49979978799819946 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3358 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 95.42049628886124 + f64.const 9.76834153215689 + f64.const -0.49997270107269287 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3359 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 95.87916941885449 + f64.const 9.791790919890728 + f64.const 0.4998766779899597 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3360 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 96.84804174884022 + f64.const 9.841140266698785 + f64.const 0.499801903963089 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3361 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 97.43639050883155 + f64.const 9.87098731175517 + f64.const 0.4997696280479431 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3362 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 97.50957979883047 + f64.const 9.874693909120955 + f64.const 0.49999818205833435 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3363 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 97.80496893882612 + f64.const 9.88963947466368 + f64.const -0.4999580681324005 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3364 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 98.2751822888192 + f64.const 9.913383997849534 + f64.const 0.49979931116104126 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3365 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 99.47293564880155 + f64.const 9.973611966023219 + f64.const -0.4999540448188782 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3366 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 100.57047130878539 + f64.const 10.028483001370914 + f64.const -0.49996453523635864 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3367 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 100.60954608878481 + f64.const 10.030431002144665 + f64.const 0.49975672364234924 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3368 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 100.67909109878379 + f64.const 10.033897104255344 + f64.const -0.4997771382331848 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3369 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 101.12268095877725 + f64.const 10.055977374615422 + f64.const 0.49988678097724915 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3370 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 101.3027691287746 + f64.const 10.064927676281366 + f64.const 0.4999105632305145 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3371 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.45932313565507e-307 + f64.const 4.9591563149945874e-154 + f64.const -0.4998999834060669 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3372 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5.610957305180409e-307 + f64.const 7.490632353266584e-154 + f64.const -0.4999343752861023 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3373 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5.8073887977408524e-307 + f64.const 7.62062254526548e-154 + f64.const -0.49989569187164307 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3374 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.026137080471427e-307 + f64.const 8.382205605013174e-154 + f64.const 0.49980640411376953 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3375 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8.438697769194972e-307 + f64.const 9.186238495268328e-154 + f64.const -0.4999065697193146 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3376 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1607792515836795e-306 + f64.const 1.0773946591586944e-153 + f64.const -0.49997684359550476 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3377 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.2827413827423193e-306 + f64.const 1.1325817333606962e-153 + f64.const -0.4999513030052185 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3378 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.7116604596087457e-306 + f64.const 1.3083044216117078e-153 + f64.const -0.49986395239830017 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3379 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.038173251686994e-306 + f64.const 1.4276460526639628e-153 + f64.const 0.4998403787612915 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3380 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.171572060856931e-306 + f64.const 1.4736254818836879e-153 + f64.const 0.4999290406703949 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3381 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.4681399631804094e-306 + f64.const 1.5710314965589996e-153 + f64.const 0.49989044666290283 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3382 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.5175533964200588e-306 + f64.const 1.5866799918131124e-153 + f64.const -0.4997701048851013 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3383 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.6461505468829625e-306 + f64.const 1.6266992797941982e-153 + f64.const 0.4998672902584076 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3384 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.8167076367720413e-306 + f64.const 1.9536395872248397e-153 + f64.const 0.49983471632003784 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3385 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.5743220778562766e-306 + f64.const 2.1387664851161936e-153 + f64.const 0.49985939264297485 + i32.const 1 + call $std/math/test_sqrt + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3386 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3395 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 2.084523916244507 + f32.const 0.3200402557849884 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3396 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3397 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3398 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 3.0441842079162598 + f32.const 0.05022354796528816 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3399 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.813625156879425 + f32.const 0.2240506112575531 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3400 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3401 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.7495063543319702 + f32.const 0.05895441770553589 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3402 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.879859209060669 + f32.const -0.4874873757362366 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3403 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3404 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3407 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3408 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3409 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3410 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3411 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3412 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3413 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4 + f32.const 2 + f32.const 0 + i32.const 0 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3414 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.802596928649634e-45 + f32.const 5.293955920339377e-23 + f32.const 0 + i32.const 0 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3415 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.203895392974451e-45 + f32.const 6.483745598763743e-23 + f32.const 0.37388554215431213 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3416 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.401298464324817e-45 + f32.const 3.743392066509216e-23 + f32.const -0.20303145051002502 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3417 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.401298464324817e-45 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3418 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 3402823466385288598117041e14 + f32.const 18446742974197923840 + f32.const -0.5 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3419 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -3402823466385288598117041e14 + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3420 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.9999998807907104 + f32.const 0.9999999403953552 + f32.const 2.980232594040899e-08 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3421 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.9999999403953552 + f32.const 0.9999999403953552 + f32.const -0.5 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3422 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.999999761581421 + f32.const 1.4142134189605713 + f32.const -0.4959246516227722 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3423 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.9999998807907104 + f32.const 1.4142135381698608 + f32.const 0.15052194893360138 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3424 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.0000001192092896 + f32.const 1 + f32.const -0.5 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3425 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.000000238418579 + f32.const 1.0000001192092896 + f32.const 5.960463766996327e-08 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3426 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.000000238418579 + f32.const 1.4142136573791504 + f32.const 0.08986179530620575 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3427 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.000000476837158 + f32.const 1.41421377658844 + f32.const 0.3827550709247589 + i32.const 1 + call $std/math/test_sqrtf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3428 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const 4.626603542401633 + f64.const -0.2727603316307068 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3440 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 2.600191705822202 + f64.const 0.2651003301143646 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3441 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const 1.7167408328741052 + f64.const -0.24687519669532776 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3442 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const -0.2537322523453725 + f64.const -0.4679703712463379 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3443 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const -0.15904195727191958 + f64.const -0.06704077869653702 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3444 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.7792919106910434 + f64.const -0.038056135177612305 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3445 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0.43059952879543656 + f64.const -0.09242714196443558 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3446 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.62940368731874 + f64.const -0.321913480758667 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3447 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.9777574652949645 + f64.const -0.1966651827096939 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3448 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -0.8066186630209123 + f64.const -0.067665696144104 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3449 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.313225746154785e-10 + f64.const 9.313225746154785e-10 + f64.const -1.3020833721384406e-03 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3452 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -9.313225746154785e-10 + f64.const -9.313225746154785e-10 + f64.const 1.3020833721384406e-03 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3453 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072014e-308 + f64.const 2.2250738585072014e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3454 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.2250738585072014e-308 + f64.const -2.2250738585072014e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3455 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5e-324 + f64.const 5e-324 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3456 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -5e-324 + f64.const -5e-324 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3457 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3458 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3459 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7853981633974483 + f64.const 0.9999999999999999 + f64.const -0.4484681189060211 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3460 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.7853981633974483 + f64.const -0.9999999999999999 + f64.const 0.4484681189060211 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3461 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507202e-308 + f64.const 2.225073858507202e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3462 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072024e-308 + f64.const 2.2250738585072024e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3463 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.4501477170144003e-308 + f64.const 4.4501477170144003e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3464 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.450147717014403e-308 + f64.const 4.450147717014403e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3465 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.450147717014406e-308 + f64.const 4.450147717014406e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3466 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 8.900295434028806e-308 + f64.const 8.900295434028806e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3467 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1175870895385742e-08 + f64.const 1.1175870895385742e-08 + f64.const -0.28125 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3468 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.4901161193847656e-08 + f64.const 1.4901161193847656e-08 + f64.const -0.3333333432674408 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3469 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.225073858507202e-308 + f64.const -2.225073858507202e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3470 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.2250738585072024e-308 + f64.const -2.2250738585072024e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3471 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.4501477170144003e-308 + f64.const -4.4501477170144003e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3472 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.450147717014403e-308 + f64.const -4.450147717014403e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3473 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.450147717014406e-308 + f64.const -4.450147717014406e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3474 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.900295434028806e-308 + f64.const -8.900295434028806e-308 + f64.const 0 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3475 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.1175870895385742e-08 + f64.const -1.1175870895385742e-08 + f64.const 0.28125 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3476 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.4901161193847656e-08 + f64.const -1.4901161193847656e-08 + f64.const 0.3333333432674408 + i32.const 1 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3477 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1e-323 + f64.const 1e-323 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3478 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.4e-323 + f64.const 4.4e-323 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3479 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5.562684646268003e-309 + f64.const 5.562684646268003e-309 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3480 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1125369292536007e-308 + f64.const 1.1125369292536007e-308 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3481 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072004e-308 + f64.const 2.2250738585072004e-308 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3482 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.225073858507201e-308 + f64.const 2.225073858507201e-308 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3483 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1e-323 + f64.const -1e-323 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3484 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -4.4e-323 + f64.const -4.4e-323 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3485 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -5.562684646268003e-309 + f64.const -5.562684646268003e-309 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3486 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.1125369292536007e-308 + f64.const -1.1125369292536007e-308 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3487 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.2250738585072004e-308 + f64.const -2.2250738585072004e-308 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3488 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.225073858507201e-308 + f64.const -2.225073858507201e-308 + f64.const 0 + i32.const 9 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3489 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.3283064365386963e-10 + call $~lib/math/NativeMath.tan + f64.const 2.3283064365386963e-10 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3492 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.3283064365386963e-10 + call $~lib/math/NativeMath.tan + f64.const -2.3283064365386963e-10 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3493 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6875 + call $~lib/math/NativeMath.tan + f64.const 0.6875 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3494 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6875 + call $~lib/math/NativeMath.tan + f64.const -0.6875 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3495 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.39269908169872414 + call $~lib/math/NativeMath.tan + f64.const 0.39269908169872414 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3496 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6743358 + call $~lib/math/NativeMath.tan + f64.const 0.6743358 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3497 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 3.725290298461914e-09 + call $~lib/math/NativeMath.tan + f64.const 3.725290298461914e-09 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3498 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.5707963267948966 + call $~lib/math/NativeMath.tan + f64.const 1.5707963267948966 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3499 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + call $~lib/math/NativeMath.tan + f64.const 0.5 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3501 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.107148717794091 + call $~lib/math/NativeMath.tan + f64.const 1.107148717794091 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3502 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5.497787143782138 + call $~lib/math/NativeMath.tan + f64.const 5.497787143782138 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3503 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.0685834705770345 + call $~lib/math/NativeMath.tan + f64.const 7.0685834705770345 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3504 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1647099.3291652855 + call $~lib/math/NativeMath.tan + f64.const 1647099.3291652855 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3505 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1647097.7583689587 + call $~lib/math/NativeMath.tan + f64.const 1647097.7583689587 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3506 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1329227995784915872903807e12 + call $~lib/math/NativeMath.tan + f64.const 1329227995784915872903807e12 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3507 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1329227995784915872903807e12 + call $~lib/math/NativeMath.tan + f64.const -1329227995784915872903807e12 + call $~lib/bindings/Math/tan + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3508 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3511 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3512 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3513 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 2 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3514 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_tan + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3515 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const 4.626595497131348 + f32.const 0.2455666959285736 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3524 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 2.6001901626586914 + f32.const 0.3652407228946686 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3525 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const 1.716740608215332 + f32.const 0.08169349282979965 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3526 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const -0.2537320852279663 + f32.const 0.23186513781547546 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3527 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const -0.15904149413108826 + f32.const -0.009332014247775078 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3528 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.7792918682098389 + f32.const -0.06759700924158096 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3529 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0.43059954047203064 + f32.const 0.005771996453404427 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3530 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.6294037103652954 + f32.const -0.16838163137435913 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3531 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.977757453918457 + f32.const 0.38969388604164124 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3532 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -0.8066186308860779 + f32.const 0.12294059991836548 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3533 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3536 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3537 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3538 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const nan:0x400000 + f32.const 0 + i32.const 2 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3539 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3540 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.862645149230957e-09 + f32.const 1.862645149230957e-09 + f32.const -9.701277108031814e-12 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3543 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.862645149230957e-09 + f32.const -1.862645149230957e-09 + f32.const 9.701277108031814e-12 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3544 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1754943508222875e-38 + f32.const 1.1754943508222875e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3545 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754943508222875e-38 + f32.const -1.1754943508222875e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3546 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.401298464324817e-45 + f32.const 1.401298464324817e-45 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3547 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.401298464324817e-45 + f32.const -1.401298464324817e-45 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3548 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.175494490952134e-38 + f32.const 1.175494490952134e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3549 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1754946310819804e-38 + f32.const 1.1754946310819804e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3550 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.3509880009953429e-38 + f32.const 2.3509880009953429e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3551 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.350988701644575e-38 + f32.const 2.350988701644575e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3552 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.3509895424236536e-38 + f32.const 2.3509895424236536e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3553 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.70197740328915e-38 + f32.const 4.70197740328915e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3554 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1175870895385742e-08 + f32.const 1.1175870895385742e-08 + f32.const -5.238689482212067e-10 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3555 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.4901161193847656e-08 + f32.const 1.4901161193847656e-08 + f32.const -6.208817349140361e-10 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3556 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.000244140625 + f32.const 0.000244140625 + f32.const -0.1666666716337204 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3557 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.175494490952134e-38 + f32.const -1.175494490952134e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3558 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754946310819804e-38 + f32.const -1.1754946310819804e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3559 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.3509880009953429e-38 + f32.const -2.3509880009953429e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3560 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.350988701644575e-38 + f32.const 2.350988701644575e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3561 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.3509895424236536e-38 + f32.const -2.3509895424236536e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3562 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -4.70197740328915e-38 + f32.const -4.70197740328915e-38 + f32.const 0 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3563 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1175870895385742e-08 + f32.const -1.1175870895385742e-08 + f32.const 5.238689482212067e-10 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3564 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.4901161193847656e-08 + f32.const -1.4901161193847656e-08 + f32.const 6.208817349140361e-10 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3565 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.000244140625 + f32.const -0.000244140625 + f32.const 0.1666666716337204 + i32.const 1 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3566 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.802596928649634e-45 + f32.const 2.802596928649634e-45 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3567 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.2611686178923354e-44 + f32.const 1.2611686178923354e-44 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3568 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 2.938735877055719e-39 + f32.const 2.938735877055719e-39 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3569 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 5.877471754111438e-39 + f32.const 5.877471754111438e-39 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3570 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1754940705625946e-38 + f32.const 1.1754940705625946e-38 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3571 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.1754942106924411e-38 + f32.const 1.1754942106924411e-38 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3572 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.802596928649634e-45 + f32.const -2.802596928649634e-45 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3573 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.2611686178923354e-44 + f32.const -1.2611686178923354e-44 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3574 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -2.938735877055719e-39 + f32.const -2.938735877055719e-39 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3575 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -5.877471754111438e-39 + f32.const -5.877471754111438e-39 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3576 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754940705625946e-38 + f32.const -1.1754940705625946e-38 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3577 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.1754942106924411e-38 + f32.const -1.1754942106924411e-38 + f32.const 0 + i32.const 9 + call $std/math/test_tanf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3578 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const -0.999999803096032 + f64.const 0.012793331407010555 + i32.const 1 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3590 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 0.9996636978961307 + f64.const 0.1573508232831955 + i32.const 1 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3591 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -0.9999998950434862 + f64.const 0.27985066175460815 + i32.const 1 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3592 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const -0.9999957568392429 + f64.const -0.44285574555397034 + i32.const 1 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3593 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 0.9999999821447234 + f64.const 0.4462755024433136 + i32.const 1 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3594 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0.5796835018635275 + f64.const 0.4892043173313141 + i32.const 1 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3595 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0.3855853099901652 + f64.const 0.35993871092796326 + i32.const 1 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3596 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0.5092819248700439 + f64.const -0.39436522126197815 + i32.const 1 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3597 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0.6493374550318555 + f64.const -0.4899396002292633 + i32.const 1 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3598 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -0.590715084799841 + f64.const -0.0145387789234519 + i32.const 1 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3599 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3602 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3603 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3604 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3605 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_tanh + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3606 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const -0.9999998211860657 + f32.const -0.3034979999065399 + i32.const 1 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3615 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 0.9996637105941772 + f32.const 0.2154078334569931 + i32.const 1 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3616 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -0.9999998807907104 + f32.const 0.23912210762500763 + i32.const 1 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3617 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const -0.999995768070221 + f32.const -0.18844597041606903 + i32.const 1 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3618 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 1 + f32.const 0.1497807800769806 + i32.const 1 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3619 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0.5796834826469421 + f32.const -0.05590476095676422 + i32.const 1 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3620 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0.38558530807495117 + f32.const 0.349787175655365 + i32.const 1 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3621 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0.5092819333076477 + f32.const -0.1528785079717636 + i32.const 1 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3622 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0.6493374705314636 + f32.const 0.4317026138305664 + i32.const 1 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3623 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -0.5907150506973267 + f32.const 0.4079873859882355 + i32.const 1 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3624 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3627 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3628 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3629 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3630 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_tanhf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3631 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.06684839057968 + f64.const -8 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3643 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.345239849338305 + f64.const 4 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3644 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -8.38143342755525 + f64.const -8 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3645 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -6.531673581913484 + f64.const -6 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3646 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9.267056966972586 + f64.const 9 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3647 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.6619858980995045 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3648 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.4066039223853553 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3649 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5617597462207241 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3650 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.7741522965913037 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3651 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.6787637026394024 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3652 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const nan:0x8000000000000 + f64.const 0 + i32.const 0 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3655 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + f64.const inf + f64.const 0 + i32.const 0 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3656 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + f64.const -inf + f64.const 0 + i32.const 0 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3657 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + f64.const 0 + f64.const 0 + i32.const 0 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3658 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + f64.const -0 + f64.const 0 + i32.const 0 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3659 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const 1 + f64.const 0 + i32.const 0 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3660 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const -1 + f64.const 0 + i32.const 0 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3661 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.5 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3662 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.5 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3663 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.0000152587890625 + f64.const 1 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3664 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.0000152587890625 + f64.const -1 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3665 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9999923706054688 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3666 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.9999923706054688 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3667 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 7.888609052210118e-31 + f64.const 0 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3668 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -7.888609052210118e-31 + f64.const -0 + f64.const 0 + i32.const 1 + call $std/math/test_trunc + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3669 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.066848754882812 + f32.const -8 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3678 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 4.345239639282227 + f32.const 4 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3679 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -8.381433486938477 + f32.const -8 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3680 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -6.531673431396484 + f32.const -6 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3681 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 9.267057418823242 + f32.const 9 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3682 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.6619858741760254 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3683 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.40660393238067627 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3684 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5617597699165344 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3685 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.7741522789001465 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3686 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.6787636876106262 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3687 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + f32.const nan:0x400000 + f32.const 0 + i32.const 0 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3690 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + f32.const inf + f32.const 0 + i32.const 0 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3691 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + f32.const -inf + f32.const 0 + i32.const 0 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3692 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + f32.const 0 + f32.const 0 + i32.const 0 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3693 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0 + f32.const -0 + f32.const 0 + i32.const 0 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3694 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + f32.const 1 + f32.const 0 + i32.const 0 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3695 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1 + f32.const -1 + f32.const 0 + i32.const 0 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3696 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.5 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3697 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.5 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3698 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.0000152587890625 + f32.const 1 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3699 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -1.0000152587890625 + f32.const -1 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3700 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0.9999923706054688 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3701 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -0.9999923706054688 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3702 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 7.888609052210118e-31 + f32.const 0 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3703 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -7.888609052210118e-31 + f32.const -0 + f32.const 0 + i32.const 1 + call $std/math/test_truncf + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3704 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -4602641186874283791 + i64.const -4616392916911125550 + i64.const -4628956453976145920 + i64.const -4626592471448962314 + i64.const -4630808324688838656 + global.get $std/math/INEXACT + call $std/math/test_sincos + drop + i64.const 4616578323568966759 + i64.const -4616789907589610460 + i64.const -4632356642145435648 + i64.const -4623234040091605244 + i64.const -4630954342839484416 + global.get $std/math/INEXACT + call $std/math/test_sincos + drop + i64.const -4602464091242371353 + i64.const -4617413764247143988 + i64.const -4630245256623816704 + i64.const -4620663195860462557 + i64.const -4641537901929168896 + global.get $std/math/INEXACT + call $std/math/test_sincos + drop + i64.const -4604332007749985084 + i64.const -4625343132137557201 + i64.const -4629629133364658176 + i64.const 4606905765568473756 + i64.const -4621075345754292224 + global.get $std/math/INEXACT + call $std/math/test_sincos + drop + i64.const 4621406507342668262 + i64.const 4594826987695694788 + i64.const -4639197561901547520 + i64.const -4616301417154991689 + i64.const 4602463851227643904 + global.get $std/math/INEXACT + call $std/math/test_sincos + drop + i64.const 4604137858433287319 + i64.const 4603711805189578650 + i64.const -4631518618864058368 + i64.const 4605279855905985745 + i64.const 4593746800099196928 + global.get $std/math/INEXACT + call $std/math/test_sincos + drop + i64.const -4622375691843501615 + i64.const -4622575858842575876 + i64.const -4623091339515396096 + i64.const 4606448054996611351 + i64.const -4624994927539912704 + global.get $std/math/INEXACT + call $std/math/test_sincos + drop + i64.const 4603235101512779211 + i64.const 4602973141375866126 + i64.const -4623304571219869696 + i64.const 4605798183832360369 + i64.const -4624249509122146304 + global.get $std/math/INEXACT + call $std/math/test_sincos + drop + i64.const 4605148163534189634 + i64.const 4604472244479532466 + i64.const -4621996155604041728 + i64.const 4604615492473651755 + i64.const -4632555521679818752 + global.get $std/math/INEXACT + call $std/math/test_sincos + drop + i64.const -4619083057392940530 + i64.const -4619541816298850243 + i64.const -4622804297187328000 + i64.const 4605185968576882368 + i64.const 4599236402884902912 + global.get $std/math/INEXACT + call $std/math/test_sincos + drop + f64.const 2 + f64.const 4 + call $~lib/math/NativeMath.imul + f64.const 8 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3745 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + f64.const 8 + call $~lib/math/NativeMath.imul + f64.const -8 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3746 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2 + f64.const -2 + call $~lib/math/NativeMath.imul + f64.const 4 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3747 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4294967295 + f64.const 5 + call $~lib/math/NativeMath.imul + f64.const -5 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3748 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4294967294 + f64.const 5 + call $~lib/math/NativeMath.imul + f64.const -10 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3749 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.e+60 + f64.const 1.e+60 + call $~lib/math/NativeMath.imul + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3750 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.e+60 + f64.const -1.e+60 + call $~lib/math/NativeMath.imul + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3751 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.e+60 + f64.const -1.e+60 + call $~lib/math/NativeMath.imul + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3752 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.e+24 + f64.const 100 + call $~lib/math/NativeMath.imul + f64.const -2147483648 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3753 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + f64.const 1 + call $~lib/math/NativeMath.imul + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3754 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + f64.const inf + call $~lib/math/NativeMath.imul + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3755 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + f64.const 1797693134862315708145274e284 + call $~lib/math/NativeMath.imul + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3756 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + call $~lib/math/NativeMath.clz32 + f64.const 32 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3760 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + call $~lib/math/NativeMath.clz32 + f64.const 31 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3761 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + call $~lib/math/NativeMath.clz32 + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3762 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -128 + call $~lib/math/NativeMath.clz32 + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3763 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4294967295 + call $~lib/math/NativeMath.clz32 + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3764 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4294967295.5 + call $~lib/math/NativeMath.clz32 + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3765 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4294967296 + call $~lib/math/NativeMath.clz32 + f64.const 32 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3766 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4294967297 + call $~lib/math/NativeMath.clz32 + f64.const 31 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3767 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + call $~lib/math/NativeMath.clz32 + f64.const 32 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3768 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + call $~lib/math/NativeMath.clz32 + f64.const 32 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3769 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9007199254740991 + call $~lib/math/NativeMath.clz32 + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3770 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -9007199254740991 + call $~lib/math/NativeMath.clz32 + f64.const 31 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3771 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + call $~lib/math/NativeMath.clz32 + f64.const 32 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3772 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5e-324 + call $~lib/math/NativeMath.clz32 + f64.const 32 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3773 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1797693134862315708145274e284 + call $~lib/math/NativeMath.clz32 + f64.const 32 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3774 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.220446049250313e-16 + call $~lib/math/NativeMath.clz32 + f64.const 32 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3775 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 0 + i32.const 0 + call $~lib/math/ipow64 + i64.const 1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3779 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 0 + i32.const 1 + call $~lib/math/ipow64 + i64.const 0 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3780 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 0 + i32.const 2 + call $~lib/math/ipow64 + i64.const 0 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3781 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 0 + i32.const 3 + call $~lib/math/ipow64 + i64.const 0 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3782 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 1 + i32.const 0 + call $~lib/math/ipow64 + i64.const 1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3784 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 1 + i32.const 1 + call $~lib/math/ipow64 + i64.const 1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3785 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 1 + i32.const 2 + call $~lib/math/ipow64 + i64.const 1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3786 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 1 + i32.const 3 + call $~lib/math/ipow64 + i64.const 1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3787 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 2 + i32.const 0 + call $~lib/math/ipow64 + i64.const 1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3789 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 2 + i32.const 1 + call $~lib/math/ipow64 + i64.const 2 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3790 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 2 + i32.const 2 + call $~lib/math/ipow64 + i64.const 4 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3791 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 2 + i32.const 3 + call $~lib/math/ipow64 + i64.const 8 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3792 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -1 + i32.const 0 + call $~lib/math/ipow64 + i64.const 1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3794 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -1 + i32.const 1 + call $~lib/math/ipow64 + i64.const -1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3795 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -1 + i32.const 2 + call $~lib/math/ipow64 + i64.const 1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3796 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -1 + i32.const 3 + call $~lib/math/ipow64 + i64.const -1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3797 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -2 + i32.const 0 + call $~lib/math/ipow64 + i64.const 1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3799 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -2 + i32.const 1 + call $~lib/math/ipow64 + i64.const -2 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3800 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -2 + i32.const 2 + call $~lib/math/ipow64 + i64.const 4 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3801 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -2 + i32.const 3 + call $~lib/math/ipow64 + i64.const -8 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3802 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 3 + i32.const 40 + call $~lib/math/ipow64 + i64.const -6289078614652622815 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3804 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 3 + i32.const 41 + call $~lib/math/ipow64 + i64.const -420491770248316829 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3805 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 3 + i32.const 42 + call $~lib/math/ipow64 + i64.const -1261475310744950487 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3806 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 3 + i32.const 43 + call $~lib/math/ipow64 + i64.const -3784425932234851461 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3807 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 3 + i32.const 63 + call $~lib/math/ipow64 + i64.const -3237885987332494933 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3808 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 3 + i32.const 64 + call $~lib/math/ipow64 + i64.const 8733086111712066817 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3809 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 3 + i32.const 128 + call $~lib/math/ipow64 + i64.const -9204772141784466943 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3810 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 57055 + i32.const 3 + call $~lib/math/ipow64 + i64.const 339590 + i32.const 3 + call $~lib/math/ipow64 + i64.add + i64.const 39347712995520375 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3812 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 0 + i32.const 0 + call $~lib/math/ipow32f + f32.const 1 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3816 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + i32.const 0 + call $~lib/math/ipow32f + f32.const 1 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3817 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + i32.const 1 + call $~lib/math/ipow32f + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3818 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + i32.const -1 + call $~lib/math/ipow32f + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3819 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const nan:0x400000 + i32.const 2 + call $~lib/math/ipow32f + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3820 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + i32.const 0 + call $~lib/math/ipow32f + f32.const 1 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3821 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const inf + i32.const 1 + call $~lib/math/ipow32f + f32.const inf + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3822 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + i32.const 0 + call $~lib/math/ipow32f + f32.const 1 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3823 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + i32.const 1 + call $~lib/math/ipow32f + f32.const -inf + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3824 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const -inf + i32.const 2 + call $~lib/math/ipow32f + f32.const inf + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3825 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1 + i32.const 0 + call $~lib/math/ipow32f + f32.const 1 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3826 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 3402823466385288598117041e14 + i32.const 2 + call $~lib/math/ipow32f + f32.const inf + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3827 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 1.401298464324817e-45 + i32.const 2 + call $~lib/math/ipow32f + f32.const 0 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3828 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 3402823466385288598117041e14 + i32.const -1 + call $~lib/math/ipow32f + f32.const 2.938735877055719e-39 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3829 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 10 + i32.const 36 + call $~lib/math/ipow32f + f32.const 1000000040918478759629753e12 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3830 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f32.const 10 + i32.const -36 + call $~lib/math/ipow32f + f32.const 9.999999462560281e-37 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3831 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + i32.const 0 + call $~lib/math/ipow64f + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3835 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + i32.const 0 + call $~lib/math/ipow64f + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3836 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + i32.const 1 + call $~lib/math/ipow64f + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3837 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + i32.const -1 + call $~lib/math/ipow64f + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3838 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + i32.const 2 + call $~lib/math/ipow64f + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3839 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + i32.const 0 + call $~lib/math/ipow64f + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3840 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + i32.const 1 + call $~lib/math/ipow64f + f64.const inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3841 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + i32.const 0 + call $~lib/math/ipow64f + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3842 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + i32.const 1 + call $~lib/math/ipow64f + f64.const -inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3843 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + i32.const 2 + call $~lib/math/ipow64f + f64.const inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3844 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + i32.const 0 + call $~lib/math/ipow64f + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3845 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + i32.const 2 + call $~lib/math/ipow64f + f64.const inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3846 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5e-324 + i32.const 2 + call $~lib/math/ipow64f + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3847 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + i32.const -1 + call $~lib/math/ipow64f + f64.const 5.562684646268003e-309 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3848 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 10 + i32.const 127 + call $~lib/math/ipow64f + f64.const 1000000000000000195419867e103 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3849 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 10 + i32.const -127 + call $~lib/math/ipow64f + f64.const 9.999999999999998e-128 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 24 + i32.const 3850 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + ) + (func $start (; 179 ;) (type $FUNCSIG$v) + call $start:std/math + ) + (func $null (; 180 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index 35e1d38626..423beb38d5 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -37,7 +37,7 @@ if i32.const 320 i32.const 376 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -724,7 +724,7 @@ if i32.const 320 i32.const 376 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -763,7 +763,7 @@ if i32.const 320 i32.const 376 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -802,7 +802,7 @@ if i32.const 320 i32.const 376 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/static-array.untouched.wat b/tests/compiler/std/static-array.untouched.wat index e69de29bb2..f56218cec2 100644 --- a/tests/compiler/std/static-array.untouched.wat +++ b/tests/compiler/std/static-array.untouched.wat @@ -0,0 +1,2389 @@ +(module + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$jii (func (param i32 i32) (result i64))) + (type $FUNCSIG$viij (func (param i32 i32 i64))) + (type $FUNCSIG$fii (func (param i32 i32) (result f32))) + (type $FUNCSIG$viif (func (param i32 i32 f32))) + (type $FUNCSIG$dii (func (param i32 i32) (result f64))) + (type $FUNCSIG$viid (func (param i32 i32 f64))) + (type $FUNCSIG$v (func)) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (memory $0 1) + (data (i32.const 8) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") + (data (i32.const 32) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\18\00\00\00\18\00\00\00\08\00\00\00\02\00\00\00") + (data (i32.const 64) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\03\00\00\00\00\00\00\00\04\00\00\00\00\00\00\00") + (data (i32.const 96) "\10\00\00\00\01\00\00\00\04\00\00\00\10\00\00\00P\00\00\00P\00\00\00\10\00\00\00\02\00\00\00") + (data (i32.const 128) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\00\00\c0?\00\00 @") + (data (i32.const 152) "\10\00\00\00\01\00\00\00\05\00\00\00\10\00\00\00\90\00\00\00\90\00\00\00\08\00\00\00\02\00\00\00") + (data (i32.const 184) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\00\00\f4?\00\00\00\00\00\00\02@") + (data (i32.const 216) "\10\00\00\00\01\00\00\00\06\00\00\00\10\00\00\00\c8\00\00\00\c8\00\00\00\10\00\00\00\02\00\00\00") + (data (i32.const 248) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00s\00t\00d\00/\00s\00t\00a\00t\00i\00c\00-\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 304) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") + (data (i32.const 360) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 408) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") + (data (i32.const 456) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00s\00t\00u\00b\00.\00t\00s\00") + (table $0 1 funcref) + (elem (i32.const 0) $null) + (global $std/static-array/i i32 (i32.const 48)) + (global $std/static-array/I i32 (i32.const 112)) + (global $std/static-array/f i32 (i32.const 168)) + (global $std/static-array/F i32 (i32.const 232)) + (global $~lib/rt/stub/startOffset (mut i32) (i32.const 0)) + (global $~lib/rt/stub/offset (mut i32) (i32.const 0)) + (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) + (global $~lib/heap/__heap_base i32 (i32.const 504)) + (export "memory" (memory $0)) + (start $start) + (func $~lib/array/Array#get:length (; 1 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array#__unchecked_get (; 2 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + ) + (func $~lib/array/Array#__get (; 3 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 320 + i32.const 376 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $~lib/rt/stub/maybeGrowMemory (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + memory.size + local.set $1 + local.get $1 + i32.const 16 + i32.shl + local.set $2 + local.get $0 + local.get $2 + i32.gt_u + if + local.get $0 + local.get $2 + i32.sub + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $3 + local.get $1 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.set $4 + local.get $4 + memory.grow + i32.const 0 + i32.lt_s + if + local.get $3 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + end + local.get $0 + global.set $~lib/rt/stub/offset + ) + (func $~lib/rt/stub/__alloc (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.const 1073741808 + i32.gt_u + if + unreachable + end + global.get $~lib/rt/stub/offset + i32.const 16 + i32.add + local.set $2 + local.get $0 + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.tee $3 + i32.const 16 + local.tee $4 + local.get $3 + local.get $4 + i32.gt_u + select + local.set $5 + local.get $2 + local.get $5 + i32.add + call $~lib/rt/stub/maybeGrowMemory + local.get $2 + i32.const 16 + i32.sub + local.set $6 + local.get $6 + local.get $5 + i32.store + local.get $6 + i32.const -1 + i32.store offset=4 + local.get $6 + local.get $1 + i32.store offset=8 + local.get $6 + local.get $0 + i32.store offset=12 + local.get $2 + ) + (func $~lib/util/memory/memcpy (; 6 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + loop $continue|0 + local.get $2 + if (result i32) + local.get $1 + i32.const 3 + i32.and + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $0 + i32.const 3 + i32.and + i32.const 0 + i32.eq + if + block $break|1 + loop $continue|1 + local.get $2 + i32.const 16 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 8 + i32.add + i32.load + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 12 + i32.add + i32.load + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|1 + end + unreachable + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.set $0 + local.get $1 + i32.const 4 + i32.add + local.set $1 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load16_u + i32.store16 + local.get $0 + i32.const 2 + i32.add + local.set $0 + local.get $1 + i32.const 2 + i32.add + local.set $1 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + return + end + local.get $2 + i32.const 32 + i32.ge_u + if + block $break|2 + block $case2|2 + block $case1|2 + block $case0|2 + local.get $0 + i32.const 3 + i32.and + local.set $5 + local.get $5 + i32.const 1 + i32.eq + br_if $case0|2 + local.get $5 + i32.const 2 + i32.eq + br_if $case1|2 + local.get $5 + i32.const 3 + i32.eq + br_if $case2|2 + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 3 + i32.sub + local.set $2 + block $break|3 + loop $continue|3 + local.get $2 + i32.const 17 + i32.ge_u + i32.eqz + br_if $break|3 + local.get $1 + i32.const 1 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 5 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 9 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 13 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|3 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + block $break|4 + loop $continue|4 + local.get $2 + i32.const 18 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $1 + i32.const 2 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 6 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 10 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 14 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|4 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + block $break|5 + loop $continue|5 + local.get $2 + i32.const 19 + i32.ge_u + i32.eqz + br_if $break|5 + local.get $1 + i32.const 3 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 7 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 11 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 15 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|5 + end + unreachable + end + br $break|2 + end + end + local.get $2 + i32.const 16 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + ) + (func $~lib/memory/memory.copy (; 7 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + local.get $4 + i32.eq + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $4 + local.get $3 + i32.add + local.get $5 + i32.le_u + if (result i32) + i32.const 1 + else + local.get $5 + local.get $3 + i32.add + local.get $4 + i32.le_u + end + if + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $4 + i32.lt_u + if + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|0 + loop $continue|0 + local.get $5 + i32.const 7 + i32.and + i32.eqz + br_if $break|0 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $3 + i32.const 1 + i32.sub + local.set $3 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + br $continue|0 + end + unreachable + end + block $break|1 + loop $continue|1 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $5 + local.get $4 + i64.load + i64.store + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + i32.const 8 + i32.add + local.set $5 + local.get $4 + i32.const 8 + i32.add + local.set $4 + br $continue|1 + end + unreachable + end + end + block $break|2 + loop $continue|2 + local.get $3 + i32.eqz + br_if $break|2 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + local.get $3 + i32.const 1 + i32.sub + local.set $3 + br $continue|2 + end + unreachable + end + else + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|3 + loop $continue|3 + local.get $5 + local.get $3 + i32.add + i32.const 7 + i32.and + i32.eqz + br_if $break|3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + local.get $3 + i32.add + local.get $4 + local.get $3 + i32.add + i64.load + i64.store + br $continue|4 + end + unreachable + end + end + block $break|5 + loop $continue|5 + local.get $3 + i32.eqz + br_if $break|5 + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|5 + end + unreachable + end + end + end + ) + (func $~lib/rt/stub/__realloc (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 472 + i32.const 43 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 16 + i32.sub + local.set $2 + local.get $2 + i32.load + local.set $3 + local.get $2 + i32.load offset=4 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 472 + i32.const 46 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $3 + i32.gt_u + if + local.get $0 + local.get $3 + i32.add + global.get $~lib/rt/stub/offset + i32.eq + if + local.get $1 + i32.const 1073741808 + i32.gt_u + if + unreachable + end + local.get $1 + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.set $3 + local.get $0 + local.get $3 + i32.add + call $~lib/rt/stub/maybeGrowMemory + local.get $2 + local.get $3 + i32.store + else + local.get $1 + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.tee $4 + local.get $3 + i32.const 1 + i32.shl + local.tee $5 + local.get $4 + local.get $5 + i32.gt_u + select + local.set $3 + local.get $3 + local.get $2 + i32.load offset=8 + call $~lib/rt/stub/__alloc + local.set $4 + local.get $4 + local.get $0 + local.get $2 + i32.load offset=12 + call $~lib/memory/memory.copy + local.get $4 + local.tee $0 + i32.const 16 + i32.sub + local.set $2 + end + else + local.get $0 + local.get $3 + i32.add + global.get $~lib/rt/stub/offset + i32.eq + if + local.get $1 + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.set $3 + local.get $0 + local.get $3 + i32.add + global.set $~lib/rt/stub/offset + local.get $2 + local.get $3 + i32.store + end + end + local.get $2 + local.get $1 + i32.store offset=12 + local.get $0 + ) + (func $~lib/memory/memory.fill (; 9 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + block $~lib/util/memory/memset|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 1 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 2 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.get $4 + i32.store8 + local.get $5 + i32.const 2 + i32.add + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 2 + i32.sub + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 3 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 6 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 3 + i32.add + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 8 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + i32.const 0 + local.get $5 + i32.sub + i32.const 3 + i32.and + local.set $6 + local.get $5 + local.get $6 + i32.add + local.set $5 + local.get $3 + local.get $6 + i32.sub + local.set $3 + local.get $3 + i32.const -4 + i32.and + local.set $3 + i32.const -1 + i32.const 255 + i32.div_u + local.get $4 + i32.const 255 + i32.and + i32.mul + local.set $7 + local.get $5 + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.get $7 + i32.store + local.get $3 + i32.const 8 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 4 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 8 + i32.add + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 12 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 8 + i32.sub + local.get $7 + i32.store + local.get $3 + i32.const 24 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 12 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 16 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 20 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 24 + i32.add + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 28 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 24 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 20 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 16 + i32.sub + local.get $7 + i32.store + i32.const 24 + local.get $5 + i32.const 4 + i32.and + i32.add + local.set $6 + local.get $5 + local.get $6 + i32.add + local.set $5 + local.get $3 + local.get $6 + i32.sub + local.set $3 + local.get $7 + i64.extend_i32_u + local.get $7 + i64.extend_i32_u + i64.const 32 + i64.shl + i64.or + local.set $8 + block $break|0 + loop $continue|0 + local.get $3 + i32.const 32 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $5 + local.get $8 + i64.store + local.get $5 + i32.const 8 + i32.add + local.get $8 + i64.store + local.get $5 + i32.const 16 + i32.add + local.get $8 + i64.store + local.get $5 + i32.const 24 + i32.add + local.get $8 + i64.store + local.get $3 + i32.const 32 + i32.sub + local.set $3 + local.get $5 + i32.const 32 + i32.add + local.set $5 + br $continue|0 + end + unreachable + end + end + ) + (func $~lib/rt/stub/__retain (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + ) + (func $~lib/array/ensureSize (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=8 + local.set $3 + local.get $1 + local.get $3 + local.get $2 + i32.shr_u + i32.gt_u + if + local.get $1 + i32.const 1073741808 + local.get $2 + i32.shr_u + i32.gt_u + if + i32.const 424 + i32.const 376 + i32.const 14 + i32.const 47 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load + local.set $4 + local.get $1 + local.get $2 + i32.shl + local.set $5 + local.get $4 + local.get $5 + call $~lib/rt/stub/__realloc + local.set $6 + local.get $6 + local.get $3 + i32.add + i32.const 0 + local.get $5 + local.get $3 + i32.sub + call $~lib/memory/memory.fill + local.get $6 + local.get $4 + i32.ne + if + local.get $0 + local.get $6 + call $~lib/rt/stub/__retain + i32.store + local.get $0 + local.get $6 + i32.store offset=4 + end + local.get $0 + local.get $5 + i32.store offset=8 + end + ) + (func $~lib/array/Array#__unchecked_set (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $2 + i32.store + ) + (func $~lib/array/Array#__set (; 13 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.const 2 + call $~lib/array/ensureSize + local.get $0 + local.get $1 + local.get $2 + call $~lib/array/Array#__unchecked_set + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_s + if + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=12 + end + ) + (func $~lib/array/Array#get:length (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array#__unchecked_get (; 15 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + i64.load + ) + (func $~lib/array/Array#__get (; 16 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + (local $2 i64) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 320 + i32.const 376 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $~lib/array/Array#__unchecked_set (; 17 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + local.get $2 + i64.store + ) + (func $~lib/array/Array#__set (; 18 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.const 3 + call $~lib/array/ensureSize + local.get $0 + local.get $1 + local.get $2 + call $~lib/array/Array#__unchecked_set + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_s + if + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=12 + end + ) + (func $~lib/array/Array#get:length (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array#__unchecked_get (; 20 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + f32.load + ) + (func $~lib/array/Array#__get (; 21 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) + (local $2 f32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 320 + i32.const 376 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $~lib/array/Array#__unchecked_set (; 22 ;) (type $FUNCSIG$viif) (param $0 i32) (param $1 i32) (param $2 f32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $2 + f32.store + ) + (func $~lib/array/Array#__set (; 23 ;) (type $FUNCSIG$viif) (param $0 i32) (param $1 i32) (param $2 f32) + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.const 2 + call $~lib/array/ensureSize + local.get $0 + local.get $1 + local.get $2 + call $~lib/array/Array#__unchecked_set + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_s + if + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=12 + end + ) + (func $~lib/array/Array#get:length (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array#__unchecked_get (; 25 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + f64.load + ) + (func $~lib/array/Array#__get (; 26 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) + (local $2 f64) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 320 + i32.const 376 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $~lib/array/Array#__unchecked_set (; 27 ;) (type $FUNCSIG$viid) (param $0 i32) (param $1 i32) (param $2 f64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + local.get $2 + f64.store + ) + (func $~lib/array/Array#__set (; 28 ;) (type $FUNCSIG$viid) (param $0 i32) (param $1 i32) (param $2 f64) + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.const 3 + call $~lib/array/ensureSize + local.get $0 + local.get $1 + local.get $2 + call $~lib/array/Array#__unchecked_set + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_s + if + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=12 + end + ) + (func $start:std/static-array (; 29 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + i32.const 48 + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 6 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 48 + i32.const 0 + call $~lib/array/Array#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 7 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 48 + i32.const 1 + call $~lib/array/Array#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 8 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/heap/__heap_base + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + global.set $~lib/rt/stub/startOffset + global.get $~lib/rt/stub/startOffset + global.set $~lib/rt/stub/offset + global.get $std/static-array/i + i32.const 0 + i32.const 2 + call $~lib/array/Array#__set + i32.const 48 + i32.const 0 + call $~lib/array/Array#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 10 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 112 + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 12 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 112 + i32.const 0 + call $~lib/array/Array#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 13 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 112 + i32.const 1 + call $~lib/array/Array#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 14 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/static-array/I + i32.const 0 + i64.const 4 + call $~lib/array/Array#__set + i32.const 112 + i32.const 0 + call $~lib/array/Array#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 16 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 168 + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 18 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 168 + i32.const 0 + call $~lib/array/Array#__get + f32.const 1.5 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 19 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 168 + i32.const 1 + call $~lib/array/Array#__get + f32.const 2.5 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 20 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/static-array/f + i32.const 0 + f32.const 2.5 + call $~lib/array/Array#__set + i32.const 168 + i32.const 0 + call $~lib/array/Array#__get + f32.const 2.5 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 22 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 232 + call $~lib/array/Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 24 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 232 + i32.const 0 + call $~lib/array/Array#__get + f64.const 1.25 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 25 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 232 + i32.const 1 + call $~lib/array/Array#__get + f64.const 2.25 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 26 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/static-array/F + i32.const 0 + f64.const 2.25 + call $~lib/array/Array#__set + i32.const 232 + i32.const 0 + call $~lib/array/Array#__get + f64.const 2.25 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 264 + i32.const 28 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + ) + (func $start (; 30 ;) (type $FUNCSIG$v) + call $start:std/static-array + ) + (func $null (; 31 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 62292d3d0d..5685cc085a 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -6201,7 +6201,7 @@ if i32.const 232 i32.const 10824 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -6221,7 +6221,7 @@ call $~lib/rt/pure/__release i32.const 10872 i32.const 10824 - i32.const 100 + i32.const 96 i32.const 39 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/string.untouched.wat b/tests/compiler/std/string.untouched.wat index e69de29bb2..40d61571fe 100644 --- a/tests/compiler/std/string.untouched.wat +++ b/tests/compiler/std/string.untouched.wat @@ -0,0 +1,18441 @@ +(module + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$vii (func (param i32 i32))) + (type $FUNCSIG$v (func)) + (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$dii (func (param i32 i32) (result f64))) + (type $FUNCSIG$jii (func (param i32 i32) (result i64))) + (type $FUNCSIG$di (func (param i32) (result f64))) + (type $FUNCSIG$ddi (func (param f64 i32) (result f64))) + (type $FUNCSIG$id (func (param f64) (result i32))) + (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$ij (func (param i64) (result i32))) + (type $FUNCSIG$viji (func (param i32 i64 i32))) + (type $FUNCSIG$iid (func (param i32 f64) (result i32))) + (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) + (type $FUNCSIG$i (func (result i32))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32))) + (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32))) + (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32))) + (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32))) + (memory $0 1) + (data (i32.const 8) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00h\00i\00,\00 \00I\00\'\00m\00 \00a\00 \00s\00t\00r\00i\00n\00g\00") + (data (i32.const 56) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00s\00t\00d\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s\00") + (data (i32.const 104) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00") + (data (i32.const 120) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") + (data (i32.const 168) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") + (data (i32.const 216) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") + (data (i32.const 272) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") + (data (i32.const 312) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") + (data (i32.const 368) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00\00\00") + (data (i32.const 392) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00a\00") + (data (i32.const 416) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\006\00") + (data (i32.const 440) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00\00\d8\00\df") + (data (i32.const 464) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00~\00l\00i\00b\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s\00") + (data (i32.const 512) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\004\d8\06\df") + (data (i32.const 536) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00h\00i\00") + (data (i32.const 560) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00n\00u\00l\00l\00") + (data (i32.const 584) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00s\00t\00r\00i\00n\00g\00") + (data (i32.const 616) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00I\00\'\00m\00") + (data (i32.const 640) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00 \00") + (data (i32.const 664) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00 \00 \00 \00") + (data (i32.const 688) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00a\00b\00c\00") + (data (i32.const 712) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00 \00 \00a\00b\00c\00") + (data (i32.const 744) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\001\002\003\00") + (data (i32.const 768) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\002\003\00a\00b\00c\00") + (data (i32.const 800) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\001\002\003\001\002\00a\00b\00c\00") + (data (i32.const 832) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00a\00b\00c\00 \00 \00") + (data (i32.const 864) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00a\00b\00c\00a\00b\00c\00") + (data (i32.const 896) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00a\00b\00c\00a\00b\00c\00a\00b\00") + (data (i32.const 928) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00,\00") + (data (i32.const 952) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00x\00") + (data (i32.const 976) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00,\00 \00I\00") + (data (i32.const 1000) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00g\00") + (data (i32.const 1024) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00i\00") + (data (i32.const 1048) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00a\00b\00 \00c\00") + (data (i32.const 1072) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\00 \00\n\00\t\00\0d\00a\00b\00c\00 \00\t\00\0d\00 \00") + (data (i32.const 1112) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00a\00b\00c\00 \00\t\00\0d\00 \00") + (data (i32.const 1144) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00 \00\n\00\t\00\0d\00a\00b\00c\00") + (data (i32.const 1176) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") + (data (i32.const 1200) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\000\000\00") + (data (i32.const 1224) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\001\00") + (data (i32.const 1248) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\000\000\000\001\00") + (data (i32.const 1272) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\00b\001\000\001\00") + (data (i32.const 1304) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\00o\007\000\007\00") + (data (i32.const 1336) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\00x\00f\000\00f\00") + (data (i32.const 1368) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\00x\00F\000\00F\00") + (data (i32.const 1400) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\001\001\00") + (data (i32.const 1424) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\000\00x\001\00g\00") + (data (i32.const 1448) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00-\001\002\003\00") + (data (i32.const 1472) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00+\001\002\003\00") + (data (i32.const 1496) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00-\001\002\00.\003\00") + (data (i32.const 1528) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00 \00\t\00\n\001\00") + (data (i32.const 1552) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00 \00\t\00\n\000\00x\000\002\00") + (data (i32.const 1584) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\000\00x\007\00F\00F\00F\00F\00F\00F\00F\00") + (data (i32.const 1624) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\000\00x\007\00F\00F\00F\00F\00F\00F\00F\00F\00F\00F\00F\00F\00F\00F\00F\00") + (data (i32.const 1680) "P\00\00\00\01\00\00\00\00\00\00\00P\00\00\00\00\00\00\00\00\00\f0?\17n\05\b5\b5\b8\93F\f5\f9?\e9\03O8Mc\b3\d8bu\f6\ddS2\1d0\f9Hw\82Z\c3\fco%\d4\c2&a\eb$\a7\f1\1e\0e\ccg\99g\fc\dfRJqn<\bfs\7f\ddO\15uF\8d+\83\dfD\ba{") + (data (i32.const 1776) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\a0\06\00\00\a0\06\00\00P\00\00\00\n\00\00\00") + (data (i32.const 1808) "\00\01\00\00\01\00\00\00\00\00\00\00\00\01\00\00\00\00\00\00\00\00\f0?\00\00\00\00\00\00$@\00\00\00\00\00\00Y@\00\00\00\00\00@\8f@\00\00\00\00\00\88\c3@\00\00\00\00\00j\f8@\00\00\00\00\80\84.A\00\00\00\00\d0\12cA\00\00\00\00\84\d7\97A\00\00\00\00e\cd\cdA\00\00\00 _\a0\02B\00\00\00\e8vH7B\00\00\00\a2\94\1amB\00\00@\e5\9c0\a2B\00\00\90\1e\c4\bc\d6B\00\004&\f5k\0cC\00\80\e07y\c3AC\00\a0\d8\85W4vC\00\c8Ngm\c1\abC\00=\91`\e4X\e1C@\8c\b5x\1d\af\15DP\ef\e2\d6\e4\1aKD\92\d5M\06\cf\f0\80D\f6J\e1\c7\02-\b5D\b4\9d\d9yCx\eaD\91\02(,*\8b E5\032\b7\f4\adTE\02\84\fe\e4q\d9\89E\81\12\1f/\e7\'\c0E!\d7\e6\fa\e01\f4E\ea\8c\a09Y>)F$\b0\08\88\ef\8d_F") + (data (i32.const 2080) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00 \07\00\00 \07\00\00\00\01\00\00 \00\00\00") + (data (i32.const 2112) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\001\00.\00") + (data (i32.const 2136) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00.\000\000\00") + (data (i32.const 2160) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00e\00-\005\00") + (data (i32.const 2184) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00-\001\00e\00-\005\00") + (data (i32.const 2216) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00-\000\00.\003\00e\00-\002\002\00") + (data (i32.const 2248) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\000\00.\003\00e\00+\002\002\00") + (data (i32.const 2280) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00e\00-\001\00") + (data (i32.const 2304) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\000\00.\001\00e\00-\000\00") + (data (i32.const 2336) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\001\00") + (data (i32.const 2360) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00.\002\005\00") + (data (i32.const 2384) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\00.\000\00e\00-\001\000\00") + (data (i32.const 2416) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\00.\000\00e\00-\003\000\00") + (data (i32.const 2448) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\001\00.\000\00e\00-\003\002\003\00") + (data (i32.const 2480) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\001\00.\000\00e\00-\003\002\004\00") + (data (i32.const 2512) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00e\00+\003\000\008\00") + (data (i32.const 2544) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00e\00+\003\000\009\00") + (data (i32.const 2576) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\001\00.\000\00e\00-\001\00_\000\00") + (data (i32.const 2608) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\001\00.\000\00e\00-\001\000\00_\000\00") + (data (i32.const 2648) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\001\00.\000\00e\00+\001\00_\000\00") + (data (i32.const 2680) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\001\00_\000\00") + (data (i32.const 2704) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\001\00_\001\00") + (data (i32.const 2728) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\001\000\00.\000\000\00_\000\001\00e\002\00") + (data (i32.const 2768) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\001\002\003\004\005\006\007\008\009\00_\004\00") + (data (i32.const 2808) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\001\00_\000\001\002\003\004\005\006\007\008\009\00") + (data (i32.const 2848) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\00e\00-\006\000\00") + (data (i32.const 2880) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00e\006\000\00") + (data (i32.const 2904) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00-\00.\000\000\000\000\000\00") + (data (i32.const 2936) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\001\00x\00") + (data (i32.const 2960) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00-\001\001\00e\00-\001\00s\00t\00r\00i\00n\00g\00") + (data (i32.const 3000) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\000\001\00e\001\00s\00t\00r\00i\00n\00g\00") + (data (i32.const 3040) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\000\001\000\00s\00t\00r\00i\00n\00g\00") + (data (i32.const 3080) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00+\00.\002\002\00e\00-\001\00") + (data (i32.const 3112) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\001\00.\00s\001\00") + (data (i32.const 3144) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00x\000\00") + (data (i32.const 3168) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00x\005\00") + (data (i32.const 3192) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00x\00D\00") + (data (i32.const 3216) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00\0b\001\00.\001\00") + (data (i32.const 3240) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00\0b\00\0b\00-\001\00.\001\00") + (data (i32.const 3272) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00\0c\00\0c\00-\001\00.\001\00") + (data (i32.const 3304) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00( ( -\001\00.\001\00") + (data (i32.const 3336) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00) ) -\001\00.\001\00") + (data (i32.const 3368) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\000\000\000\000\00") + (data (i32.const 3400) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\000\000\000\00a\00") + (data (i32.const 3432) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\000\000\000\001\00") + (data (i32.const 3464) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\000\00.\000\000\00") + (data (i32.const 3496) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\000\00.\000\00a\00") + (data (i32.const 3528) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00e\001\00e\00") + (data (i32.const 3552) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\00e\00+\000\000\000\001\00") + (data (i32.const 3584) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\000\00e\00+\001\000\000\00") + (data (i32.const 3616) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\00.\00-\001\00.\00") + (data (i32.const 3648) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00e\00-\001\00.\002\00") + (data (i32.const 3680) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\001\00e\00x\00") + (data (i32.const 3704) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00e\001\00x\00") + (data (i32.const 3728) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00e\00-\00x\00") + (data (i32.const 3752) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\00e\00-\001\00x\00") + (data (i32.const 3784) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\000\00.\001\00e\00-\001\00x\00") + (data (i32.const 3816) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\000\00.\00") + (data (i32.const 3840) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00.\000\000\00") + (data (i32.const 3864) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00.\000\00.\00") + (data (i32.const 3888) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00.\001\00.\00") + (data (i32.const 3912) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\00.\00") + (data (i32.const 3936) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\00a\00") + (data (i32.const 3960) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\00.\00.\001\00") + (data (i32.const 3984) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\000\00.\001\00.\001\00") + (data (i32.const 4016) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\000\00.\00 \001\00") + (data (i32.const 4040) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00+\000\00.\000\00") + (data (i32.const 4064) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00-\000\00.\000\00") + (data (i32.const 4088) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00+\000\00") + (data (i32.const 4112) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00-\000\00") + (data (i32.const 4136) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00+\00") + (data (i32.const 4160) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00-\00") + (data (i32.const 4184) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00-\00-\000\00") + (data (i32.const 4208) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00+\00+\000\00") + (data (i32.const 4232) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00.\00a\00") + (data (i32.const 4256) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00.\00.\000\00") + (data (i32.const 4280) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00.\00") + (data (i32.const 4304) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00.\00.\00") + (data (i32.const 4328) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") + (data (i32.const 4352) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00\0b\00") + (data (i32.const 4376) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00\0e\18") + (data (i32.const 4400) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00\0e\181\00.\001\00") + (data (i32.const 4424) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00\0e\18\0e\181\00.\001\00") + (data (i32.const 4456) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00\0c\00") + (data (i32.const 4480) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00t\00r\00u\00e\00") + (data (i32.const 4504) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00f\00a\00l\00s\00e\00") + (data (i32.const 4536) "*\00\00\00\01\00\00\00\01\00\00\00*\00\00\002\00.\002\002\000\004\004\006\000\004\009\002\005\000\003\001\003\00e\00-\001\006\00") + (data (i32.const 4600) ".\00\00\00\01\00\00\00\01\00\00\00.\00\00\001\00.\007\009\007\006\009\003\001\003\004\008\006\002\003\001\005\007\00e\00+\003\000\008\00") + (data (i32.const 4664) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\005\00e\00-\003\002\004\00") + (data (i32.const 4696) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\000\00.\000\000\000\000\000\001\00e\00+\003\001\004\00") + (data (i32.const 4744) "|\00\00\00\01\00\00\00\01\00\00\00|\00\00\000\00.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\00e\00+\005\006\00") + (data (i32.const 4888) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00+\001\00E\00-\003\002\005\00") + (data (i32.const 4920) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00+\001\00E\00+\003\000\009\00") + (data (i32.const 4952) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00-\001\00E\00-\003\002\005\00") + (data (i32.const 4984) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00-\001\00E\00+\003\000\009\00") + (data (i32.const 5016) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\001\00e\00-\001\000\000\000\000\000\000\00") + (data (i32.const 5056) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\001\00e\00+\001\000\000\000\000\000\000\00") + (data (i32.const 5096) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00.\00e\003\006\000\00") + (data (i32.const 5128) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00 \00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 5168) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00+\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 5208) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 5248) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00x\00") + (data (i32.const 5288) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00+\001\00") + (data (i32.const 5328) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00I\00n\00f\00i\00") + (data (i32.const 5352) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00+\00I\00n\00f\00i\00n\00i\00t\00") + (data (i32.const 5384) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00i\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 5416) "\aa\00\00\00\01\00\00\00\01\00\00\00\aa\00\00\00.\002\004\007\000\003\002\008\002\002\009\002\000\006\002\003\002\007\002\000\008\008\002\008\004\003\009\006\004\003\004\001\001\000\006\008\006\001\008\002\005\002\009\009\000\001\003\000\007\001\006\002\003\008\002\002\001\002\007\009\002\008\004\001\002\005\000\003\003\007\007\005\003\006\003\005\001\000\004\003\00e\00-\003\002\003\00") + (data (i32.const 5608) "\aa\00\00\00\01\00\00\00\01\00\00\00\aa\00\00\00.\007\004\001\000\009\008\004\006\008\007\006\001\008\006\009\008\001\006\002\006\004\008\005\003\001\008\009\003\000\002\003\003\002\000\005\008\005\004\007\005\008\009\007\000\003\009\002\001\004\008\007\001\004\006\006\003\008\003\007\008\005\002\003\007\005\001\000\001\003\002\006\000\009\000\005\003\001\003\002\00e\00-\003\002\003\00") + (data (i32.const 5800) "\aa\00\00\00\01\00\00\00\01\00\00\00\aa\00\00\00.\002\002\002\005\000\007\003\008\005\008\005\000\007\002\000\001\006\003\000\001\002\003\000\005\005\006\003\007\009\005\005\006\007\006\001\005\002\005\000\003\006\001\002\004\001\004\005\007\003\000\001\008\000\001\003\000\008\003\002\002\008\007\002\004\000\004\009\005\008\006\006\004\007\006\000\006\007\006\000\00e\00-\003\000\007\00") + (data (i32.const 5992) "\88\00\00\00\01\00\00\00\01\00\00\00\88\00\00\001\007\009\007\006\009\003\001\003\004\008\006\002\003\001\005\008\000\007\009\003\007\002\008\009\007\001\004\000\005\003\000\003\004\001\005\000\007\009\009\003\004\001\003\002\007\001\000\000\003\007\008\002\006\009\003\006\001\007\003\007\007\008\009\008\000\004\004\00") + (data (i32.const 6144) "\88\00\00\00\01\00\00\00\01\00\00\00\88\00\00\004\009\006\008\002\009\002\007\006\004\007\005\000\009\004\006\006\004\009\000\001\007\009\007\007\005\008\007\002\000\007\000\009\006\003\003\000\002\008\006\004\001\006\006\009\002\008\008\007\009\001\000\009\004\006\005\005\005\005\004\007\008\005\001\009\004\000\004\00") + (data (i32.const 6296) "\88\00\00\00\01\00\00\00\01\00\00\00\88\00\00\000\002\006\003\000\006\005\007\004\008\008\006\007\001\005\000\005\008\002\000\006\008\001\009\000\008\009\000\002\000\000\000\007\000\008\003\008\003\006\007\006\002\007\003\008\005\004\008\004\005\008\001\007\007\001\001\005\003\001\007\006\004\004\007\005\007\003\000\00") + (data (i32.const 6448) "\88\00\00\00\01\00\00\00\01\00\00\00\88\00\00\002\007\000\000\006\009\008\005\005\005\007\001\003\006\006\009\005\009\006\002\002\008\004\002\009\001\004\008\001\009\008\006\000\008\003\004\009\003\006\004\007\005\002\009\002\007\001\009\000\007\004\001\006\008\004\004\004\003\006\005\005\001\000\007\000\004\003\004\00") + (data (i32.const 6600) "\88\00\00\00\01\00\00\00\01\00\00\00\88\00\00\002\007\001\001\005\005\009\006\009\009\005\000\008\000\009\003\000\004\002\008\008\000\001\007\007\009\000\004\001\007\004\004\009\007\007\009\001\00.\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\009\00") + (data (i32.const 6752) "\\\00\00\00\01\00\00\00\01\00\00\00\\\00\00\000\00.\009\007\005\003\005\003\001\008\008\008\007\009\009\005\000\002\006\001\003\008\000\007\001\003\005\002\007\006\001\004\007\001\006\004\004\000\004\003\009\00e\00-\001\000\003\00") + (data (i32.const 6864) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\00.\005\009\006\001\008\006\000\003\004\008\001\003\001\008\000\007\000\009\001\008\006\001\000\000\002\002\006\006\004\005\003\009\004\001\009\005\000\004\002\008\00e\000\000\00") + (data (i32.const 6968) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\001\00.\008\001\005\000\001\003\001\006\009\002\001\008\000\003\008\007\002\009\008\008\007\004\006\000\008\009\008\007\003\003\005\002\006\009\005\007\004\004\002\00e\00-\001\00") + (data (i32.const 7072) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\004\002\00.\000\007\000\008\002\003\005\007\005\003\004\004\005\003\006\000\000\006\008\001\006\001\008\006\008\005\006\008\002\002\005\007\005\009\000\007\007\002\00e\00-\002\00") + (data (i32.const 7176) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\006\006\005\00.\004\006\008\006\003\000\006\005\001\006\002\006\001\004\005\006\003\002\008\009\007\003\002\002\005\005\007\009\008\003\003\004\007\000\008\001\006\00e\00-\003\00") + (data (i32.const 7280) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\006\001\000\001\00.\008\005\002\009\002\002\009\007\000\008\006\008\006\002\001\007\008\006\006\009\000\004\009\005\004\008\005\004\004\009\008\003\001\007\005\003\00e\00-\004\00") + (data (i32.const 7384) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\007\006\009\006\006\00.\009\005\002\000\008\002\003\006\009\006\008\000\007\007\008\004\009\004\006\004\003\004\008\008\007\005\004\007\001\001\005\008\005\004\009\00e\00-\005\00") + (data (i32.const 7488) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\002\005\000\005\000\006\00.\005\003\002\002\002\002\008\006\008\002\004\009\006\001\003\002\006\000\004\008\000\007\002\002\002\009\002\003\007\000\002\003\000\004\00e\00-\006\00") + (data (i32.const 7592) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\002\007\004\000\000\003\007\00.\002\003\000\002\002\008\000\000\005\003\002\005\008\005\002\004\002\004\006\009\007\006\009\008\003\003\001\001\007\007\003\007\007\00e\00-\007\00") + (data (i32.const 7696) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\002\000\007\002\003\000\009\003\00.\005\000\000\004\009\007\004\002\006\004\005\009\004\001\005\002\009\002\006\008\007\001\005\004\002\008\003\002\004\004\009\000\00e\00-\008\00") + (data (i32.const 7800) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\007\009\000\000\002\008\000\002\003\008\000\008\001\006\000\004\009\005\006\002\002\006\000\001\001\000\004\007\004\006\000\002\003\008\007\004\008\009\001\002\00e\001\00") + (data (i32.const 7904) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\009\008\002\002\008\006\000\006\005\003\007\003\007\002\009\006\008\004\008\001\009\000\005\005\008\004\004\008\007\006\000\004\006\005\008\006\003\005\009\007\00e\002\00") + (data (i32.const 8008) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\007\004\006\008\009\004\009\007\002\003\001\009\000\003\007\000\008\000\009\004\000\005\005\007\000\005\006\000\001\006\000\004\000\005\003\002\004\008\006\009\00e\003\00") + (data (i32.const 8112) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\001\006\003\000\002\006\008\003\002\000\002\008\002\007\002\008\004\007\005\009\008\000\004\005\009\008\004\004\002\007\001\000\003\001\007\005\001\006\006\005\00e\004\00") + (data (i32.const 8216) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\004\006\003\007\001\006\008\006\002\009\007\001\009\001\007\000\006\009\005\001\000\009\009\001\008\007\006\009\006\004\005\004\009\002\000\002\002\000\008\008\00e\005\00") + (data (i32.const 8320) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\006\005\003\007\008\000\005\009\004\004\004\009\007\007\001\001\005\005\004\002\000\009\004\006\001\006\008\006\004\001\005\008\007\002\000\006\007\005\002\003\00e\006\00") + (data (i32.const 8424) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\002\003\004\006\003\002\004\003\005\006\005\000\002\004\003\007\000\004\005\002\001\002\002\003\000\007\001\003\009\006\000\004\005\007\006\007\006\005\003\001\00e\006\00") + (data (i32.const 8528) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\009\007\000\009\004\008\001\007\001\006\004\002\000\000\004\008\003\004\001\008\009\007\002\005\008\009\008\000\004\005\004\002\009\008\002\000\005\002\007\008\00e\008\00") + (data (i32.const 8632) "X\00\00\00\01\00\00\00\01\00\00\00X\00\00\000\00.\004\009\009\006\009\000\008\005\002\002\000\005\001\008\007\004\001\001\000\007\007\009\009\008\002\003\005\004\009\003\002\004\009\009\004\009\009\006\000\002\00e\009\00") + (data (i32.const 8736) "Z\00\00\00\01\00\00\00\01\00\00\00Z\00\00\000\00.\007\009\002\005\002\000\001\002\000\000\005\005\007\002\004\005\008\006\001\009\004\004\000\001\001\002\006\007\000\004\001\007\008\007\005\000\005\001\004\009\00e\002\002\00") + (data (i32.const 8848) "Z\00\00\00\01\00\00\00\01\00\00\00Z\00\00\000\00.\006\000\009\006\005\006\004\005\008\005\009\008\003\001\007\007\004\000\008\009\003\004\003\005\002\005\007\000\002\001\003\003\007\007\004\007\005\007\003\009\00e\003\000\00") + (data (i32.const 8960) "Z\00\00\00\01\00\00\00\01\00\00\00Z\00\00\000\00.\004\008\000\000\004\001\006\001\001\007\004\007\007\000\002\008\007\008\007\008\007\004\003\006\000\002\000\005\000\002\003\005\004\009\004\009\007\001\002\008\00e\006\007\00") + (data (i32.const 9072) "\\\00\00\00\01\00\00\00\01\00\00\00\\\00\00\000\00.\008\005\002\004\008\002\009\000\007\009\008\001\007\009\006\008\002\002\004\008\003\000\003\003\007\009\003\001\000\005\002\007\008\001\006\004\001\004\008\003\00e\001\000\005\00") + (data (i32.const 9184) "\\\00\00\00\01\00\00\00\01\00\00\00\\\00\00\000\00.\000\003\002\007\001\002\003\009\002\009\001\007\000\009\007\008\002\001\001\005\004\004\007\000\006\009\003\007\002\007\004\008\009\005\006\000\008\004\002\005\00e\002\006\009\00") + (data (i32.const 9296) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00 \00\t\00\n\00") + (data (i32.const 9320) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00 \00\t\00\n\00\0d\00.\001\00") + (data (i32.const 9352) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00b\00") + (data (i32.const 9376) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00a\00b\00") + (data (i32.const 9400) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00k\00e\00y\001\00") + (data (i32.const 9424) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00k\00e\00y\002\00") + (data (i32.const 9448) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00k\00e\001\00") + (data (i32.const 9472) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00k\00e\002\00") + (data (i32.const 9496) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00k\00e\00y\001\002\00") + (data (i32.const 9528) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00k\00e\00y\001\001\00") + (data (i32.const 9560) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00\a40\ed0\cf0\cb0\db0\d80\c80") + (data (i32.const 9592) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00\a60\f00\ce0\aa0\af0\e40\de0") + (data (i32.const 9624) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\00D\00\19 f\00h\00u\00a\00s\00c\00a\00i\00l\00") + (data (i32.const 9664) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00D\00\19 \1f\1eu\00a\00s\00c\00a\00i\00l\00") + (data (i32.const 9704) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00b\00a\00") + (data (i32.const 9728) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00a\00a\00") + (data (i32.const 9752) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") + (data (i32.const 9800) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00a\00a\00a\00") + (data (i32.const 9824) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00a\00b\00a\00b\00a\00b\00a\00b\00") + (data (i32.const 9856) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00a\00a\00a\00a\00a\00") + (data (i32.const 9888) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00a\00a\00a\00a\00a\00a\00") + (data (i32.const 9920) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00a\00a\00a\00a\00a\00a\00a\00") + (data (i32.const 9952) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00a\00b\00c\00d\00") + (data (i32.const 9976) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00a\00-\00b\00-\00c\00") + (data (i32.const 10008) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00a\00+\00b\00-\00c\00") + (data (i32.const 10040) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00+\00a\00b\00c\00") + (data (i32.const 10064) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00\n\00a\00b\00c\00") + (data (i32.const 10088) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00\n\00") + (data (i32.const 10112) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00c\00") + (data (i32.const 10136) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00+\00+\00") + (data (i32.const 10160) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00a\00b\00+\00+\00") + (data (i32.const 10184) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00a\00b\00c\00a\00b\00c\00a\00b\00c\00") + (data (i32.const 10224) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00+\00+\00+\00") + (data (i32.const 10248) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00a\00b\00c\00a\00b\00c\00a\00") + (data (i32.const 10280) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00+\00+\00+\00b\00c\00+\00+\00+\00b\00c\00+\00+\00+\00") + (data (i32.const 10328) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00+\00+\00c\00+\00+\00c\00") + (data (i32.const 10360) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00c\00c\00c\00c\00") + (data (i32.const 10384) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00c\00c\00") + (data (i32.const 10408) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00+\00+\00+\00+\00") + (data (i32.const 10432) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00e\00") + (data (i32.const 10456) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00b\00c\00") + (data (i32.const 10480) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00a\00+\00") + (data (i32.const 10504) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00a\00+\00b\00+\00c\00") + (data (i32.const 10536) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00a\00b\00d\00") + (data (i32.const 10560) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00+\00a\00+\00b\00+\00c\00+\00") + (data (i32.const 10592) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00a\00b\00c\00d\00e\00f\00g\00h\00i\00j\00k\00l\00m\00n\00") + (data (i32.const 10640) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00n\00") + (data (i32.const 10664) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00j\00k\00l\00m\00n\00") + (data (i32.const 10696) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00c\00d\00e\00f\00g\00") + (data (i32.const 10728) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00d\00e\00f\00g\00h\00") + (data (i32.const 10760) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00a\00b\00c\00d\00e\00f\00g\00h\00i\00j\00k\00l\00m\00") + (data (i32.const 10808) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 10856) "^\00\00\00\01\00\00\00\01\00\00\00^\00\00\00E\00l\00e\00m\00e\00n\00t\00 \00t\00y\00p\00e\00 \00m\00u\00s\00t\00 \00b\00e\00 \00n\00u\00l\00l\00a\00b\00l\00e\00 \00i\00f\00 \00a\00r\00r\00a\00y\00 \00i\00s\00 \00h\00o\00l\00e\00y\00") + (data (i32.const 10968) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00a\00,\00b\00,\00c\00") + (data (i32.const 11000) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00a\00,\00 \00b\00,\00 \00c\00") + (data (i32.const 11032) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00,\00 \00") + (data (i32.const 11056) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00a\00,\00b\00,\00,\00c\00") + (data (i32.const 11088) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00,\00a\00,\00b\00,\00c\00") + (data (i32.const 11120) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\00a\00,\00b\00,\00c\00,\00") + (data (i32.const 11152) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") + (data (i32.const 11568) "\10\00\00\00\01\00\00\00\06\00\00\00\10\00\00\00\a0+\00\00\a0+\00\00\90\01\00\00d\00\00\00") + (data (i32.const 11600) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\008\00") + (data (i32.const 11624) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\001\002\00") + (data (i32.const 11648) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00-\001\000\000\000\00") + (data (i32.const 11680) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\002\003\004\00") + (data (i32.const 11704) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\002\003\004\005\00") + (data (i32.const 11736) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\002\003\004\005\006\00") + (data (i32.const 11768) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\001\001\001\001\001\001\00") + (data (i32.const 11800) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\002\003\004\005\006\007\00") + (data (i32.const 11832) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\001\002\003\004\005\006\007\008\00") + (data (i32.const 11864) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\001\002\003\004\005\006\007\008\009\00") + (data (i32.const 11904) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\002\001\004\007\004\008\003\006\004\006\00") + (data (i32.const 11944) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\002\001\004\007\004\008\003\006\004\007\00") + (data (i32.const 11984) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\00-\002\001\004\007\004\008\003\006\004\008\00") + (data (i32.const 12024) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00-\001\00") + (data (i32.const 12048) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\001\000\000\000\00") + (data (i32.const 12072) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\002\001\004\007\004\008\003\006\004\008\00") + (data (i32.const 12112) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\004\002\009\004\009\006\007\002\009\005\00") + (data (i32.const 12152) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\009\009\009\009\009\009\009\009\00") + (data (i32.const 12184) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\001\000\000\000\000\000\000\000\000\00") + (data (i32.const 12224) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\004\002\009\004\009\006\007\002\009\007\00") + (data (i32.const 12264) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\006\008\007\001\009\004\007\006\007\003\005\00") + (data (i32.const 12304) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\008\006\008\007\001\009\004\007\006\007\003\005\00") + (data (i32.const 12344) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\008\006\008\007\001\009\004\007\006\007\003\005\000\00") + (data (i32.const 12392) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\008\006\008\007\001\009\004\007\006\007\003\005\000\001\00") + (data (i32.const 12440) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") + (data (i32.const 12488) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") + (data (i32.const 12536) "\"\00\00\00\01\00\00\00\01\00\00\00\"\00\00\001\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") + (data (i32.const 12592) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\001\002\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") + (data (i32.const 12648) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\001\002\003\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") + (data (i32.const 12704) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\001\008\004\004\006\007\004\004\000\007\003\007\000\009\005\005\001\006\001\005\00") + (data (i32.const 12760) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00-\001\002\003\004\00") + (data (i32.const 12792) "\16\00\00\00\01\00\00\00\01\00\00\00\16\00\00\00-\004\002\009\004\009\006\007\002\009\005\00") + (data (i32.const 12832) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00-\006\008\007\001\009\004\007\006\007\003\005\00") + (data (i32.const 12872) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00-\008\006\008\007\001\009\004\007\006\007\003\005\00") + (data (i32.const 12920) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00-\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") + (data (i32.const 12968) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00-\001\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") + (data (i32.const 13024) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\009\002\002\003\003\007\002\000\003\006\008\005\004\007\007\005\008\000\007\00") + (data (i32.const 13080) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00-\009\002\002\003\003\007\002\000\003\006\008\005\004\007\007\005\008\000\008\00") + (data (i32.const 13136) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") + (data (i32.const 13160) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 13192) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8 (; 51 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) + (local $2 i32) + (local $3 f64) + (local $4 i32) + (local $5 i32) + (local $6 f64) + (local $7 i32) + (local $8 f64) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/string/String#get:length + local.set $2 + local.get $2 + i32.eqz + if + f64.const nan:0x8000000000000 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $0 + local.set $4 + local.get $4 + i32.load16_u + local.set $5 + f64.const 1 + local.set $6 + block $break|0 + loop $continue|0 + local.get $5 + call $~lib/util/string/isSpace + i32.eqz + br_if $break|0 + local.get $4 + i32.const 2 + i32.add + local.tee $4 + i32.load16_u + local.set $5 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $5 + i32.const 45 + i32.eq + if + local.get $2 + i32.const 1 + i32.sub + local.tee $2 + i32.eqz + if + f64.const nan:0x8000000000000 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $4 + i32.const 2 + i32.add + local.tee $4 + i32.load16_u + local.set $5 + f64.const -1 + local.set $6 + else + local.get $5 + i32.const 43 + i32.eq + if + local.get $2 + i32.const 1 + i32.sub + local.tee $2 + i32.eqz + if + f64.const nan:0x8000000000000 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $4 + i32.const 2 + i32.add + local.tee $4 + i32.load16_u + local.set $5 + end + end + local.get $1 + i32.eqz + if + local.get $5 + i32.const 48 + i32.eq + if (result i32) + local.get $2 + i32.const 2 + i32.gt_s + else + i32.const 0 + end + if + block $break|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $4 + i32.const 2 + i32.add + i32.load16_u + i32.const 32 + i32.or + local.set $7 + local.get $7 + i32.const 98 + i32.eq + br_if $case0|1 + local.get $7 + i32.const 111 + i32.eq + br_if $case1|1 + local.get $7 + i32.const 120 + i32.eq + br_if $case2|1 + br $case3|1 + end + local.get $4 + i32.const 4 + i32.add + local.set $4 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + i32.const 2 + local.set $1 + br $break|1 + end + local.get $4 + i32.const 4 + i32.add + local.set $4 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + i32.const 8 + local.set $1 + br $break|1 + end + local.get $4 + i32.const 4 + i32.add + local.set $4 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + i32.const 16 + local.set $1 + br $break|1 + end + i32.const 10 + local.set $1 + end + else + i32.const 10 + local.set $1 + end + else + local.get $1 + i32.const 2 + i32.lt_s + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 36 + i32.gt_s + end + if + f64.const nan:0x8000000000000 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + return + end + end + f64.const 0 + local.set $8 + block $break|2 + loop $continue|2 + local.get $2 + local.tee $7 + i32.const 1 + i32.sub + local.set $2 + local.get $7 + i32.eqz + br_if $break|2 + local.get $4 + i32.load16_u + local.set $5 + local.get $5 + i32.const 48 + i32.sub + i32.const 10 + i32.lt_u + if + local.get $5 + i32.const 48 + i32.sub + local.set $5 + else + local.get $5 + i32.const 65 + i32.sub + i32.const 25 + i32.le_u + if + local.get $5 + i32.const 65 + i32.const 10 + i32.sub + i32.sub + local.set $5 + else + local.get $5 + i32.const 97 + i32.sub + i32.const 25 + i32.le_u + if + local.get $5 + i32.const 97 + i32.const 10 + i32.sub + i32.sub + local.set $5 + else + br $break|2 + end + end + end + local.get $5 + local.get $1 + i32.ge_u + if + br $break|2 + end + local.get $8 + local.get $1 + f64.convert_i32_s + f64.mul + local.get $5 + f64.convert_i32_u + f64.add + local.set $8 + local.get $4 + i32.const 2 + i32.add + local.set $4 + br $continue|2 + end + unreachable + end + local.get $6 + local.get $8 + f64.mul + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/string/parseInt (; 52 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) + (local $2 f64) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + call $~lib/util/string/strtol + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/util/string/strtol (; 53 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/string/String#get:length + local.set $2 + local.get $2 + i32.eqz + if + i32.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $0 + local.set $4 + local.get $4 + i32.load16_u + local.set $5 + i32.const 1 + local.set $6 + block $break|0 + loop $continue|0 + local.get $5 + call $~lib/util/string/isSpace + i32.eqz + br_if $break|0 + local.get $4 + i32.const 2 + i32.add + local.tee $4 + i32.load16_u + local.set $5 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $5 + i32.const 45 + i32.eq + if + local.get $2 + i32.const 1 + i32.sub + local.tee $2 + i32.eqz + if + i32.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $4 + i32.const 2 + i32.add + local.tee $4 + i32.load16_u + local.set $5 + i32.const -1 + local.set $6 + else + local.get $5 + i32.const 43 + i32.eq + if + local.get $2 + i32.const 1 + i32.sub + local.tee $2 + i32.eqz + if + i32.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $4 + i32.const 2 + i32.add + local.tee $4 + i32.load16_u + local.set $5 + end + end + local.get $1 + i32.eqz + if + local.get $5 + i32.const 48 + i32.eq + if (result i32) + local.get $2 + i32.const 2 + i32.gt_s + else + i32.const 0 + end + if + block $break|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $4 + i32.const 2 + i32.add + i32.load16_u + i32.const 32 + i32.or + local.set $3 + local.get $3 + i32.const 98 + i32.eq + br_if $case0|1 + local.get $3 + i32.const 111 + i32.eq + br_if $case1|1 + local.get $3 + i32.const 120 + i32.eq + br_if $case2|1 + br $case3|1 + end + local.get $4 + i32.const 4 + i32.add + local.set $4 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + i32.const 2 + local.set $1 + br $break|1 + end + local.get $4 + i32.const 4 + i32.add + local.set $4 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + i32.const 8 + local.set $1 + br $break|1 + end + local.get $4 + i32.const 4 + i32.add + local.set $4 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + i32.const 16 + local.set $1 + br $break|1 + end + i32.const 10 + local.set $1 + end + else + i32.const 10 + local.set $1 + end + else + local.get $1 + i32.const 2 + i32.lt_s + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 36 + i32.gt_s + end + if + i32.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + return + end + end + i32.const 0 + local.set $7 + block $break|2 + loop $continue|2 + local.get $2 + local.tee $3 + i32.const 1 + i32.sub + local.set $2 + local.get $3 + i32.eqz + br_if $break|2 + local.get $4 + i32.load16_u + local.set $5 + local.get $5 + i32.const 48 + i32.sub + i32.const 10 + i32.lt_u + if + local.get $5 + i32.const 48 + i32.sub + local.set $5 + else + local.get $5 + i32.const 65 + i32.sub + i32.const 25 + i32.le_u + if + local.get $5 + i32.const 65 + i32.const 10 + i32.sub + i32.sub + local.set $5 + else + local.get $5 + i32.const 97 + i32.sub + i32.const 25 + i32.le_u + if + local.get $5 + i32.const 97 + i32.const 10 + i32.sub + i32.sub + local.set $5 + else + br $break|2 + end + end + end + local.get $5 + local.get $1 + i32.ge_u + if + br $break|2 + end + local.get $7 + local.get $1 + i32.mul + local.get $5 + i32.add + local.set $7 + local.get $4 + i32.const 2 + i32.add + local.set $4 + br $continue|2 + end + unreachable + end + local.get $6 + local.get $7 + i32.mul + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/number/I32.parseInt (; 54 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + call $~lib/util/string/strtol + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/util/string/strtol (; 55 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + (local $2 i32) + (local $3 i64) + (local $4 i32) + (local $5 i32) + (local $6 i64) + (local $7 i32) + (local $8 i64) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/string/String#get:length + local.set $2 + local.get $2 + i32.eqz + if + i64.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $0 + local.set $4 + local.get $4 + i32.load16_u + local.set $5 + i64.const 1 + local.set $6 + block $break|0 + loop $continue|0 + local.get $5 + call $~lib/util/string/isSpace + i32.eqz + br_if $break|0 + local.get $4 + i32.const 2 + i32.add + local.tee $4 + i32.load16_u + local.set $5 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $5 + i32.const 45 + i32.eq + if + local.get $2 + i32.const 1 + i32.sub + local.tee $2 + i32.eqz + if + i64.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $4 + i32.const 2 + i32.add + local.tee $4 + i32.load16_u + local.set $5 + i64.const -1 + local.set $6 + else + local.get $5 + i32.const 43 + i32.eq + if + local.get $2 + i32.const 1 + i32.sub + local.tee $2 + i32.eqz + if + i64.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $4 + i32.const 2 + i32.add + local.tee $4 + i32.load16_u + local.set $5 + end + end + local.get $1 + i32.eqz + if + local.get $5 + i32.const 48 + i32.eq + if (result i32) + local.get $2 + i32.const 2 + i32.gt_s + else + i32.const 0 + end + if + block $break|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $4 + i32.const 2 + i32.add + i32.load16_u + i32.const 32 + i32.or + local.set $7 + local.get $7 + i32.const 98 + i32.eq + br_if $case0|1 + local.get $7 + i32.const 111 + i32.eq + br_if $case1|1 + local.get $7 + i32.const 120 + i32.eq + br_if $case2|1 + br $case3|1 + end + local.get $4 + i32.const 4 + i32.add + local.set $4 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + i32.const 2 + local.set $1 + br $break|1 + end + local.get $4 + i32.const 4 + i32.add + local.set $4 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + i32.const 8 + local.set $1 + br $break|1 + end + local.get $4 + i32.const 4 + i32.add + local.set $4 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + i32.const 16 + local.set $1 + br $break|1 + end + i32.const 10 + local.set $1 + end + else + i32.const 10 + local.set $1 + end + else + local.get $1 + i32.const 2 + i32.lt_s + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 36 + i32.gt_s + end + if + i64.const 0 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + return + end + end + i64.const 0 + local.set $8 + block $break|2 + loop $continue|2 + local.get $2 + local.tee $7 + i32.const 1 + i32.sub + local.set $2 + local.get $7 + i32.eqz + br_if $break|2 + local.get $4 + i32.load16_u + local.set $5 + local.get $5 + i32.const 48 + i32.sub + i32.const 10 + i32.lt_u + if + local.get $5 + i32.const 48 + i32.sub + local.set $5 + else + local.get $5 + i32.const 65 + i32.sub + i32.const 25 + i32.le_u + if + local.get $5 + i32.const 65 + i32.const 10 + i32.sub + i32.sub + local.set $5 + else + local.get $5 + i32.const 97 + i32.sub + i32.const 25 + i32.le_u + if + local.get $5 + i32.const 97 + i32.const 10 + i32.sub + i32.sub + local.set $5 + else + br $break|2 + end + end + end + local.get $5 + local.get $1 + i32.ge_u + if + br $break|2 + end + local.get $8 + local.get $1 + i64.extend_i32_s + i64.mul + local.get $5 + i64.extend_i32_u + i64.add + local.set $8 + local.get $4 + i32.const 2 + i32.add + local.set $4 + br $continue|2 + end + unreachable + end + local.get $6 + local.get $8 + i64.mul + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/number/I64.parseInt (; 56 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + (local $2 i64) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + call $~lib/util/string/strtol + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/util/string/pow10 (; 57 ;) (type $FUNCSIG$di) (param $0 i32) (result f64) + (local $1 i32) + (local $2 i32) + i32.const 1792 + i32.load offset=4 + local.set $1 + i32.const 2096 + i32.load offset=4 + local.set $2 + local.get $1 + local.get $0 + i32.const 5 + i32.shr_s + i32.const 3 + i32.shl + i32.add + f64.load + local.get $2 + local.get $0 + i32.const 31 + i32.and + i32.const 3 + i32.shl + i32.add + f64.load + f64.mul + ) + (func $~lib/math/ipow32 (; 58 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + i32.const 1 + local.set $2 + local.get $1 + i32.const 0 + i32.lt_s + if + i32.const 0 + return + end + block $break|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $1 + local.set $3 + local.get $3 + i32.const 0 + i32.eq + br_if $case0|0 + local.get $3 + i32.const 1 + i32.eq + br_if $case1|0 + local.get $3 + i32.const 2 + i32.eq + br_if $case2|0 + br $break|0 + end + i32.const 1 + return + end + local.get $0 + return + end + local.get $0 + local.get $0 + i32.mul + return + end + i32.const 32 + local.get $1 + i32.clz + i32.sub + local.set $3 + local.get $3 + i32.const 5 + i32.le_s + if + block $break|1 + block $case4|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $3 + local.set $4 + local.get $4 + i32.const 5 + i32.eq + br_if $case0|1 + local.get $4 + i32.const 4 + i32.eq + br_if $case1|1 + local.get $4 + i32.const 3 + i32.eq + br_if $case2|1 + local.get $4 + i32.const 2 + i32.eq + br_if $case3|1 + local.get $4 + i32.const 1 + i32.eq + br_if $case4|1 + br $break|1 + end + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i32.mul + local.set $2 + end + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + i32.mul + local.set $0 + end + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i32.mul + local.set $2 + end + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + i32.mul + local.set $0 + end + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i32.mul + local.set $2 + end + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + i32.mul + local.set $0 + end + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i32.mul + local.set $2 + end + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + i32.mul + local.set $0 + end + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i32.mul + local.set $2 + end + end + local.get $2 + return + end + block $break|2 + loop $continue|2 + local.get $1 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|2 + local.get $1 + i32.const 1 + i32.and + if + local.get $2 + local.get $0 + i32.mul + local.set $2 + end + local.get $1 + i32.const 1 + i32.shr_s + local.set $1 + local.get $0 + local.get $0 + i32.mul + local.set $0 + br $continue|2 + end + unreachable + end + local.get $2 + ) + (func $~lib/math/NativeMath.scalbn (; 59 ;) (type $FUNCSIG$ddi) (param $0 f64) (param $1 i32) (result f64) + (local $2 f64) + (local $3 i32) + (local $4 i32) + local.get $0 + local.set $2 + local.get $1 + i32.const 1023 + i32.gt_s + if + local.get $2 + f64.const 8988465674311579538646525e283 + f64.mul + local.set $2 + local.get $1 + i32.const 1023 + i32.sub + local.set $1 + local.get $1 + i32.const 1023 + i32.gt_s + if + local.get $2 + f64.const 8988465674311579538646525e283 + f64.mul + local.set $2 + local.get $1 + i32.const 1023 + i32.sub + local.tee $3 + i32.const 1023 + local.tee $4 + local.get $3 + local.get $4 + i32.lt_s + select + local.set $1 + end + else + local.get $1 + i32.const -1022 + i32.lt_s + if + local.get $2 + f64.const 2.2250738585072014e-308 + f64.const 9007199254740992 + f64.mul + f64.mul + local.set $2 + local.get $1 + i32.const 1022 + i32.const 53 + i32.sub + i32.add + local.set $1 + local.get $1 + i32.const -1022 + i32.lt_s + if + local.get $2 + f64.const 2.2250738585072014e-308 + f64.const 9007199254740992 + f64.mul + f64.mul + local.set $2 + local.get $1 + i32.const 1022 + i32.add + i32.const 53 + i32.sub + local.tee $3 + i32.const -1022 + local.tee $4 + local.get $3 + local.get $4 + i32.gt_s + select + local.set $1 + end + end + end + local.get $2 + i64.const 1023 + local.get $1 + i64.extend_i32_s + i64.add + i64.const 52 + i64.shl + f64.reinterpret_i64 + f64.mul + ) + (func $~lib/util/string/strtod (; 60 ;) (type $FUNCSIG$di) (param $0 i32) (result f64) + (local $1 i32) + (local $2 f64) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i64) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/string/String#get:length + local.set $1 + local.get $1 + i32.eqz + if + f64.const nan:0x8000000000000 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + local.set $3 + local.get $3 + i32.load16_u + local.set $4 + f64.const 1 + local.set $5 + block $break|0 + loop $continue|0 + local.get $1 + if (result i32) + local.get $4 + call $~lib/util/string/isSpace + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $3 + i32.const 2 + i32.add + local.tee $3 + i32.load16_u + local.set $4 + local.get $1 + i32.const 1 + i32.sub + local.set $1 + br $continue|0 + end + unreachable + end + local.get $1 + i32.eqz + if + f64.const nan:0x8000000000000 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $4 + i32.const 45 + i32.eq + if + local.get $1 + i32.const 1 + i32.sub + local.tee $1 + i32.eqz + if + f64.const nan:0x8000000000000 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $3 + i32.const 2 + i32.add + local.tee $3 + i32.load16_u + local.set $4 + f64.const -1 + local.set $5 + else + local.get $4 + i32.const 43 + i32.eq + if + local.get $1 + i32.const 1 + i32.sub + local.tee $1 + i32.eqz + if + f64.const nan:0x8000000000000 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $3 + i32.const 2 + i32.add + local.tee $3 + i32.load16_u + local.set $4 + end + end + local.get $1 + i32.const 8 + i32.ge_s + if (result i32) + local.get $4 + i32.const 73 + i32.eq + else + i32.const 0 + end + if + local.get $3 + i64.load + i64.const 29555310648492105 + i64.eq + if (result i32) + local.get $3 + i64.load offset=8 + i64.const 34058970405077102 + i64.eq + else + i32.const 0 + end + if + f64.const inf + local.get $5 + f64.copysign + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + return + end + f64.const nan:0x8000000000000 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $4 + i32.const 46 + i32.ne + if (result i32) + local.get $4 + i32.const 48 + i32.sub + i32.const 10 + i32.ge_u + else + i32.const 0 + end + if + f64.const nan:0x8000000000000 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $3 + local.set $6 + block $break|1 + loop $continue|1 + local.get $4 + i32.const 48 + i32.eq + i32.eqz + br_if $break|1 + local.get $3 + i32.const 2 + i32.add + local.tee $3 + i32.load16_u + local.set $4 + local.get $1 + i32.const 1 + i32.sub + local.set $1 + br $continue|1 + end + unreachable + end + local.get $1 + i32.const 0 + i32.le_s + if + f64.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + return + end + i32.const 0 + local.set $7 + i32.const 0 + local.set $8 + i32.const 0 + local.set $9 + i64.const 0 + local.set $10 + local.get $4 + i32.const 46 + i32.eq + if + local.get $6 + local.get $3 + i32.sub + i32.eqz + local.set $11 + local.get $3 + i32.const 2 + i32.add + local.set $3 + local.get $1 + i32.const 1 + i32.sub + local.set $1 + local.get $1 + i32.eqz + if (result i32) + local.get $11 + else + i32.const 0 + end + if + f64.const nan:0x8000000000000 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + return + end + block $break|2 + i32.const 1 + local.set $7 + loop $loop|2 + local.get $3 + i32.load16_u + local.tee $4 + i32.const 48 + i32.eq + i32.eqz + br_if $break|2 + local.get $1 + i32.const 1 + i32.sub + local.set $1 + local.get $9 + i32.const 1 + i32.sub + local.set $9 + local.get $3 + i32.const 2 + i32.add + local.set $3 + br $loop|2 + end + unreachable + end + local.get $1 + i32.const 0 + i32.le_s + if + f64.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $9 + i32.eqz + if (result i32) + local.get $11 + else + i32.const 0 + end + if (result i32) + local.get $4 + i32.const 48 + i32.sub + i32.const 10 + i32.ge_u + else + i32.const 0 + end + if + f64.const nan:0x8000000000000 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + return + end + end + block $break|3 + local.get $4 + i32.const 48 + i32.sub + local.set $11 + loop $loop|3 + local.get $11 + i32.const 10 + i32.lt_u + if (result i32) + i32.const 1 + else + local.get $4 + i32.const 46 + i32.eq + if (result i32) + local.get $7 + i32.eqz + else + i32.const 0 + end + end + i32.eqz + br_if $break|3 + local.get $11 + i32.const 10 + i32.lt_u + if + local.get $8 + i32.const 19 + i32.lt_s + if (result i64) + i64.const 10 + local.get $10 + i64.mul + local.get $11 + i64.extend_i32_u + i64.add + else + local.get $10 + local.get $11 + i32.eqz + i32.eqz + i64.extend_i32_u + i64.or + end + local.set $10 + local.get $8 + i32.const 1 + i32.add + local.set $8 + else + local.get $8 + local.set $9 + i32.const 1 + local.set $7 + end + local.get $1 + i32.const 1 + i32.sub + local.tee $1 + i32.eqz + if + br $break|3 + end + local.get $3 + i32.const 2 + i32.add + local.tee $3 + i32.load16_u + local.set $4 + local.get $4 + i32.const 48 + i32.sub + local.set $11 + br $loop|3 + end + unreachable + end + local.get $7 + i32.eqz + if + local.get $8 + local.set $9 + end + block $~lib/util/string/scientific|inlined.0 (result f64) + local.get $10 + local.set $17 + local.get $9 + i32.const 19 + local.tee $11 + local.get $8 + local.tee $12 + local.get $11 + local.get $12 + i32.lt_s + select + i32.sub + block $~lib/util/string/parseExp|inlined.0 (result i32) + local.get $3 + local.set $11 + local.get $1 + local.set $12 + i32.const 1 + local.set $13 + i32.const 0 + local.set $14 + local.get $11 + i32.load16_u + local.set $15 + local.get $15 + i32.const 32 + i32.or + i32.const 101 + i32.ne + if + i32.const 0 + br $~lib/util/string/parseExp|inlined.0 + end + local.get $11 + i32.const 2 + i32.add + local.tee $11 + i32.load16_u + local.set $15 + local.get $15 + i32.const 45 + i32.eq + if + local.get $12 + i32.const 1 + i32.sub + local.tee $12 + i32.eqz + if + i32.const 0 + br $~lib/util/string/parseExp|inlined.0 + end + local.get $11 + i32.const 2 + i32.add + local.tee $11 + i32.load16_u + local.set $15 + i32.const -1 + local.set $13 + else + local.get $15 + i32.const 43 + i32.eq + if + local.get $12 + i32.const 1 + i32.sub + local.tee $12 + i32.eqz + if + i32.const 0 + br $~lib/util/string/parseExp|inlined.0 + end + local.get $11 + i32.const 2 + i32.add + local.tee $11 + i32.load16_u + local.set $15 + end + end + block $break|4 + loop $continue|4 + local.get $15 + i32.const 48 + i32.eq + i32.eqz + br_if $break|4 + local.get $12 + i32.const 1 + i32.sub + local.tee $12 + i32.eqz + if + i32.const 0 + br $~lib/util/string/parseExp|inlined.0 + end + local.get $11 + i32.const 2 + i32.add + local.tee $11 + i32.load16_u + local.set $15 + br $continue|4 + end + unreachable + end + block $break|5 + local.get $15 + i32.const 48 + i32.sub + local.set $16 + loop $loop|5 + local.get $12 + if (result i32) + local.get $16 + i32.const 10 + i32.lt_u + else + i32.const 0 + end + i32.eqz + br_if $break|5 + local.get $14 + i32.const 3200 + i32.ge_s + if + local.get $13 + i32.const 3200 + i32.mul + br $~lib/util/string/parseExp|inlined.0 + end + i32.const 10 + local.get $14 + i32.mul + local.get $16 + i32.add + local.set $14 + local.get $11 + i32.const 2 + i32.add + local.tee $11 + i32.load16_u + local.set $15 + local.get $12 + i32.const 1 + i32.sub + local.set $12 + local.get $15 + i32.const 48 + i32.sub + local.set $16 + br $loop|5 + end + unreachable + end + local.get $13 + local.get $14 + i32.mul + end + i32.add + local.set $16 + local.get $17 + i64.eqz + if (result i32) + i32.const 1 + else + local.get $16 + i32.const -342 + i32.lt_s + end + if + f64.const 0 + br $~lib/util/string/scientific|inlined.0 + end + local.get $16 + i32.const 308 + i32.gt_s + if + f64.const inf + br $~lib/util/string/scientific|inlined.0 + end + local.get $17 + f64.convert_i64_u + local.set $2 + local.get $16 + i32.eqz + if + local.get $2 + br $~lib/util/string/scientific|inlined.0 + end + local.get $16 + i32.const 22 + i32.gt_s + if (result i32) + local.get $16 + i32.const 37 + i32.le_s + else + i32.const 0 + end + if + local.get $2 + local.get $16 + i32.const 22 + i32.sub + call $~lib/util/string/pow10 + f64.mul + local.set $2 + i32.const 22 + local.set $16 + end + local.get $17 + i64.const 9007199254740991 + i64.le_u + if (result i32) + local.get $16 + local.tee $15 + i32.const 31 + i32.shr_s + local.tee $14 + local.get $15 + i32.add + local.get $14 + i32.xor + i32.const 22 + i32.le_s + else + i32.const 0 + end + if + local.get $16 + i32.const 0 + i32.gt_s + if + local.get $2 + local.get $16 + call $~lib/util/string/pow10 + f64.mul + br $~lib/util/string/scientific|inlined.0 + end + local.get $2 + i32.const 0 + local.get $16 + i32.sub + call $~lib/util/string/pow10 + f64.div + br $~lib/util/string/scientific|inlined.0 + else + local.get $16 + i32.const 0 + i32.lt_s + if + local.get $17 + local.set $18 + local.get $16 + local.set $12 + local.get $18 + i64.clz + local.set $19 + local.get $18 + local.get $19 + i64.shl + local.set $18 + local.get $12 + i64.extend_i32_s + local.get $19 + i64.sub + local.set $19 + block $break|6 + loop $loop|6 + local.get $12 + i32.const -14 + i32.le_s + i32.eqz + br_if $break|6 + local.get $18 + i64.const 6103515625 + i64.div_u + local.set $20 + local.get $18 + i64.const 6103515625 + i64.rem_u + local.set $21 + local.get $20 + i64.clz + local.set $22 + local.get $20 + local.get $22 + i64.shl + f64.const 0.00004294967296 + local.get $21 + local.get $22 + i64.const 18 + i64.sub + i64.shl + f64.convert_i64_u + f64.mul + f64.nearest + i64.trunc_f64_u + i64.add + local.set $18 + local.get $19 + local.get $22 + i64.sub + local.set $19 + local.get $12 + i32.const 14 + i32.add + local.set $12 + br $loop|6 + end + unreachable + end + i32.const 5 + i32.const 0 + local.get $12 + i32.sub + call $~lib/math/ipow32 + i64.extend_i32_s + local.set $22 + local.get $18 + local.get $22 + i64.div_u + local.set $21 + local.get $18 + local.get $22 + i64.rem_u + local.set $20 + local.get $21 + i64.clz + local.set $23 + local.get $21 + local.get $23 + i64.shl + local.get $20 + f64.convert_i64_u + i64.reinterpret_f64 + local.get $23 + i64.const 52 + i64.shl + i64.add + f64.reinterpret_i64 + local.get $22 + f64.convert_i64_u + f64.div + i64.trunc_f64_u + i64.add + local.set $18 + local.get $19 + local.get $23 + i64.sub + local.set $19 + local.get $18 + f64.convert_i64_u + local.get $19 + i32.wrap_i64 + call $~lib/math/NativeMath.scalbn + br $~lib/util/string/scientific|inlined.0 + else + local.get $17 + local.set $18 + local.get $16 + local.set $11 + local.get $18 + i64.ctz + local.set $23 + local.get $18 + local.get $23 + i64.shr_u + local.set $18 + local.get $23 + local.get $11 + i64.extend_i32_s + i64.add + local.set $23 + local.get $23 + global.set $~lib/util/string/__fixmulShift + block $break|7 + loop $loop|7 + local.get $11 + i32.const 13 + i32.ge_s + i32.eqz + br_if $break|7 + local.get $18 + local.set $19 + i32.const 1220703125 + local.set $13 + local.get $19 + i64.const 4294967295 + i64.and + local.get $13 + i64.extend_i32_u + i64.mul + local.set $20 + local.get $19 + i64.const 32 + i64.shr_u + local.get $13 + i64.extend_i32_u + i64.mul + local.get $20 + i64.const 32 + i64.shr_u + i64.add + local.set $21 + local.get $21 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $12 + local.get $12 + i32.clz + local.set $15 + i64.const 32 + local.get $15 + i64.extend_i32_u + i64.sub + local.set $22 + global.get $~lib/util/string/__fixmulShift + local.get $22 + i64.add + global.set $~lib/util/string/__fixmulShift + local.get $21 + local.get $15 + i64.extend_i32_u + i64.shl + local.get $20 + i64.const 4294967295 + i64.and + local.get $22 + i64.shr_u + i64.or + local.get $20 + local.get $15 + i64.extend_i32_u + i64.shl + i64.const 31 + i64.shr_u + i64.const 1 + i64.and + i64.add + local.set $18 + local.get $11 + i32.const 13 + i32.sub + local.set $11 + br $loop|7 + end + unreachable + end + local.get $18 + local.set $19 + i32.const 5 + local.get $11 + call $~lib/math/ipow32 + local.set $14 + local.get $19 + i64.const 4294967295 + i64.and + local.get $14 + i64.extend_i32_u + i64.mul + local.set $22 + local.get $19 + i64.const 32 + i64.shr_u + local.get $14 + i64.extend_i32_u + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $21 + local.get $21 + i64.const 32 + i64.shr_u + i32.wrap_i64 + local.set $15 + local.get $15 + i32.clz + local.set $12 + i64.const 32 + local.get $12 + i64.extend_i32_u + i64.sub + local.set $20 + global.get $~lib/util/string/__fixmulShift + local.get $20 + i64.add + global.set $~lib/util/string/__fixmulShift + local.get $21 + local.get $12 + i64.extend_i32_u + i64.shl + local.get $22 + i64.const 4294967295 + i64.and + local.get $20 + i64.shr_u + i64.or + local.get $22 + local.get $12 + i64.extend_i32_u + i64.shl + i64.const 31 + i64.shr_u + i64.const 1 + i64.and + i64.add + local.set $18 + global.get $~lib/util/string/__fixmulShift + local.set $23 + local.get $18 + f64.convert_i64_u + local.get $23 + i32.wrap_i64 + call $~lib/math/NativeMath.scalbn + br $~lib/util/string/scientific|inlined.0 + end + unreachable + end + unreachable + end + local.get $5 + f64.copysign + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/string/parseFloat (; 61 ;) (type $FUNCSIG$di) (param $0 i32) (result f64) + (local $1 f64) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/util/string/strtod + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + ) + (func $~lib/number/isNaN (; 62 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.ne + ) + (func $~lib/string/String#concat (; 63 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 0 + i32.eq + if + i32.const 576 + local.tee $2 + local.get $1 + local.tee $3 + i32.ne + if + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $3 + call $~lib/rt/pure/__release + end + local.get $2 + local.set $1 + end + local.get $0 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + local.set $4 + local.get $1 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + local.set $5 + local.get $4 + local.get $5 + i32.add + local.set $6 + local.get $6 + i32.const 0 + i32.eq + if + i32.const 120 + call $~lib/rt/pure/__retain + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $6 + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $7 + local.get $7 + local.get $0 + local.get $4 + call $~lib/memory/memory.copy + local.get $7 + local.get $4 + i32.add + local.get $1 + local.get $5 + call $~lib/memory/memory.copy + local.get $7 + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/string/String.__concat (; 64 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 576 + local.get $0 + i32.const 0 + i32.ne + select + local.get $1 + call $~lib/string/String#concat + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/string/String.__ne (; 65 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + call $~lib/string/String.__eq + i32.eqz + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/string/String.__gt (; 66 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.eq + if (result i32) + i32.const 1 + else + local.get $0 + i32.const 0 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 0 + i32.eq + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + call $~lib/string/String#get:length + local.set $4 + local.get $3 + i32.eqz + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $4 + i32.eqz + if + i32.const 1 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + local.get $1 + i32.const 0 + local.get $3 + local.tee $2 + local.get $4 + local.tee $5 + local.get $2 + local.get $5 + i32.lt_s + select + call $~lib/util/string/compareImpl + i32.const 0 + i32.gt_s + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/string/String.__lt (; 67 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.eq + if (result i32) + i32.const 1 + else + local.get $0 + i32.const 0 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 0 + i32.eq + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + call $~lib/string/String#get:length + local.set $4 + local.get $4 + i32.eqz + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $3 + i32.eqz + if + i32.const 1 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + local.get $1 + i32.const 0 + local.get $3 + local.tee $2 + local.get $4 + local.tee $5 + local.get $2 + local.get $5 + i32.lt_s + select + call $~lib/util/string/compareImpl + i32.const 0 + i32.lt_s + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/string/String.__gte (; 68 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + call $~lib/string/String.__lt + i32.eqz + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/string/String.__lte (; 69 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + call $~lib/string/String.__gt + i32.eqz + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/string/String#repeat (; 70 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + call $~lib/string/String#get:length + local.set $2 + local.get $1 + i32.const 0 + i32.lt_s + if (result i32) + i32.const 1 + else + local.get $2 + i64.extend_i32_s + local.get $1 + i64.extend_i32_s + i64.mul + i64.const 268435456 + i64.gt_u + end + if + i32.const 9768 + i32.const 480 + i32.const 299 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $2 + i32.eqz + end + if + i32.const 120 + call $~lib/rt/pure/__retain + return + end + local.get $1 + i32.const 1 + i32.eq + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $2 + local.get $1 + i32.mul + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $3 + local.get $3 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + local.get $1 + call $~lib/memory/memory.repeat + local.get $3 + call $~lib/rt/pure/__retain + ) + (func $~lib/string/String#replace (; 71 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + call $~lib/string/String#get:length + local.set $4 + local.get $3 + local.get $4 + i32.le_u + if + local.get $3 + local.get $4 + i32.lt_u + if (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.tee $5 + else + local.get $2 + local.get $0 + local.get $1 + local.get $0 + call $~lib/string/String.__eq + select + call $~lib/rt/pure/__retain + local.tee $6 + end + call $~lib/rt/pure/__retain + local.set $7 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $7 + return + end + local.get $0 + local.get $1 + i32.const 0 + call $~lib/string/String#indexOf + local.set $8 + local.get $8 + i32.const -1 + i32.xor + if + local.get $2 + call $~lib/string/String#get:length + local.set $6 + local.get $3 + local.get $4 + i32.sub + local.set $3 + local.get $3 + local.get $6 + i32.add + local.set $5 + local.get $5 + if + local.get $5 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $0 + local.get $8 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $7 + local.get $8 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $7 + local.get $8 + local.get $6 + i32.add + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $8 + local.get $4 + i32.add + i32.const 1 + i32.shl + i32.add + local.get $3 + local.get $8 + i32.sub + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $7 + call $~lib/rt/pure/__retain + local.set $9 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $9 + return + end + end + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + ) + (func $~lib/rt/tlsf/reallocateBlock (; 72 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $2 + call $~lib/rt/tlsf/prepareSize + local.set $3 + local.get $1 + i32.load + local.set $4 + local.get $4 + i32.const 1 + i32.and + i32.eqz + if (result i32) + local.get $1 + i32.load offset=4 + i32.const -268435456 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 184 + i32.const 521 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + local.get $4 + i32.const -4 + i32.and + i32.le_u + if + local.get $0 + local.get $1 + local.get $3 + call $~lib/rt/tlsf/prepareBlock + local.get $1 + local.get $2 + i32.store offset=12 + local.get $1 + return + end + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $6 + local.get $6 + i32.load + local.set $7 + local.get $7 + i32.const 1 + i32.and + if + local.get $4 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $7 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $5 + local.get $5 + local.get $3 + i32.ge_u + if + local.get $0 + local.get $6 + call $~lib/rt/tlsf/removeBlock + local.get $1 + local.get $4 + i32.const 3 + i32.and + local.get $5 + i32.or + i32.store + local.get $1 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $1 + local.get $3 + call $~lib/rt/tlsf/prepareBlock + local.get $1 + return + end + end + local.get $0 + local.get $2 + call $~lib/rt/tlsf/allocateBlock + local.set $8 + local.get $8 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $8 + i32.const 16 + i32.add + local.get $1 + i32.const 16 + i32.add + local.get $2 + call $~lib/memory/memory.copy + local.get $1 + local.get $4 + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $1 + call $~lib/rt/tlsf/insertBlock + local.get $1 + call $~lib/rt/rtrace/onfree + local.get $8 + ) + (func $~lib/rt/tlsf/__realloc (; 73 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + i32.const 0 + i32.const 184 + i32.const 585 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 184 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/tlsf/ROOT + local.get $0 + i32.const 16 + i32.sub + local.get $1 + call $~lib/rt/tlsf/reallocateBlock + i32.const 16 + i32.add + ) + (func $~lib/string/String#replaceAll (; 74 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + call $~lib/string/String#get:length + local.set $4 + local.get $3 + local.get $4 + i32.le_u + if + local.get $3 + local.get $4 + i32.lt_u + if (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.tee $5 + else + local.get $2 + local.get $0 + local.get $1 + local.get $0 + call $~lib/string/String.__eq + select + call $~lib/rt/pure/__retain + local.tee $6 + end + call $~lib/rt/pure/__retain + local.set $7 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $7 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $8 + local.get $4 + i32.eqz + if + local.get $8 + i32.eqz + if + local.get $0 + call $~lib/rt/pure/__retain + local.set $6 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $6 + return + end + local.get $3 + local.get $3 + i32.const 1 + i32.add + local.get $8 + i32.mul + i32.add + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $6 + local.get $2 + local.get $8 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $8 + local.set $5 + block $break|0 + i32.const 0 + local.set $7 + loop $loop|0 + local.get $7 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $6 + local.get $5 + local.tee $9 + i32.const 1 + i32.add + local.set $5 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $7 + i32.const 1 + i32.shl + i32.add + i32.load16_u + i32.store16 + local.get $6 + local.get $5 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $8 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $5 + local.get $8 + i32.add + local.set $5 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $6 + call $~lib/rt/pure/__retain + local.set $7 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $7 + return + end + i32.const 0 + local.set $10 + i32.const 0 + local.set $11 + local.get $4 + local.get $8 + i32.eq + if + local.get $3 + i32.const 1 + i32.shl + local.set $5 + local.get $5 + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $6 + local.get $0 + local.get $5 + call $~lib/memory/memory.copy + block $break|1 + loop $continue|1 + local.get $0 + local.get $1 + local.get $10 + call $~lib/string/String#indexOf + local.tee $11 + i32.const -1 + i32.xor + i32.eqz + br_if $break|1 + local.get $6 + local.get $11 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $8 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $11 + local.get $4 + i32.add + local.set $10 + br $continue|1 + end + unreachable + end + local.get $6 + call $~lib/rt/pure/__retain + local.set $7 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $7 + return + end + i32.const 0 + local.set $12 + i32.const 0 + local.set $13 + local.get $3 + local.set $14 + block $break|2 + loop $continue|2 + local.get $0 + local.get $1 + local.get $10 + call $~lib/string/String#indexOf + local.tee $11 + i32.const -1 + i32.xor + i32.eqz + br_if $break|2 + local.get $12 + i32.eqz + if + local.get $3 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $12 + end + local.get $13 + local.get $14 + i32.gt_u + if + local.get $14 + i32.const 1 + i32.shl + local.set $6 + local.get $12 + local.get $6 + i32.const 1 + i32.shl + call $~lib/rt/tlsf/__realloc + local.set $12 + local.get $6 + local.set $14 + end + local.get $11 + local.get $10 + i32.sub + local.set $6 + local.get $12 + local.get $13 + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $10 + i32.const 1 + i32.shl + i32.add + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $13 + local.get $6 + i32.add + local.set $13 + local.get $12 + local.get $13 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $8 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $13 + local.get $8 + i32.add + local.set $13 + local.get $11 + local.get $4 + i32.add + local.set $10 + br $continue|2 + end + unreachable + end + local.get $13 + if + local.get $13 + local.get $14 + i32.gt_u + if + local.get $14 + i32.const 1 + i32.shl + local.set $6 + local.get $12 + local.get $6 + i32.const 1 + i32.shl + call $~lib/rt/tlsf/__realloc + local.set $12 + local.get $6 + local.set $14 + end + local.get $3 + local.get $10 + i32.sub + local.set $6 + local.get $6 + if + local.get $12 + local.get $13 + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $10 + i32.const 1 + i32.shl + i32.add + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + end + local.get $6 + local.get $13 + i32.add + local.set $6 + local.get $14 + local.get $6 + i32.gt_u + if + local.get $12 + local.get $6 + i32.const 1 + i32.shl + call $~lib/rt/tlsf/__realloc + local.set $12 + end + local.get $12 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $0 + call $~lib/rt/pure/__retain + local.set $6 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $6 + ) + (func $~lib/string/String#slice (; 75 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + i32.const 0 + i32.lt_s + if (result i32) + local.get $1 + local.get $3 + i32.add + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + else + local.get $1 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + end + local.set $1 + local.get $2 + i32.const 0 + i32.lt_s + if (result i32) + local.get $2 + local.get $3 + i32.add + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + else + local.get $2 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + end + local.set $2 + local.get $2 + local.get $1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.le_s + if + i32.const 120 + call $~lib/rt/pure/__retain + return + end + local.get $3 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $6 + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.get $3 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $6 + call $~lib/rt/pure/__retain + ) + (func $~lib/rt/__allocArray (; 76 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + i32.const 16 + local.get $2 + call $~lib/rt/tlsf/__alloc + local.set $4 + local.get $0 + local.get $1 + i32.shl + local.set $5 + local.get $5 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $4 + local.get $6 + call $~lib/rt/pure/__retain + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $4 + local.get $5 + i32.store offset=8 + local.get $4 + local.get $0 + i32.store offset=12 + local.get $3 + if + local.get $6 + local.get $3 + local.get $5 + call $~lib/memory/memory.copy + end + local.get $4 + ) + (func $~lib/memory/memory.fill (; 77 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + block $~lib/util/memory/memset|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 1 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 2 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.get $4 + i32.store8 + local.get $5 + i32.const 2 + i32.add + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 2 + i32.sub + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 3 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 6 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 3 + i32.add + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 8 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + i32.const 0 + local.get $5 + i32.sub + i32.const 3 + i32.and + local.set $6 + local.get $5 + local.get $6 + i32.add + local.set $5 + local.get $3 + local.get $6 + i32.sub + local.set $3 + local.get $3 + i32.const -4 + i32.and + local.set $3 + i32.const -1 + i32.const 255 + i32.div_u + local.get $4 + i32.const 255 + i32.and + i32.mul + local.set $7 + local.get $5 + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.get $7 + i32.store + local.get $3 + i32.const 8 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 4 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 8 + i32.add + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 12 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 8 + i32.sub + local.get $7 + i32.store + local.get $3 + i32.const 24 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 12 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 16 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 20 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 24 + i32.add + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 28 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 24 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 20 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 16 + i32.sub + local.get $7 + i32.store + i32.const 24 + local.get $5 + i32.const 4 + i32.and + i32.add + local.set $6 + local.get $5 + local.get $6 + i32.add + local.set $5 + local.get $3 + local.get $6 + i32.sub + local.set $3 + local.get $7 + i64.extend_i32_u + local.get $7 + i64.extend_i32_u + i64.const 32 + i64.shl + i64.or + local.set $8 + block $break|0 + loop $continue|0 + local.get $3 + i32.const 32 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $5 + local.get $8 + i64.store + local.get $5 + i32.const 8 + i32.add + local.get $8 + i64.store + local.get $5 + i32.const 16 + i32.add + local.get $8 + i64.store + local.get $5 + i32.const 24 + i32.add + local.get $8 + i64.store + local.get $3 + i32.const 32 + i32.sub + local.set $3 + local.get $5 + i32.const 32 + i32.add + local.set $5 + br $continue|0 + end + unreachable + end + end + ) + (func $~lib/array/ensureSize (; 78 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.load offset=8 + local.set $3 + local.get $1 + local.get $3 + local.get $2 + i32.shr_u + i32.gt_u + if + local.get $1 + i32.const 1073741808 + local.get $2 + i32.shr_u + i32.gt_u + if + i32.const 9768 + i32.const 10824 + i32.const 14 + i32.const 47 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load + local.set $4 + local.get $1 + local.get $2 + i32.shl + local.set $5 + local.get $4 + local.get $5 + call $~lib/rt/tlsf/__realloc + local.set $6 + local.get $6 + local.get $3 + i32.add + i32.const 0 + local.get $5 + local.get $3 + i32.sub + call $~lib/memory/memory.fill + local.get $6 + local.get $4 + i32.ne + if + local.get $0 + local.get $6 + call $~lib/rt/pure/__retain + i32.store + local.get $0 + local.get $6 + i32.store offset=4 + end + local.get $0 + local.get $5 + i32.store offset=8 + end + ) + (func $~lib/array/Array<~lib/string/String>#push (; 79 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=12 + local.set $2 + local.get $2 + i32.const 1 + i32.add + local.set $3 + local.get $0 + local.get $3 + i32.const 2 + call $~lib/array/ensureSize + local.get $0 + i32.load offset=4 + local.get $2 + i32.const 2 + i32.shl + i32.add + local.get $1 + call $~lib/rt/pure/__retain + i32.store + local.get $0 + local.get $3 + i32.store offset=12 + local.get $3 + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/string/String#split (; 80 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $2 + i32.eqz + if + i32.const 0 + i32.const 2 + i32.const 4 + i32.const 0 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $1 + i32.const 0 + i32.eq + if + i32.const 1 + i32.const 2 + i32.const 4 + i32.const 0 + call $~lib/rt/__allocArray + local.set $3 + local.get $3 + i32.load offset=4 + local.set $4 + local.get $4 + local.get $0 + call $~lib/rt/pure/__retain + i32.store + local.get $3 + call $~lib/rt/pure/__retain + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $0 + call $~lib/string/String#get:length + local.set $5 + local.get $1 + call $~lib/string/String#get:length + local.set $6 + local.get $2 + i32.const 0 + i32.lt_s + if + global.get $~lib/builtins/i32.MAX_VALUE + local.set $2 + end + local.get $6 + i32.eqz + if + local.get $5 + i32.eqz + if + i32.const 0 + i32.const 2 + i32.const 4 + i32.const 0 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $5 + local.tee $4 + local.get $2 + local.tee $3 + local.get $4 + local.get $3 + i32.lt_s + select + local.set $5 + local.get $5 + i32.const 2 + i32.const 4 + i32.const 0 + call $~lib/rt/__allocArray + local.set $4 + local.get $4 + i32.load offset=4 + local.set $3 + block $break|0 + i32.const 0 + local.set $7 + loop $loop|0 + local.get $7 + local.get $5 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 2 + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $8 + local.get $8 + local.get $0 + local.get $7 + i32.const 1 + i32.shl + i32.add + i32.load16_u + i32.store16 + local.get $3 + local.get $7 + i32.const 2 + i32.shl + i32.add + local.get $8 + i32.store + local.get $8 + call $~lib/rt/pure/__retain + drop + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $4 + call $~lib/rt/pure/__retain + local.set $8 + local.get $1 + call $~lib/rt/pure/__release + local.get $8 + return + else + local.get $5 + i32.eqz + if + i32.const 1 + i32.const 2 + i32.const 4 + i32.const 0 + call $~lib/rt/__allocArray + local.set $3 + local.get $3 + i32.load offset=4 + i32.const 120 + i32.store + local.get $3 + call $~lib/rt/pure/__retain + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + end + end + i32.const 0 + i32.const 2 + i32.const 4 + i32.const 0 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.set $9 + i32.const 0 + local.set $10 + i32.const 0 + local.set $11 + i32.const 0 + local.set $12 + block $break|1 + loop $continue|1 + local.get $0 + local.get $1 + local.get $11 + call $~lib/string/String#indexOf + local.tee $10 + i32.const -1 + i32.xor + i32.eqz + br_if $break|1 + local.get $10 + local.get $11 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.gt_s + if + local.get $3 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $4 + local.get $4 + local.get $0 + local.get $11 + i32.const 1 + i32.shl + i32.add + local.get $3 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $4 + call $~lib/array/Array<~lib/string/String>#push + drop + else + local.get $9 + i32.const 120 + call $~lib/array/Array<~lib/string/String>#push + drop + end + local.get $12 + i32.const 1 + i32.add + local.tee $12 + local.get $2 + i32.eq + if + local.get $9 + local.set $4 + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $10 + local.get $6 + i32.add + local.set $11 + br $continue|1 + end + unreachable + end + local.get $11 + i32.eqz + if + local.get $9 + local.get $0 + call $~lib/array/Array<~lib/string/String>#push + drop + local.get $9 + local.set $3 + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + return + end + local.get $5 + local.get $11 + i32.sub + local.set $13 + local.get $13 + i32.const 0 + i32.gt_s + if + local.get $13 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $3 + local.get $3 + local.get $0 + local.get $11 + i32.const 1 + i32.shl + i32.add + local.get $13 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $3 + call $~lib/array/Array<~lib/string/String>#push + drop + else + local.get $9 + i32.const 120 + call $~lib/array/Array<~lib/string/String>#push + drop + end + local.get $9 + local.set $3 + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/array/Array<~lib/string/String>#get:length (; 81 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 82 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + call $~lib/rt/pure/__retain + ) + (func $~lib/array/Array<~lib/string/String>#__get (; 83 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 232 + i32.const 10824 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/string/String>#__unchecked_get + local.set $2 + local.get $2 + i32.eqz + if + local.get $2 + call $~lib/rt/pure/__release + i32.const 10872 + i32.const 10824 + i32.const 96 + i32.const 39 + call $~lib/builtins/abort + unreachable + end + local.get $2 + ) + (func $~lib/util/number/decimalCount32 (; 84 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + i32.const 100000 + i32.lt_u + if + local.get $0 + i32.const 100 + i32.lt_u + if + i32.const 1 + i32.const 2 + local.get $0 + i32.const 10 + i32.lt_u + select + return + else + i32.const 4 + i32.const 5 + local.get $0 + i32.const 10000 + i32.lt_u + select + local.set $1 + i32.const 3 + local.get $1 + local.get $0 + i32.const 1000 + i32.lt_u + select + return + end + unreachable + else + local.get $0 + i32.const 10000000 + i32.lt_u + if + i32.const 6 + i32.const 7 + local.get $0 + i32.const 1000000 + i32.lt_u + select + return + else + i32.const 9 + i32.const 10 + local.get $0 + i32.const 1000000000 + i32.lt_u + select + local.set $1 + i32.const 8 + local.get $1 + local.get $0 + i32.const 100000000 + i32.lt_u + select + return + end + unreachable + end + unreachable + ) + (func $~lib/util/number/utoa32_lut (; 85 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + i32.const 11584 + i32.load offset=4 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i32.const 10000 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $1 + i32.const 10000 + i32.div_u + local.set $4 + local.get $1 + i32.const 10000 + i32.rem_u + local.set $5 + local.get $4 + local.set $1 + local.get $5 + i32.const 100 + i32.div_u + local.set $6 + local.get $5 + i32.const 100 + i32.rem_u + local.set $7 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $8 + local.get $3 + local.get $7 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $9 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $8 + local.get $9 + i64.const 32 + i64.shl + i64.or + i64.store + br $continue|0 + end + unreachable + end + local.get $1 + i32.const 100 + i32.ge_u + if + local.get $1 + i32.const 100 + i32.div_u + local.set $7 + local.get $1 + i32.const 100 + i32.rem_u + local.set $6 + local.get $7 + local.set $1 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + end + local.get $1 + i32.const 10 + i32.ge_u + if + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + else + local.get $2 + i32.const 1 + i32.sub + local.set $2 + i32.const 48 + local.get $1 + i32.add + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store16 + end + ) + (func $~lib/util/number/itoa32 (; 86 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.eqz + if + i32.const 1192 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i32.const 0 + i32.lt_s + local.set $1 + local.get $1 + if + i32.const 0 + local.get $0 + i32.sub + local.set $0 + end + local.get $0 + call $~lib/util/number/decimalCount32 + local.get $1 + i32.add + local.set $2 + local.get $2 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $3 + local.get $3 + local.set $6 + local.get $0 + local.set $5 + local.get $2 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + local.get $1 + if + local.get $3 + i32.const 45 + i32.store16 + end + local.get $3 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/utoa32 (; 87 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.eqz + if + i32.const 1192 + call $~lib/rt/pure/__retain + return + end + local.get $0 + call $~lib/util/number/decimalCount32 + local.set $1 + local.get $1 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $2 + local.get $2 + local.set $5 + local.get $0 + local.set $4 + local.get $1 + local.set $3 + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/number/utoa32_lut + local.get $2 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/decimalCount64 (; 88 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (local $1 i32) + local.get $0 + i64.const 1000000000000000 + i64.lt_u + if + local.get $0 + i64.const 1000000000000 + i64.lt_u + if + i32.const 11 + i32.const 12 + local.get $0 + i64.const 100000000000 + i64.lt_u + select + local.set $1 + i32.const 10 + local.get $1 + local.get $0 + i64.const 10000000000 + i64.lt_u + select + return + else + i32.const 14 + i32.const 15 + local.get $0 + i64.const 100000000000000 + i64.lt_u + select + local.set $1 + i32.const 13 + local.get $1 + local.get $0 + i64.const 10000000000000 + i64.lt_u + select + return + end + unreachable + else + local.get $0 + i64.const 100000000000000000 + i64.lt_u + if + i32.const 16 + i32.const 17 + local.get $0 + i64.const 10000000000000000 + i64.lt_u + select + return + else + i32.const 19 + i32.const 20 + local.get $0 + i64.const -8446744073709551616 + i64.lt_u + select + local.set $1 + i32.const 18 + local.get $1 + local.get $0 + i64.const 1000000000000000000 + i64.lt_u + select + return + end + unreachable + end + unreachable + ) + (func $~lib/util/number/utoa64_lut (; 89 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) + (local $3 i32) + (local $4 i64) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i64) + (local $13 i64) + i32.const 11584 + i32.load offset=4 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i64.const 100000000 + i64.ge_u + i32.eqz + br_if $break|0 + local.get $1 + i64.const 100000000 + i64.div_u + local.set $4 + local.get $1 + local.get $4 + i64.const 100000000 + i64.mul + i64.sub + i32.wrap_i64 + local.set $5 + local.get $4 + local.set $1 + local.get $5 + i32.const 10000 + i32.div_u + local.set $6 + local.get $5 + i32.const 10000 + i32.rem_u + local.set $7 + local.get $6 + i32.const 100 + i32.div_u + local.set $8 + local.get $6 + i32.const 100 + i32.rem_u + local.set $9 + local.get $7 + i32.const 100 + i32.div_u + local.set $10 + local.get $7 + i32.const 100 + i32.rem_u + local.set $11 + local.get $3 + local.get $10 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $12 + local.get $3 + local.get $11 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $13 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $12 + local.get $13 + i64.const 32 + i64.shl + i64.or + i64.store + local.get $3 + local.get $8 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $12 + local.get $3 + local.get $9 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $13 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $12 + local.get $13 + i64.const 32 + i64.shl + i64.or + i64.store + br $continue|0 + end + unreachable + end + local.get $0 + local.get $1 + i32.wrap_i64 + local.get $2 + call $~lib/util/number/utoa32_lut + ) + (func $~lib/util/number/utoa64 (; 90 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i64) + local.get $0 + i64.eqz + if + i32.const 1192 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i64.const 4294967295 + i64.le_u + if + local.get $0 + i32.wrap_i64 + local.set $2 + local.get $2 + call $~lib/util/number/decimalCount32 + local.set $3 + local.get $3 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $1 + local.get $1 + local.set $6 + local.get $2 + local.set $5 + local.get $3 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + else + local.get $0 + call $~lib/util/number/decimalCount64 + local.set $3 + local.get $3 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $1 + local.get $1 + local.set $5 + local.get $0 + local.set $7 + local.get $3 + local.set $4 + local.get $5 + local.get $7 + local.get $4 + call $~lib/util/number/utoa64_lut + end + local.get $1 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/itoa64 (; 91 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + local.get $0 + i64.eqz + if + i32.const 1192 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i64.const 0 + i64.lt_s + local.set $1 + local.get $1 + if + i64.const 0 + local.get $0 + i64.sub + local.set $0 + end + local.get $0 + i64.const 4294967295 + i64.le_u + if + local.get $0 + i32.wrap_i64 + local.set $3 + local.get $3 + call $~lib/util/number/decimalCount32 + local.get $1 + i32.add + local.set $4 + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $2 + local.get $2 + local.set $7 + local.get $3 + local.set $6 + local.get $4 + local.set $5 + local.get $7 + local.get $6 + local.get $5 + call $~lib/util/number/utoa32_lut + else + local.get $0 + call $~lib/util/number/decimalCount64 + local.get $1 + i32.add + local.set $4 + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $2 + local.get $2 + local.set $6 + local.get $0 + local.set $8 + local.get $4 + local.set $5 + local.get $6 + local.get $8 + local.get $5 + call $~lib/util/number/utoa64_lut + end + local.get $1 + if + local.get $2 + i32.const 45 + i32.store16 + end + local.get $2 + call $~lib/rt/pure/__retain + ) + (func $~lib/number/isFinite (; 92 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.eq + ) + (func $~lib/array/Array#__unchecked_get (; 93 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + i64.load + ) + (func $~lib/array/Array#__unchecked_get (; 94 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.load16_s + ) + (func $~lib/util/number/genDigits (; 95 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i64) + (local $11 i32) + (local $12 i32) + (local $13 i64) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i32) + (local $25 i32) + (local $26 i32) + i32.const 0 + local.get $4 + i32.sub + local.set $7 + i64.const 1 + local.get $7 + i64.extend_i32_s + i64.shl + local.set $8 + local.get $8 + i64.const 1 + i64.sub + local.set $9 + local.get $3 + local.get $1 + i64.sub + local.set $10 + local.get $4 + local.set $11 + local.get $3 + local.get $7 + i64.extend_i32_s + i64.shr_u + i32.wrap_i64 + local.set $12 + local.get $3 + local.get $9 + i64.and + local.set $13 + local.get $12 + call $~lib/util/number/decimalCount32 + local.set $14 + local.get $6 + local.set $15 + i32.const 14232 + i32.load offset=4 + local.set $16 + block $break|0 + loop $continue|0 + local.get $14 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|0 + block $break|1 + block $case10|1 + block $case9|1 + block $case8|1 + block $case7|1 + block $case6|1 + block $case5|1 + block $case4|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $14 + local.set $18 + local.get $18 + i32.const 10 + i32.eq + br_if $case0|1 + local.get $18 + i32.const 9 + i32.eq + br_if $case1|1 + local.get $18 + i32.const 8 + i32.eq + br_if $case2|1 + local.get $18 + i32.const 7 + i32.eq + br_if $case3|1 + local.get $18 + i32.const 6 + i32.eq + br_if $case4|1 + local.get $18 + i32.const 5 + i32.eq + br_if $case5|1 + local.get $18 + i32.const 4 + i32.eq + br_if $case6|1 + local.get $18 + i32.const 3 + i32.eq + br_if $case7|1 + local.get $18 + i32.const 2 + i32.eq + br_if $case8|1 + local.get $18 + i32.const 1 + i32.eq + br_if $case9|1 + br $case10|1 + end + local.get $12 + i32.const 1000000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100 + i32.div_u + local.set $17 + local.get $12 + i32.const 100 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10 + i32.div_u + local.set $17 + local.get $12 + i32.const 10 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + local.set $17 + i32.const 0 + local.set $12 + br $break|1 + end + i32.const 0 + local.set $17 + br $break|1 + end + local.get $17 + local.get $15 + i32.or + if + local.get $0 + local.get $15 + local.tee $18 + i32.const 1 + i32.add + local.set $15 + local.get $18 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $17 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $12 + i64.extend_i32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.get $13 + i64.add + local.set $19 + local.get $19 + local.get $5 + i64.le_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $19 + local.set $22 + local.get $16 + local.get $14 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $25 + local.get $25 + i32.load16_u + local.set $26 + block $break|2 + loop $continue|2 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|2 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|2 + end + unreachable + end + local.get $25 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|0 + end + unreachable + end + loop $continue|3 + local.get $13 + i64.const 10 + i64.mul + local.set $13 + local.get $5 + i64.const 10 + i64.mul + local.set $5 + local.get $13 + local.get $7 + i64.extend_i32_s + i64.shr_u + local.set $19 + local.get $19 + local.get $15 + i64.extend_i32_s + i64.or + i64.const 0 + i64.ne + if + local.get $0 + local.get $15 + local.tee $17 + i32.const 1 + i32.add + local.set $15 + local.get $17 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $19 + i32.wrap_i64 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $13 + local.get $9 + i64.and + local.set $13 + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $13 + local.get $5 + i64.lt_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $10 + local.get $16 + i32.const 0 + local.get $14 + i32.sub + i32.const 2 + i32.shl + i32.add + i64.load32_u + i64.mul + local.set $10 + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $13 + local.set $22 + local.get $8 + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $17 + local.get $17 + i32.load16_u + local.set $26 + block $break|4 + loop $continue|4 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|4 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|4 + end + unreachable + end + local.get $17 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|3 + end + unreachable + ) + (func $~lib/util/number/prettify (; 96 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $2 + i32.eqz + if + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 2 + i32.add + return + end + local.get $1 + local.get $2 + i32.add + local.set $3 + local.get $1 + local.get $3 + i32.le_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + block $break|0 + local.get $1 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $3 + i32.const 2 + i32.add + return + else + local.get $3 + i32.const 0 + i32.gt_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $4 + local.get $4 + i32.const 2 + i32.add + local.get $4 + i32.const 0 + local.get $2 + i32.sub + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.store16 + local.get $1 + i32.const 1 + i32.add + return + else + i32.const -6 + local.get $3 + i32.lt_s + if (result i32) + local.get $3 + i32.const 0 + i32.le_s + else + i32.const 0 + end + if + i32.const 2 + local.get $3 + i32.sub + local.set $4 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $1 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + i32.const 48 + i32.const 46 + i32.const 16 + i32.shl + i32.or + i32.store + block $break|1 + i32.const 2 + local.set $5 + loop $loop|1 + local.get $5 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|1 + end + unreachable + end + local.get $1 + local.get $4 + i32.add + return + else + local.get $1 + i32.const 1 + i32.eq + if + local.get $0 + i32.const 101 + i32.store16 offset=2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + local.get $5 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $5 + i32.sub + local.set $5 + end + local.get $5 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $7 + local.get $4 + local.set $10 + local.get $5 + local.set $9 + local.get $7 + local.set $8 + local.get $10 + local.get $9 + local.get $8 + call $~lib/util/number/utoa32_lut + local.get $4 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $7 + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + else + local.get $1 + i32.const 1 + i32.shl + local.set $7 + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.const 2 + i32.add + local.get $7 + i32.const 2 + i32.sub + call $~lib/memory/memory.copy + local.get $0 + i32.const 46 + i32.store16 offset=2 + local.get $0 + local.get $7 + i32.add + i32.const 101 + i32.store16 offset=2 + local.get $1 + local.get $0 + local.get $7 + i32.add + i32.const 4 + i32.add + local.set $9 + local.get $3 + i32.const 1 + i32.sub + local.set $8 + local.get $8 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $8 + i32.sub + local.set $8 + end + local.get $8 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $4 + local.get $9 + local.set $11 + local.get $8 + local.set $5 + local.get $4 + local.set $10 + local.get $11 + local.get $5 + local.get $10 + call $~lib/util/number/utoa32_lut + local.get $9 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $4 + i32.add + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + end + unreachable + end + unreachable + end + unreachable + end + unreachable + ) + (func $~lib/util/number/dtoa_core (; 97 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 i64) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i32) + (local $11 i64) + (local $12 i64) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 f64) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i64) + (local $25 i64) + (local $26 i32) + (local $27 i64) + (local $28 i32) + local.get $1 + f64.const 0 + f64.lt + local.set $2 + local.get $2 + if + local.get $1 + f64.neg + local.set $1 + local.get $0 + i32.const 45 + i32.store16 + end + local.get $1 + local.set $5 + local.get $0 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i64.reinterpret_f64 + local.set $6 + local.get $6 + i64.const 9218868437227405312 + i64.and + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.set $7 + local.get $6 + i64.const 4503599627370495 + i64.and + local.set $8 + local.get $7 + i32.const 0 + i32.ne + i64.extend_i32_u + i64.const 52 + i64.shl + local.get $8 + i64.add + local.set $9 + local.get $7 + i32.const 1 + local.get $7 + i32.const 0 + i32.ne + select + i32.const 1023 + i32.const 52 + i32.add + i32.sub + local.set $7 + local.get $9 + local.set $11 + local.get $7 + local.set $10 + local.get $11 + i64.const 1 + i64.shl + i64.const 1 + i64.add + local.set $12 + local.get $10 + i32.const 1 + i32.sub + local.set $13 + local.get $12 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $12 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $12 + local.get $13 + local.get $14 + i32.sub + local.set $13 + i32.const 1 + local.get $11 + i64.const 4503599627370496 + i64.eq + i32.add + local.set $15 + local.get $12 + global.set $~lib/util/number/_frc_plus + local.get $11 + local.get $15 + i64.extend_i32_s + i64.shl + i64.const 1 + i64.sub + local.get $10 + local.get $15 + i32.sub + local.get $13 + i32.sub + i64.extend_i32_s + i64.shl + global.set $~lib/util/number/_frc_minus + local.get $13 + global.set $~lib/util/number/_exp + global.get $~lib/util/number/_exp + local.set $10 + i32.const -61 + local.get $10 + i32.sub + f64.convert_i32_s + f64.const 0.30102999566398114 + f64.mul + f64.const 347 + f64.add + local.set $16 + local.get $16 + i32.trunc_f64_s + local.set $15 + local.get $15 + local.get $15 + f64.convert_i32_s + local.get $16 + f64.ne + i32.add + local.set $15 + local.get $15 + i32.const 3 + i32.shr_s + i32.const 1 + i32.add + local.set $14 + i32.const 348 + local.get $14 + i32.const 3 + i32.shl + i32.sub + global.set $~lib/util/number/_K + i32.const 13920 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_frc_pow + i32.const 14144 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_exp_pow + local.get $9 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $9 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $9 + local.get $7 + local.get $14 + i32.sub + local.set $7 + global.get $~lib/util/number/_frc_pow + local.set $12 + global.get $~lib/util/number/_exp_pow + local.set $15 + local.get $9 + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $24 + local.get $24 + i64.const 2147483647 + i64.add + local.set $24 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $24 + i64.const 32 + i64.shr_u + local.set $24 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $24 + i64.add + local.set $24 + local.get $7 + local.set $10 + local.get $15 + local.set $13 + local.get $10 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $10 + global.get $~lib/util/number/_frc_plus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $23 + local.get $11 + i64.const 4294967295 + i64.and + local.set $22 + local.get $17 + i64.const 32 + i64.shr_u + local.set $21 + local.get $11 + i64.const 32 + i64.shr_u + local.set $20 + local.get $23 + local.get $22 + i64.mul + local.set $19 + local.get $21 + local.get $22 + i64.mul + local.get $19 + i64.const 32 + i64.shr_u + i64.add + local.set $18 + local.get $23 + local.get $20 + i64.mul + local.get $18 + i64.const 4294967295 + i64.and + i64.add + local.set $25 + local.get $25 + i64.const 2147483647 + i64.add + local.set $25 + local.get $18 + i64.const 32 + i64.shr_u + local.set $18 + local.get $25 + i64.const 32 + i64.shr_u + local.set $25 + local.get $21 + local.get $20 + i64.mul + local.get $18 + i64.add + local.get $25 + i64.add + i64.const 1 + i64.sub + local.set $25 + global.get $~lib/util/number/_exp + local.set $26 + local.get $15 + local.set $13 + local.get $26 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $26 + global.get $~lib/util/number/_frc_minus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $27 + local.get $27 + i64.const 2147483647 + i64.add + local.set $27 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $27 + i64.const 32 + i64.shr_u + local.set $27 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $27 + i64.add + i64.const 1 + i64.add + local.set $27 + local.get $25 + local.get $27 + i64.sub + local.set $23 + local.get $4 + local.get $24 + local.get $10 + local.get $25 + local.get $26 + local.get $23 + local.get $3 + call $~lib/util/number/genDigits + local.set $28 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $28 + local.get $2 + i32.sub + global.get $~lib/util/number/_K + call $~lib/util/number/prettify + local.set $28 + local.get $28 + local.get $2 + i32.add + ) + (func $~lib/string/String#substring (; 98 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $6 + local.get $2 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $7 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + i32.const 1 + i32.shl + local.set $8 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + i32.const 1 + i32.shl + local.set $9 + local.get $9 + local.get $8 + i32.sub + local.set $3 + local.get $3 + i32.eqz + if + i32.const 120 + call $~lib/rt/pure/__retain + return + end + local.get $8 + i32.eqz + if (result i32) + local.get $9 + local.get $0 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + i32.eq + else + i32.const 0 + end + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $3 + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $10 + local.get $10 + local.get $0 + local.get $8 + i32.add + local.get $3 + call $~lib/memory/memory.copy + local.get $10 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/dtoa (; 99 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + f64.const 0 + f64.eq + if + i32.const 13152 + call $~lib/rt/pure/__retain + return + end + local.get $0 + call $~lib/number/isFinite + i32.eqz + if + local.get $0 + call $~lib/number/isNaN + if + i32.const 4344 + call $~lib/rt/pure/__retain + return + end + i32.const 5224 + i32.const 13176 + local.get $0 + f64.const 0 + f64.lt + select + call $~lib/rt/pure/__retain + return + end + i32.const 28 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $1 + local.get $1 + local.get $0 + call $~lib/util/number/dtoa_core + local.set $2 + local.get $2 + i32.const 28 + i32.eq + if + local.get $1 + call $~lib/rt/pure/__retain + return + end + local.get $1 + i32.const 0 + local.get $2 + call $~lib/string/String#substring + local.set $3 + local.get $1 + call $~lib/rt/tlsf/__free + local.get $3 + ) + (func $start:std/string (; 100 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + (local $27 i32) + (local $28 i32) + (local $29 i32) + (local $30 i32) + (local $31 i32) + (local $32 i32) + (local $33 i32) + (local $34 i32) + (local $35 i32) + (local $36 i32) + (local $37 i32) + (local $38 i32) + (local $39 i32) + (local $40 i32) + (local $41 i32) + (local $42 i32) + (local $43 i32) + (local $44 i32) + (local $45 i32) + (local $46 i32) + (local $47 i32) + (local $48 i32) + (local $49 i32) + (local $50 i32) + (local $51 i32) + (local $52 i32) + (local $53 i32) + (local $54 i32) + (local $55 i32) + (local $56 i32) + (local $57 i32) + (local $58 i32) + (local $59 i32) + (local $60 i32) + (local $61 i32) + (local $62 i32) + (local $63 i32) + (local $64 i32) + (local $65 i32) + (local $66 i32) + (local $67 i32) + (local $68 i32) + (local $69 i32) + (local $70 i32) + (local $71 i32) + (local $72 i32) + (local $73 i32) + (local $74 i32) + (local $75 i32) + (local $76 i32) + (local $77 i32) + (local $78 i32) + (local $79 i32) + (local $80 i32) + (local $81 i32) + (local $82 i32) + (local $83 i32) + (local $84 i32) + (local $85 i32) + (local $86 i32) + (local $87 i32) + (local $88 i32) + (local $89 i32) + (local $90 i32) + (local $91 i32) + (local $92 i32) + (local $93 i32) + (local $94 i32) + (local $95 i32) + (local $96 i32) + (local $97 i32) + (local $98 i32) + (local $99 i32) + (local $100 i32) + (local $101 i32) + (local $102 i32) + (local $103 i32) + (local $104 i32) + (local $105 i32) + (local $106 i32) + (local $107 i32) + (local $108 i32) + (local $109 i32) + (local $110 i32) + (local $111 i32) + (local $112 i32) + (local $113 i32) + (local $114 i32) + (local $115 i32) + (local $116 i32) + (local $117 i32) + (local $118 i32) + (local $119 i32) + (local $120 i32) + (local $121 i32) + (local $122 i32) + (local $123 i32) + (local $124 i32) + (local $125 i32) + (local $126 i32) + (local $127 i32) + (local $128 i32) + (local $129 i32) + (local $130 i32) + (local $131 i32) + (local $132 i32) + (local $133 i32) + (local $134 i32) + (local $135 i32) + (local $136 i32) + (local $137 i32) + (local $138 i32) + (local $139 i32) + (local $140 i32) + (local $141 i32) + (local $142 i32) + (local $143 i32) + (local $144 i32) + (local $145 i32) + (local $146 i32) + (local $147 i32) + (local $148 i32) + (local $149 i32) + (local $150 i32) + (local $151 i32) + (local $152 i32) + (local $153 i32) + (local $154 i32) + (local $155 i32) + (local $156 i32) + (local $157 i32) + (local $158 i32) + (local $159 i32) + (local $160 i32) + (local $161 i32) + (local $162 i32) + (local $163 i32) + (local $164 i32) + (local $165 i32) + (local $166 i32) + (local $167 i32) + (local $168 i32) + (local $169 i32) + (local $170 i32) + (local $171 i32) + (local $172 i32) + (local $173 i32) + (local $174 i32) + (local $175 i32) + (local $176 i32) + (local $177 i32) + (local $178 i32) + (local $179 i32) + (local $180 i32) + (local $181 i32) + (local $182 i32) + (local $183 i32) + (local $184 i32) + (local $185 i32) + (local $186 i32) + (local $187 i32) + (local $188 i32) + (local $189 i32) + (local $190 i32) + global.get $std/string/str + i32.const 24 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 8 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + call $~lib/string/String#get:length + i32.const 16 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 10 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 0 + call $~lib/string/String#charCodeAt + i32.const 104 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 11 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + call $~lib/string/String.__not + i32.eqz + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 13 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 384 + call $~lib/string/String.__not + i32.eqz + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 14 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + call $~lib/string/String.__not + i32.eqz + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 15 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + i32.const 0 + i32.const 0 + call $~lib/string/String.fromCharCode|trampoline + local.tee $0 + i32.const 384 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 17 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + i32.const 54 + i32.const 0 + call $~lib/string/String.fromCharCode|trampoline + local.tee $1 + i32.const 432 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 18 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + i32.const 65590 + i32.const 0 + call $~lib/string/String.fromCharCode|trampoline + local.tee $2 + i32.const 432 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 19 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 55296 + i32.const 57088 + call $~lib/string/String.fromCharCode + local.tee $3 + i32.const 456 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 20 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/string/String.fromCodePoint + local.tee $4 + i32.const 384 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 22 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 54 + call $~lib/string/String.fromCodePoint + local.tee $5 + i32.const 432 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 23 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 119558 + call $~lib/string/String.fromCodePoint + local.tee $6 + i32.const 528 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 24 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 552 + i32.const 0 + call $~lib/string/String#startsWith + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 26 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 600 + i32.const 536870904 + call $~lib/string/String#endsWith + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 27 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 632 + i32.const 0 + call $~lib/string/String#includes + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 28 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 0 + i32.const 656 + call $~lib/string/String#padStart + local.tee $7 + global.get $std/string/str + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 30 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 15 + i32.const 656 + call $~lib/string/String#padStart + local.tee $8 + global.get $std/string/str + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 31 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 3 + i32.const 656 + call $~lib/string/String#padStart + local.tee $9 + i32.const 680 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 32 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 10 + i32.const 120 + call $~lib/string/String#padStart + local.tee $10 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 33 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 100 + i32.const 120 + call $~lib/string/String#padStart + local.tee $11 + i32.const 408 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 34 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 5 + i32.const 656 + call $~lib/string/String#padStart + local.tee $12 + i32.const 728 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 35 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 6 + i32.const 760 + call $~lib/string/String#padStart + local.tee $13 + i32.const 784 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 36 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 8 + i32.const 760 + call $~lib/string/String#padStart + local.tee $14 + i32.const 816 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 37 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 0 + i32.const 656 + call $~lib/string/String#padEnd + local.tee $15 + global.get $std/string/str + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 39 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 15 + i32.const 656 + call $~lib/string/String#padEnd + local.tee $16 + global.get $std/string/str + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 40 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 3 + i32.const 656 + call $~lib/string/String#padEnd + local.tee $17 + i32.const 680 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 41 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 10 + i32.const 120 + call $~lib/string/String#padEnd + local.tee $18 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 42 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 100 + i32.const 120 + call $~lib/string/String#padEnd + local.tee $19 + i32.const 408 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 43 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 5 + i32.const 656 + call $~lib/string/String#padEnd + local.tee $20 + i32.const 848 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 44 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 6 + i32.const 704 + call $~lib/string/String#padEnd + local.tee $21 + i32.const 880 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 45 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 8 + i32.const 704 + call $~lib/string/String#padEnd + local.tee $22 + i32.const 912 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 46 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 120 + i32.const 0 + call $~lib/string/String#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 48 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 552 + i32.const 0 + call $~lib/string/String#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 49 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 408 + i32.const 0 + call $~lib/string/String#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 50 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + global.get $std/string/str + i32.const 0 + call $~lib/string/String#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 51 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 120 + i32.const 0 + call $~lib/string/String#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 52 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 944 + i32.const 0 + call $~lib/string/String#indexOf + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 53 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 968 + i32.const 0 + call $~lib/string/String#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 54 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 944 + i32.const 2 + call $~lib/string/String#indexOf + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 55 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 944 + i32.const 3 + call $~lib/string/String#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 56 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 992 + i32.const -1 + call $~lib/string/String#indexOf + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 57 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 120 + i32.const 2147483647 + call $~lib/string/String#lastIndexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 59 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 552 + i32.const 2147483647 + call $~lib/string/String#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 60 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 120 + i32.const 2147483647 + call $~lib/string/String#lastIndexOf + global.get $std/string/str + call $~lib/string/String#get:length + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 61 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 944 + i32.const 2147483647 + call $~lib/string/String#lastIndexOf + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 62 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 968 + i32.const 2147483647 + call $~lib/string/String#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 63 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 1016 + i32.const 2147483647 + call $~lib/string/String#lastIndexOf + i32.const 15 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 64 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 944 + i32.const 2 + call $~lib/string/String#lastIndexOf + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 65 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 944 + i32.const 3 + call $~lib/string/String#lastIndexOf + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 66 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 992 + i32.const -1 + call $~lib/string/String#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 67 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 1040 + i32.const 0 + call $~lib/string/String#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 68 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 552 + i32.const 0 + call $~lib/string/String#lastIndexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 69 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + call $~lib/string/String#trimStart + local.tee $23 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 71 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1064 + call $~lib/string/String#trimStart + local.tee $24 + i32.const 1064 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 72 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1088 + call $~lib/string/String#trimStart + local.tee $25 + i32.const 1128 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 73 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + call $~lib/string/String#trimEnd + local.tee $26 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 75 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1064 + call $~lib/string/String#trimEnd + local.tee $27 + i32.const 1064 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 76 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1088 + call $~lib/string/String#trimEnd + local.tee $28 + i32.const 1160 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 77 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + call $~lib/string/String#trim + local.tee $29 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 79 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1064 + call $~lib/string/String#trim + local.tee $30 + i32.const 1064 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 80 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1088 + call $~lib/string/String#trim + local.tee $31 + i32.const 704 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 81 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1192 + i32.const 0 + call $~lib/string/parseInt + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 83 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1216 + i32.const 0 + call $~lib/string/parseInt + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 84 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1240 + i32.const 0 + call $~lib/string/parseInt + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 85 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1264 + i32.const 0 + call $~lib/string/parseInt + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 86 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1288 + i32.const 0 + call $~lib/string/parseInt + f64.const 5 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 87 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1320 + i32.const 0 + call $~lib/string/parseInt + f64.const 455 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 88 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1352 + i32.const 0 + call $~lib/string/parseInt + f64.const 3855 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 89 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1384 + i32.const 0 + call $~lib/string/parseInt + f64.const 3855 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 90 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1416 + i32.const 0 + call $~lib/string/parseInt + f64.const 11 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 91 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1440 + i32.const 0 + call $~lib/string/parseInt + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 92 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1464 + i32.const 0 + call $~lib/string/parseInt + f64.const -123 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 93 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1488 + i32.const 0 + call $~lib/string/parseInt + f64.const 123 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 94 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1512 + i32.const 0 + call $~lib/string/parseInt + f64.const -12 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 95 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1544 + i32.const 0 + call $~lib/string/parseInt + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 97 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1568 + i32.const 0 + call $~lib/string/parseInt + f64.const 2 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 98 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1600 + i32.const 0 + call $~lib/number/I32.parseInt + i32.const 2147483647 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 100 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1640 + i32.const 0 + call $~lib/number/I64.parseInt + i64.const 9223372036854775807 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 101 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1192 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 104 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1240 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 105 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2128 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 106 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2152 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 107 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2176 + call $~lib/string/parseFloat + f64.const 1e-05 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 108 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2200 + call $~lib/string/parseFloat + f64.const -1e-05 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 109 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2232 + call $~lib/string/parseFloat + f64.const -3e-23 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 110 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2264 + call $~lib/string/parseFloat + f64.const 3e21 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 111 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2296 + call $~lib/string/parseFloat + f64.const 0.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 112 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2320 + call $~lib/string/parseFloat + f64.const 0.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 113 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2352 + call $~lib/string/parseFloat + f64.const 0.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 114 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2376 + call $~lib/string/parseFloat + f64.const 0.25 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 115 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2400 + call $~lib/string/parseFloat + f64.const 1e-10 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 116 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2432 + call $~lib/string/parseFloat + f64.const 1e-30 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 117 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2464 + call $~lib/string/parseFloat + f64.const 1e-323 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 118 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2496 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 119 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2528 + call $~lib/string/parseFloat + f64.const 1.e+308 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 120 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2560 + call $~lib/string/parseFloat + f64.const inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 121 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 122 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2592 + call $~lib/string/parseFloat + f64.const 0.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 125 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2624 + call $~lib/string/parseFloat + f64.const 1e-10 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 126 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2664 + call $~lib/string/parseFloat + f64.const 10 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 127 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2696 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 128 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2720 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 129 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2744 + call $~lib/string/parseFloat + f64.const 10 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 130 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2784 + call $~lib/string/parseFloat + f64.const 123456789 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 131 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2824 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 132 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2864 + call $~lib/string/parseFloat + f64.const 1e-60 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 134 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2896 + call $~lib/string/parseFloat + f64.const 1.e+60 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 135 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2920 + call $~lib/string/parseFloat + f64.const -0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 138 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2952 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 139 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2976 + call $~lib/string/parseFloat + f64.const -1.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 140 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3016 + call $~lib/string/parseFloat + f64.const 10 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 141 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3056 + call $~lib/string/parseFloat + f64.const 10 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 142 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3096 + call $~lib/string/parseFloat + f64.const 0.022 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 143 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3128 + call $~lib/string/parseFloat + f64.const 11 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 144 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3160 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 145 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3184 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 146 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3208 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 147 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3232 + call $~lib/string/parseFloat + f64.const 1.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 148 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3256 + call $~lib/string/parseFloat + f64.const -1.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 149 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3288 + call $~lib/string/parseFloat + f64.const -1.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 150 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3320 + call $~lib/string/parseFloat + f64.const -1.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 151 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3352 + call $~lib/string/parseFloat + f64.const -1.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 152 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3384 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 153 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3416 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 154 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3448 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 155 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3480 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 156 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3512 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 157 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3544 + call $~lib/string/parseFloat + f64.const 10 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 158 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3568 + call $~lib/string/parseFloat + f64.const 10 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 159 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3600 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 160 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3632 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 161 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3664 + call $~lib/string/parseFloat + f64.const 0.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 162 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3696 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 163 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3720 + call $~lib/string/parseFloat + f64.const 10 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 164 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3744 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 165 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3768 + call $~lib/string/parseFloat + f64.const 0.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 166 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3800 + call $~lib/string/parseFloat + f64.const 0.01 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 167 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3832 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 168 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3856 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 169 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3880 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 170 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3904 + call $~lib/string/parseFloat + f64.const 0.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 171 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3928 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 172 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3952 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 173 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 3976 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 174 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4000 + call $~lib/string/parseFloat + f64.const 0.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 175 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4032 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 176 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4056 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 177 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4080 + call $~lib/string/parseFloat + f64.const -0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 178 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4104 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 179 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4128 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 180 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4152 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 181 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4176 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 182 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4200 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 183 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4224 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 184 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4248 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 185 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4272 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 186 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4296 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 187 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4320 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 188 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4344 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 189 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4368 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 190 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4392 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 191 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4416 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 192 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4440 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 193 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4472 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 194 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4496 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 195 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4520 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 196 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4552 + call $~lib/string/parseFloat + f64.const 2.220446049250313e-16 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 197 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4616 + call $~lib/string/parseFloat + f64.const 1797693134862315708145274e284 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 198 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4680 + call $~lib/string/parseFloat + f64.const 5e-324 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 199 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4712 + call $~lib/string/parseFloat + f64.const 1.e+308 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 200 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4760 + call $~lib/string/parseFloat + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 201 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4904 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 202 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4936 + call $~lib/string/parseFloat + f64.const inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 203 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4968 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 204 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5000 + call $~lib/string/parseFloat + f64.const -inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 205 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5032 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 206 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5072 + call $~lib/string/parseFloat + f64.const inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 207 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5112 + call $~lib/string/parseFloat + f64.const inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 208 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5144 + call $~lib/string/parseFloat + f64.const inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 209 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5184 + call $~lib/string/parseFloat + f64.const inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 210 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5224 + call $~lib/string/parseFloat + f64.const -inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 211 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5264 + call $~lib/string/parseFloat + f64.const inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 212 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5304 + call $~lib/string/parseFloat + f64.const inf + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 213 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5344 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 214 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5368 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 215 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5400 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 216 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5432 + call $~lib/string/parseFloat + f64.const 0 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 220 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5624 + call $~lib/string/parseFloat + f64.const 1e-323 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 233 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 5816 + call $~lib/string/parseFloat + f64.const 2.225073858507202e-308 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 237 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 6008 + i32.const 6160 + call $~lib/string/String.__concat + local.tee $32 + i32.const 6312 + call $~lib/string/String.__concat + local.tee $33 + i32.const 6464 + call $~lib/string/String.__concat + local.tee $34 + i32.const 6616 + call $~lib/string/String.__concat + local.tee $35 + call $~lib/string/parseFloat + f64.const 1797693134862315708145274e284 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 240 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 6768 + call $~lib/string/parseFloat + f64.const 9.753531888799502e-104 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 258 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 6880 + call $~lib/string/parseFloat + f64.const 0.5961860348131807 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 259 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 6984 + call $~lib/string/parseFloat + f64.const 0.18150131692180388 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 260 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 7088 + call $~lib/string/parseFloat + f64.const 0.42070823575344535 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 261 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 7192 + call $~lib/string/parseFloat + f64.const 0.6654686306516261 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 262 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 7296 + call $~lib/string/parseFloat + f64.const 0.6101852922970868 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 263 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 7400 + call $~lib/string/parseFloat + f64.const 0.7696695208236968 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 264 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 7504 + call $~lib/string/parseFloat + f64.const 0.25050653222286823 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 265 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 7608 + call $~lib/string/parseFloat + f64.const 0.2740037230228005 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 266 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 7712 + call $~lib/string/parseFloat + f64.const 0.20723093500497428 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 267 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 7816 + call $~lib/string/parseFloat + f64.const 7.900280238081605 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 268 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 7920 + call $~lib/string/parseFloat + f64.const 98.22860653737297 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 269 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 8024 + call $~lib/string/parseFloat + f64.const 746.894972319037 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 270 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 8128 + call $~lib/string/parseFloat + f64.const 1630.2683202827284 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 271 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 8232 + call $~lib/string/parseFloat + f64.const 46371.68629719171 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 272 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 8336 + call $~lib/string/parseFloat + f64.const 653780.5944497711 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 273 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 8440 + call $~lib/string/parseFloat + f64.const 234632.43565024371 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 274 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 8544 + call $~lib/string/parseFloat + f64.const 97094817.16420048 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 275 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 8648 + call $~lib/string/parseFloat + f64.const 499690852.20518744 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 276 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 8752 + call $~lib/string/parseFloat + f64.const 7925201200557245595648 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 277 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 8864 + call $~lib/string/parseFloat + f64.const 6096564585983177528398588e5 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 278 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 8976 + call $~lib/string/parseFloat + f64.const 4800416117477028695992383e42 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 279 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9088 + call $~lib/string/parseFloat + f64.const 8524829079817968137287277e80 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 280 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9200 + call $~lib/string/parseFloat + f64.const 3271239291709782092398754e243 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 281 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9312 + call $~lib/string/parseFloat + call $~lib/number/isNaN + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 284 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9336 + call $~lib/string/parseFloat + f64.const 0.1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 285 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 9368 + call $~lib/string/String.__concat + local.tee $36 + call $~lib/rt/pure/__retain + local.set $37 + local.get $37 + i32.const 9392 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 289 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + i32.const 408 + call $~lib/string/String.__ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 290 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $36 + call $~lib/rt/pure/__release + local.get $37 + call $~lib/rt/pure/__release + i32.const 120 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 292 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + global.get $std/string/nullStr + call $~lib/string/String.__ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 293 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/nullStr + i32.const 120 + call $~lib/string/String.__ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 294 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 9368 + call $~lib/string/String.__ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 295 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 408 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 296 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9416 + i32.const 9440 + call $~lib/string/String.__ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 297 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9416 + i32.const 9416 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 298 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9464 + i32.const 9488 + call $~lib/string/String.__ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 299 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9512 + i32.const 9544 + call $~lib/string/String.__ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 300 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9576 + i32.const 9576 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 301 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9576 + i32.const 9608 + call $~lib/string/String.__ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 302 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9640 + i32.const 9680 + call $~lib/string/String.__ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 303 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9368 + i32.const 408 + call $~lib/string/String.__gt + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 305 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9720 + i32.const 408 + call $~lib/string/String.__gt + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 306 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9720 + i32.const 9744 + call $~lib/string/String.__gte + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 307 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9720 + i32.const 9392 + call $~lib/string/String.__gt + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 308 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9720 + i32.const 9392 + call $~lib/string/String.__lt + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 309 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9368 + global.get $std/string/nullStr + call $~lib/string/String.__lt + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 311 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/nullStr + i32.const 9368 + call $~lib/string/String.__lt + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 312 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 120 + call $~lib/string/String.__gt + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 314 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 704 + call $~lib/string/String.__lt + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 315 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 120 + call $~lib/string/String.__gte + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 316 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 704 + call $~lib/string/String.__lte + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 317 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 120 + call $~lib/string/String.__lt + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 318 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 704 + call $~lib/string/String.__gt + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 319 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 120 + call $~lib/string/String.__lt + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 320 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 120 + call $~lib/string/String.__gt + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 321 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 120 + call $~lib/string/String.__gte + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 322 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 120 + call $~lib/string/String.__lte + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 323 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 65377 + call $~lib/string/String.fromCodePoint + local.set $37 + i32.const 55296 + call $~lib/string/String.fromCodePoint + local.tee $36 + i32.const 56322 + call $~lib/string/String.fromCodePoint + local.tee $38 + call $~lib/string/String.__concat + local.tee $39 + call $~lib/rt/pure/__retain + local.set $40 + local.get $37 + local.get $40 + call $~lib/string/String.__gt + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 328 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $37 + call $~lib/rt/pure/__release + local.get $36 + call $~lib/rt/pure/__release + local.get $38 + call $~lib/rt/pure/__release + local.get $39 + call $~lib/rt/pure/__release + local.get $40 + call $~lib/rt/pure/__release + i32.const 760 + call $~lib/string/String#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 331 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 100 + call $~lib/string/String#repeat + local.tee $40 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 333 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 0 + call $~lib/string/String#repeat + local.tee $39 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 334 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 1 + call $~lib/string/String#repeat + local.tee $38 + i32.const 408 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 335 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 2 + call $~lib/string/String#repeat + local.tee $36 + i32.const 9744 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 336 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 3 + call $~lib/string/String#repeat + local.tee $37 + i32.const 9816 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 337 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9392 + i32.const 4 + call $~lib/string/String#repeat + local.tee $41 + i32.const 9840 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 338 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 5 + call $~lib/string/String#repeat + local.tee $42 + i32.const 9872 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 339 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 6 + call $~lib/string/String#repeat + local.tee $43 + i32.const 9904 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 340 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 408 + i32.const 7 + call $~lib/string/String#repeat + local.tee $44 + i32.const 9936 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 341 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 120 + i32.const 120 + call $~lib/string/String#replace + local.tee $45 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 343 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 120 + i32.const 4152 + call $~lib/string/String#replace + local.tee $46 + i32.const 4152 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 344 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4152 + i32.const 4152 + i32.const 120 + call $~lib/string/String#replace + local.tee $47 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 345 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4152 + i32.const 120 + i32.const 120 + call $~lib/string/String#replace + local.tee $48 + i32.const 4152 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 346 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 4176 + i32.const 4152 + call $~lib/string/String#replace + local.tee $49 + i32.const 704 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 347 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 704 + i32.const 4152 + call $~lib/string/String#replace + local.tee $50 + i32.const 4152 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 348 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 9968 + i32.const 4152 + call $~lib/string/String#replace + local.tee $51 + i32.const 704 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 349 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 9392 + i32.const 9392 + call $~lib/string/String#replace + local.tee $52 + i32.const 704 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 350 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9992 + i32.const 4176 + i32.const 4152 + call $~lib/string/String#replace + local.tee $53 + i32.const 10024 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 351 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 120 + i32.const 4152 + call $~lib/string/String#replace + local.tee $54 + i32.const 10056 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 352 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 10080 + i32.const 10104 + i32.const 4152 + call $~lib/string/String#replace + local.tee $55 + i32.const 10056 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 353 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 10128 + i32.const 10152 + call $~lib/string/String#replace + local.tee $56 + i32.const 10176 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 354 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 10128 + i32.const 120 + call $~lib/string/String#replace + local.tee $57 + i32.const 9392 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 355 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 120 + i32.const 704 + call $~lib/string/String#replaceAll + local.tee $58 + i32.const 704 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 357 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 4176 + i32.const 4152 + call $~lib/string/String#replaceAll + local.tee $59 + i32.const 704 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 358 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 880 + i32.const 704 + i32.const 4152 + call $~lib/string/String#replaceAll + local.tee $60 + i32.const 10152 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 360 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 10200 + i32.const 704 + i32.const 4152 + call $~lib/string/String#replaceAll + local.tee $61 + i32.const 10240 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 361 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 880 + i32.const 9392 + i32.const 9392 + call $~lib/string/String#replaceAll + local.tee $62 + i32.const 880 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 362 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 10264 + i32.const 408 + i32.const 10240 + call $~lib/string/String#replaceAll + local.tee $63 + i32.const 10296 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 363 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 880 + i32.const 9392 + i32.const 10152 + call $~lib/string/String#replaceAll + local.tee $64 + i32.const 10344 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 364 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 10376 + i32.const 10400 + i32.const 10152 + call $~lib/string/String#replaceAll + local.tee $65 + i32.const 10424 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 365 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 9968 + i32.const 4152 + call $~lib/string/String#replaceAll + local.tee $66 + i32.const 704 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 366 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9968 + i32.const 10448 + i32.const 10152 + call $~lib/string/String#replaceAll + local.tee $67 + i32.const 9968 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 367 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 10472 + i32.const 4152 + call $~lib/string/String#replaceAll + local.tee $68 + i32.const 10496 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 368 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9392 + i32.const 9392 + i32.const 4152 + call $~lib/string/String#replaceAll + local.tee $69 + i32.const 4152 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 369 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 9992 + i32.const 4176 + i32.const 4152 + call $~lib/string/String#replaceAll + local.tee $70 + i32.const 10520 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 370 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 120 + i32.const 120 + call $~lib/string/String#replaceAll + local.tee $71 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 372 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 120 + i32.const 4152 + call $~lib/string/String#replaceAll + local.tee $72 + i32.const 4152 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 373 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4152 + i32.const 4152 + i32.const 120 + call $~lib/string/String#replaceAll + local.tee $73 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 374 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 4152 + i32.const 120 + i32.const 120 + call $~lib/string/String#replaceAll + local.tee $74 + i32.const 4152 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 375 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 704 + i32.const 4176 + call $~lib/string/String#replaceAll + local.tee $75 + i32.const 4176 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 376 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 10552 + i32.const 4176 + call $~lib/string/String#replaceAll + local.tee $76 + i32.const 704 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 377 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 120 + i32.const 4152 + call $~lib/string/String#replaceAll + local.tee $77 + i32.const 10576 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 378 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 120 + i32.const 120 + call $~lib/string/String#replaceAll + local.tee $78 + i32.const 704 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 379 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 10608 + local.tee $79 + global.get $std/string/str + local.tee $80 + i32.ne + if + local.get $79 + call $~lib/rt/pure/__retain + drop + local.get $80 + call $~lib/rt/pure/__release + end + local.get $79 + global.set $std/string/str + global.get $std/string/str + i32.const 0 + i32.const 2147483647 + call $~lib/string/String#slice + local.tee $79 + i32.const 10608 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 383 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const -1 + i32.const 2147483647 + call $~lib/string/String#slice + local.tee $80 + i32.const 10656 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 384 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const -5 + i32.const 2147483647 + call $~lib/string/String#slice + local.tee $81 + i32.const 10680 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 385 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 2 + i32.const 7 + call $~lib/string/String#slice + local.tee $82 + i32.const 10712 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 386 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const -11 + i32.const -6 + call $~lib/string/String#slice + local.tee $83 + i32.const 10744 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 387 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 4 + i32.const 3 + call $~lib/string/String#slice + local.tee $84 + i32.const 120 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 388 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + i32.const 0 + i32.const -1 + call $~lib/string/String#slice + local.tee $85 + i32.const 10776 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 389 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.set $86 + i32.const 120 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/string/String#split + local.set $87 + local.get $86 + call $~lib/rt/pure/__release + local.get $87 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 1 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 120 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 395 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 120 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/string/String#split + local.set $88 + local.get $86 + call $~lib/rt/pure/__release + local.get $88 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 397 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 120 + i32.const 944 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/string/String#split + local.set $87 + local.get $86 + call $~lib/rt/pure/__release + local.get $87 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 1 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 120 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 399 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 10984 + i32.const 4296 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/string/String#split + local.set $88 + local.get $86 + call $~lib/rt/pure/__release + local.get $88 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 1 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 10984 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 401 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 10984 + i32.const 944 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/string/String#split + local.set $87 + local.get $86 + call $~lib/rt/pure/__release + local.get $87 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 3 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 408 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 1 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 9368 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 2 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 10128 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 403 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 11016 + i32.const 11048 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/string/String#split + local.set $88 + local.get $86 + call $~lib/rt/pure/__release + local.get $88 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 3 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 408 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 1 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 9368 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 2 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 10128 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 405 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 11072 + i32.const 944 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/string/String#split + local.set $87 + local.get $86 + call $~lib/rt/pure/__release + local.get $87 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 4 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 408 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 1 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 9368 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 2 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 120 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 3 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 10128 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 407 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 11104 + i32.const 944 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/string/String#split + local.set $88 + local.get $86 + call $~lib/rt/pure/__release + local.get $88 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 4 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 120 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 1 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 408 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 2 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 9368 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 3 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 10128 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 409 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 11136 + i32.const 944 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/string/String#split + local.set $87 + local.get $86 + call $~lib/rt/pure/__release + local.get $87 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 4 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 408 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 1 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 9368 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 2 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 10128 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 3 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 120 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 411 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 120 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/string/String#split + local.set $88 + local.get $86 + call $~lib/rt/pure/__release + local.get $88 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 3 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 408 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 1 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 9368 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 2 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 10128 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 413 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 120 + i32.const 0 + call $~lib/string/String#split + local.set $87 + local.get $86 + call $~lib/rt/pure/__release + local.get $87 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 120 + i32.const 1 + call $~lib/string/String#split + local.set $88 + local.get $86 + call $~lib/rt/pure/__release + local.get $88 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 1 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 408 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 417 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 10984 + i32.const 944 + i32.const 1 + call $~lib/string/String#split + local.set $87 + local.get $86 + call $~lib/rt/pure/__release + local.get $87 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 1 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 408 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 419 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 120 + i32.const 4 + call $~lib/string/String#split + local.set $88 + local.get $86 + call $~lib/rt/pure/__release + local.get $88 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 3 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 408 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 1 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 9368 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 2 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 10128 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 421 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 704 + i32.const 120 + i32.const -1 + call $~lib/string/String#split + local.set $87 + local.get $86 + call $~lib/rt/pure/__release + local.get $87 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 3 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 408 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 1 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 9368 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 2 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $87 + i32.const 10128 + call $~lib/string/String.__eq + local.set $88 + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 423 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 10984 + i32.const 944 + i32.const -1 + call $~lib/string/String#split + local.set $88 + local.get $86 + call $~lib/rt/pure/__release + local.get $88 + local.set $86 + local.get $86 + call $~lib/array/Array<~lib/string/String>#get:length + i32.const 3 + i32.eq + if (result i32) + local.get $86 + i32.const 0 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 408 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 1 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 9368 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + if (result i32) + local.get $86 + i32.const 2 + call $~lib/array/Array<~lib/string/String>#__get + local.tee $88 + i32.const 10128 + call $~lib/string/String.__eq + local.set $87 + local.get $88 + call $~lib/rt/pure/__release + local.get $87 + else + i32.const 0 + end + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 425 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $86 + call $~lib/rt/pure/__release + i32.const 0 + call $~lib/util/number/itoa32 + local.tee $86 + i32.const 1192 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 428 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + call $~lib/util/number/itoa32 + local.tee $88 + i32.const 1240 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 429 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 8 + call $~lib/util/number/itoa32 + local.tee $87 + i32.const 11616 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 430 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 12 + call $~lib/util/number/itoa32 + local.tee $89 + i32.const 11640 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 431 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 123 + call $~lib/util/number/itoa32 + local.tee $90 + i32.const 760 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 432 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const -1000 + call $~lib/util/number/itoa32 + local.tee $91 + i32.const 11664 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 433 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1234 + call $~lib/util/number/itoa32 + local.tee $92 + i32.const 11696 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 434 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 12345 + call $~lib/util/number/itoa32 + local.tee $93 + i32.const 11720 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 435 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 123456 + call $~lib/util/number/itoa32 + local.tee $94 + i32.const 11752 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 436 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1111111 + call $~lib/util/number/itoa32 + local.tee $95 + i32.const 11784 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 437 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1234567 + call $~lib/util/number/itoa32 + local.tee $96 + i32.const 11816 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 438 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 12345678 + call $~lib/util/number/itoa32 + local.tee $97 + i32.const 11848 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 439 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 123456789 + call $~lib/util/number/itoa32 + local.tee $98 + i32.const 11880 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 440 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2147483646 + call $~lib/util/number/itoa32 + local.tee $99 + i32.const 11920 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 441 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2147483647 + call $~lib/util/number/itoa32 + local.tee $100 + i32.const 11960 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 442 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const -2147483648 + call $~lib/util/number/itoa32 + local.tee $101 + i32.const 12000 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 443 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const -1 + call $~lib/util/number/itoa32 + local.tee $102 + i32.const 12040 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 444 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + call $~lib/util/number/utoa32 + local.tee $103 + i32.const 1192 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 446 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 1000 + call $~lib/util/number/utoa32 + local.tee $104 + i32.const 12064 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 447 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const 2147483647 + call $~lib/util/number/utoa32 + local.tee $105 + i32.const 11960 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 448 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const -2147483648 + call $~lib/util/number/utoa32 + local.tee $106 + i32.const 12088 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 449 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i32.const -1 + call $~lib/util/number/utoa32 + local.tee $107 + i32.const 12128 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 450 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 0 + call $~lib/util/number/utoa64 + local.tee $108 + i32.const 1192 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 452 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 12 + call $~lib/util/number/utoa64 + local.tee $109 + i32.const 11640 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 453 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 123 + call $~lib/util/number/utoa64 + local.tee $110 + i32.const 760 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 454 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 1234 + call $~lib/util/number/utoa64 + local.tee $111 + i32.const 11696 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 455 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 12345 + call $~lib/util/number/utoa64 + local.tee $112 + i32.const 11720 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 456 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 123456 + call $~lib/util/number/utoa64 + local.tee $113 + i32.const 11752 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 457 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 1234567 + call $~lib/util/number/utoa64 + local.tee $114 + i32.const 11816 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 458 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 99999999 + call $~lib/util/number/utoa64 + local.tee $115 + i32.const 12168 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 459 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 100000000 + call $~lib/util/number/utoa64 + local.tee $116 + i32.const 12200 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 460 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 4294967295 + call $~lib/util/number/utoa64 + local.tee $117 + i32.const 12128 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 461 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 4294967297 + call $~lib/util/number/utoa64 + local.tee $118 + i32.const 12240 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 462 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 68719476735 + call $~lib/util/number/utoa64 + local.tee $119 + i32.const 12280 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 463 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 868719476735 + call $~lib/util/number/utoa64 + local.tee $120 + i32.const 12320 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 464 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 8687194767350 + call $~lib/util/number/utoa64 + local.tee $121 + i32.const 12360 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 465 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 86871947673501 + call $~lib/util/number/utoa64 + local.tee $122 + i32.const 12408 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 466 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 999868719476735 + call $~lib/util/number/utoa64 + local.tee $123 + i32.const 12456 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 467 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 9999868719476735 + call $~lib/util/number/utoa64 + local.tee $124 + i32.const 12504 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 468 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 19999868719476735 + call $~lib/util/number/utoa64 + local.tee $125 + i32.const 12552 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 469 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 129999868719476735 + call $~lib/util/number/utoa64 + local.tee $126 + i32.const 12608 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 470 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 1239999868719476735 + call $~lib/util/number/utoa64 + local.tee $127 + i32.const 12664 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 471 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -1 + call $~lib/util/number/utoa64 + local.tee $128 + i32.const 12720 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 472 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 0 + call $~lib/util/number/itoa64 + local.tee $129 + i32.const 1192 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 474 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -1234 + call $~lib/util/number/itoa64 + local.tee $130 + i32.const 12776 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 475 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 4294967295 + call $~lib/util/number/itoa64 + local.tee $131 + i32.const 12128 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 476 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 4294967297 + call $~lib/util/number/itoa64 + local.tee $132 + i32.const 12240 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 477 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -4294967295 + call $~lib/util/number/itoa64 + local.tee $133 + i32.const 12808 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 478 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 68719476735 + call $~lib/util/number/itoa64 + local.tee $134 + i32.const 12280 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 479 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -68719476735 + call $~lib/util/number/itoa64 + local.tee $135 + i32.const 12848 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 480 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -868719476735 + call $~lib/util/number/itoa64 + local.tee $136 + i32.const 12888 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 481 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -999868719476735 + call $~lib/util/number/itoa64 + local.tee $137 + i32.const 12936 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 482 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -19999868719476735 + call $~lib/util/number/itoa64 + local.tee $138 + i32.const 12984 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 483 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const 9223372036854775807 + call $~lib/util/number/itoa64 + local.tee $139 + i32.const 13040 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 484 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + i64.const -9223372036854775808 + call $~lib/util/number/itoa64 + local.tee $140 + i32.const 13096 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 485 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + call $~lib/util/number/dtoa + local.tee $141 + i32.const 13152 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 488 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0 + call $~lib/util/number/dtoa + local.tee $142 + i32.const 13152 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 489 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const nan:0x8000000000000 + call $~lib/util/number/dtoa + local.tee $143 + i32.const 4344 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 490 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + call $~lib/util/number/dtoa + local.tee $144 + i32.const 13176 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 491 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + call $~lib/util/number/dtoa + local.tee $145 + i32.const 5224 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 492 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.220446049250313e-16 + call $~lib/util/number/dtoa + local.tee $146 + i32.const 4552 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 493 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -2.220446049250313e-16 + call $~lib/util/number/dtoa + local.tee $147 + i32.const 14264 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 494 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1797693134862315708145274e284 + call $~lib/util/number/dtoa + local.tee $148 + i32.const 4616 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 495 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1797693134862315708145274e284 + call $~lib/util/number/dtoa + local.tee $149 + i32.const 14328 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 496 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4185580496821356722454785e274 + call $~lib/util/number/dtoa + local.tee $150 + i32.const 14392 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 497 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.2250738585072014e-308 + call $~lib/util/number/dtoa + local.tee $151 + i32.const 14456 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 498 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4.940656e-318 + call $~lib/util/number/dtoa + local.tee $152 + i32.const 14520 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 501 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9060801153433600 + call $~lib/util/number/dtoa + local.tee $153 + i32.const 14568 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 502 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4708356024711512064 + call $~lib/util/number/dtoa + local.tee $154 + i32.const 14624 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 503 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 9409340012568248320 + call $~lib/util/number/dtoa + local.tee $155 + i32.const 14688 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 504 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 5e-324 + call $~lib/util/number/dtoa + local.tee $156 + i32.const 4680 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 505 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + call $~lib/util/number/dtoa + local.tee $157 + i32.const 14752 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 511 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.1 + call $~lib/util/number/dtoa + local.tee $158 + i32.const 2352 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 512 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1 + call $~lib/util/number/dtoa + local.tee $159 + i32.const 14776 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 513 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -0.1 + call $~lib/util/number/dtoa + local.tee $160 + i32.const 14800 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 514 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1e6 + call $~lib/util/number/dtoa + local.tee $161 + i32.const 14824 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 516 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1e-06 + call $~lib/util/number/dtoa + local.tee $162 + i32.const 14864 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 517 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1e6 + call $~lib/util/number/dtoa + local.tee $163 + i32.const 14896 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 518 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1e-06 + call $~lib/util/number/dtoa + local.tee $164 + i32.const 14936 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 519 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1e7 + call $~lib/util/number/dtoa + local.tee $165 + i32.const 14976 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 520 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1e-07 + call $~lib/util/number/dtoa + local.tee $166 + i32.const 15016 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 521 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.e+308 + call $~lib/util/number/dtoa + local.tee $167 + i32.const 2528 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 523 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1.e+308 + call $~lib/util/number/dtoa + local.tee $168 + i32.const 15040 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 524 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const inf + call $~lib/util/number/dtoa + local.tee $169 + i32.const 13176 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 525 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -inf + call $~lib/util/number/dtoa + local.tee $170 + i32.const 5224 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 526 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1e-308 + call $~lib/util/number/dtoa + local.tee $171 + i32.const 15072 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 527 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1e-308 + call $~lib/util/number/dtoa + local.tee $172 + i32.const 15104 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 528 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1e-323 + call $~lib/util/number/dtoa + local.tee $173 + i32.const 15136 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 529 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const -1e-323 + call $~lib/util/number/dtoa + local.tee $174 + i32.const 15168 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 530 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0 + call $~lib/util/number/dtoa + local.tee $175 + i32.const 13152 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 531 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 4294967272 + call $~lib/util/number/dtoa + local.tee $176 + i32.const 15200 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 533 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.2312145673456234e-08 + call $~lib/util/number/dtoa + local.tee $177 + i32.const 15240 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 534 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 555555555.5555556 + call $~lib/util/number/dtoa + local.tee $178 + i32.const 15304 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 536 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.9999999999999999 + call $~lib/util/number/dtoa + local.tee $179 + i32.const 15360 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 537 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1 + call $~lib/util/number/dtoa + local.tee $180 + i32.const 14752 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 538 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 12.34 + call $~lib/util/number/dtoa + local.tee $181 + i32.const 15416 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 539 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.3333333333333333 + call $~lib/util/number/dtoa + local.tee $182 + i32.const 15448 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 541 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1234e17 + call $~lib/util/number/dtoa + local.tee $183 + i32.const 15504 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 542 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1234e18 + call $~lib/util/number/dtoa + local.tee $184 + i32.const 15568 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 543 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 2.71828 + call $~lib/util/number/dtoa + local.tee $185 + i32.const 15608 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 544 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.0271828 + call $~lib/util/number/dtoa + local.tee $186 + i32.const 15640 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 545 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 271.828 + call $~lib/util/number/dtoa + local.tee $187 + i32.const 15680 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 546 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1e+128 + call $~lib/util/number/dtoa + local.tee $188 + i32.const 15712 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 547 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 1.1e-64 + call $~lib/util/number/dtoa + local.tee $189 + i32.const 15744 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 548 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + f64.const 0.000035689 + call $~lib/util/number/dtoa + local.tee $190 + i32.const 15776 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 72 + i32.const 549 + i32.const 0 + call $~lib/builtins/abort + unreachable + end + global.get $std/string/str + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + local.get $10 + call $~lib/rt/pure/__release + local.get $11 + call $~lib/rt/pure/__release + local.get $12 + call $~lib/rt/pure/__release + local.get $13 + call $~lib/rt/pure/__release + local.get $14 + call $~lib/rt/pure/__release + local.get $15 + call $~lib/rt/pure/__release + local.get $16 + call $~lib/rt/pure/__release + local.get $17 + call $~lib/rt/pure/__release + local.get $18 + call $~lib/rt/pure/__release + local.get $19 + call $~lib/rt/pure/__release + local.get $20 + call $~lib/rt/pure/__release + local.get $21 + call $~lib/rt/pure/__release + local.get $22 + call $~lib/rt/pure/__release + local.get $23 + call $~lib/rt/pure/__release + local.get $24 + call $~lib/rt/pure/__release + local.get $25 + call $~lib/rt/pure/__release + local.get $26 + call $~lib/rt/pure/__release + local.get $27 + call $~lib/rt/pure/__release + local.get $28 + call $~lib/rt/pure/__release + local.get $29 + call $~lib/rt/pure/__release + local.get $30 + call $~lib/rt/pure/__release + local.get $31 + call $~lib/rt/pure/__release + local.get $32 + call $~lib/rt/pure/__release + local.get $33 + call $~lib/rt/pure/__release + local.get $34 + call $~lib/rt/pure/__release + local.get $35 + call $~lib/rt/pure/__release + local.get $36 + call $~lib/rt/pure/__release + local.get $37 + call $~lib/rt/pure/__release + local.get $38 + call $~lib/rt/pure/__release + local.get $39 + call $~lib/rt/pure/__release + local.get $40 + call $~lib/rt/pure/__release + local.get $41 + call $~lib/rt/pure/__release + local.get $42 + call $~lib/rt/pure/__release + local.get $43 + call $~lib/rt/pure/__release + local.get $44 + call $~lib/rt/pure/__release + local.get $45 + call $~lib/rt/pure/__release + local.get $46 + call $~lib/rt/pure/__release + local.get $47 + call $~lib/rt/pure/__release + local.get $48 + call $~lib/rt/pure/__release + local.get $49 + call $~lib/rt/pure/__release + local.get $50 + call $~lib/rt/pure/__release + local.get $51 + call $~lib/rt/pure/__release + local.get $52 + call $~lib/rt/pure/__release + local.get $53 + call $~lib/rt/pure/__release + local.get $54 + call $~lib/rt/pure/__release + local.get $55 + call $~lib/rt/pure/__release + local.get $56 + call $~lib/rt/pure/__release + local.get $57 + call $~lib/rt/pure/__release + local.get $58 + call $~lib/rt/pure/__release + local.get $59 + call $~lib/rt/pure/__release + local.get $60 + call $~lib/rt/pure/__release + local.get $61 + call $~lib/rt/pure/__release + local.get $62 + call $~lib/rt/pure/__release + local.get $63 + call $~lib/rt/pure/__release + local.get $64 + call $~lib/rt/pure/__release + local.get $65 + call $~lib/rt/pure/__release + local.get $66 + call $~lib/rt/pure/__release + local.get $67 + call $~lib/rt/pure/__release + local.get $68 + call $~lib/rt/pure/__release + local.get $69 + call $~lib/rt/pure/__release + local.get $70 + call $~lib/rt/pure/__release + local.get $71 + call $~lib/rt/pure/__release + local.get $72 + call $~lib/rt/pure/__release + local.get $73 + call $~lib/rt/pure/__release + local.get $74 + call $~lib/rt/pure/__release + local.get $75 + call $~lib/rt/pure/__release + local.get $76 + call $~lib/rt/pure/__release + local.get $77 + call $~lib/rt/pure/__release + local.get $78 + call $~lib/rt/pure/__release + local.get $79 + call $~lib/rt/pure/__release + local.get $80 + call $~lib/rt/pure/__release + local.get $81 + call $~lib/rt/pure/__release + local.get $82 + call $~lib/rt/pure/__release + local.get $83 + call $~lib/rt/pure/__release + local.get $84 + call $~lib/rt/pure/__release + local.get $85 + call $~lib/rt/pure/__release + local.get $86 + call $~lib/rt/pure/__release + local.get $87 + call $~lib/rt/pure/__release + local.get $88 + call $~lib/rt/pure/__release + local.get $89 + call $~lib/rt/pure/__release + local.get $90 + call $~lib/rt/pure/__release + local.get $91 + call $~lib/rt/pure/__release + local.get $92 + call $~lib/rt/pure/__release + local.get $93 + call $~lib/rt/pure/__release + local.get $94 + call $~lib/rt/pure/__release + local.get $95 + call $~lib/rt/pure/__release + local.get $96 + call $~lib/rt/pure/__release + local.get $97 + call $~lib/rt/pure/__release + local.get $98 + call $~lib/rt/pure/__release + local.get $99 + call $~lib/rt/pure/__release + local.get $100 + call $~lib/rt/pure/__release + local.get $101 + call $~lib/rt/pure/__release + local.get $102 + call $~lib/rt/pure/__release + local.get $103 + call $~lib/rt/pure/__release + local.get $104 + call $~lib/rt/pure/__release + local.get $105 + call $~lib/rt/pure/__release + local.get $106 + call $~lib/rt/pure/__release + local.get $107 + call $~lib/rt/pure/__release + local.get $108 + call $~lib/rt/pure/__release + local.get $109 + call $~lib/rt/pure/__release + local.get $110 + call $~lib/rt/pure/__release + local.get $111 + call $~lib/rt/pure/__release + local.get $112 + call $~lib/rt/pure/__release + local.get $113 + call $~lib/rt/pure/__release + local.get $114 + call $~lib/rt/pure/__release + local.get $115 + call $~lib/rt/pure/__release + local.get $116 + call $~lib/rt/pure/__release + local.get $117 + call $~lib/rt/pure/__release + local.get $118 + call $~lib/rt/pure/__release + local.get $119 + call $~lib/rt/pure/__release + local.get $120 + call $~lib/rt/pure/__release + local.get $121 + call $~lib/rt/pure/__release + local.get $122 + call $~lib/rt/pure/__release + local.get $123 + call $~lib/rt/pure/__release + local.get $124 + call $~lib/rt/pure/__release + local.get $125 + call $~lib/rt/pure/__release + local.get $126 + call $~lib/rt/pure/__release + local.get $127 + call $~lib/rt/pure/__release + local.get $128 + call $~lib/rt/pure/__release + local.get $129 + call $~lib/rt/pure/__release + local.get $130 + call $~lib/rt/pure/__release + local.get $131 + call $~lib/rt/pure/__release + local.get $132 + call $~lib/rt/pure/__release + local.get $133 + call $~lib/rt/pure/__release + local.get $134 + call $~lib/rt/pure/__release + local.get $135 + call $~lib/rt/pure/__release + local.get $136 + call $~lib/rt/pure/__release + local.get $137 + call $~lib/rt/pure/__release + local.get $138 + call $~lib/rt/pure/__release + local.get $139 + call $~lib/rt/pure/__release + local.get $140 + call $~lib/rt/pure/__release + local.get $141 + call $~lib/rt/pure/__release + local.get $142 + call $~lib/rt/pure/__release + local.get $143 + call $~lib/rt/pure/__release + local.get $144 + call $~lib/rt/pure/__release + local.get $145 + call $~lib/rt/pure/__release + local.get $146 + call $~lib/rt/pure/__release + local.get $147 + call $~lib/rt/pure/__release + local.get $148 + call $~lib/rt/pure/__release + local.get $149 + call $~lib/rt/pure/__release + local.get $150 + call $~lib/rt/pure/__release + local.get $151 + call $~lib/rt/pure/__release + local.get $152 + call $~lib/rt/pure/__release + local.get $153 + call $~lib/rt/pure/__release + local.get $154 + call $~lib/rt/pure/__release + local.get $155 + call $~lib/rt/pure/__release + local.get $156 + call $~lib/rt/pure/__release + local.get $157 + call $~lib/rt/pure/__release + local.get $158 + call $~lib/rt/pure/__release + local.get $159 + call $~lib/rt/pure/__release + local.get $160 + call $~lib/rt/pure/__release + local.get $161 + call $~lib/rt/pure/__release + local.get $162 + call $~lib/rt/pure/__release + local.get $163 + call $~lib/rt/pure/__release + local.get $164 + call $~lib/rt/pure/__release + local.get $165 + call $~lib/rt/pure/__release + local.get $166 + call $~lib/rt/pure/__release + local.get $167 + call $~lib/rt/pure/__release + local.get $168 + call $~lib/rt/pure/__release + local.get $169 + call $~lib/rt/pure/__release + local.get $170 + call $~lib/rt/pure/__release + local.get $171 + call $~lib/rt/pure/__release + local.get $172 + call $~lib/rt/pure/__release + local.get $173 + call $~lib/rt/pure/__release + local.get $174 + call $~lib/rt/pure/__release + local.get $175 + call $~lib/rt/pure/__release + local.get $176 + call $~lib/rt/pure/__release + local.get $177 + call $~lib/rt/pure/__release + local.get $178 + call $~lib/rt/pure/__release + local.get $179 + call $~lib/rt/pure/__release + local.get $180 + call $~lib/rt/pure/__release + local.get $181 + call $~lib/rt/pure/__release + local.get $182 + call $~lib/rt/pure/__release + local.get $183 + call $~lib/rt/pure/__release + local.get $184 + call $~lib/rt/pure/__release + local.get $185 + call $~lib/rt/pure/__release + local.get $186 + call $~lib/rt/pure/__release + local.get $187 + call $~lib/rt/pure/__release + local.get $188 + call $~lib/rt/pure/__release + local.get $189 + call $~lib/rt/pure/__release + local.get $190 + call $~lib/rt/pure/__release + ) + (func $std/string/getString (; 101 ;) (type $FUNCSIG$i) (result i32) + global.get $std/string/str + call $~lib/rt/pure/__retain + ) + (func $start (; 102 ;) (type $FUNCSIG$v) + global.get $~lib/started + if + return + else + i32.const 1 + global.set $~lib/started + end + call $start:std/string + ) + (func $~lib/array/Array#__visit_impl (; 103 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/rt/pure/__visit (; 104 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.lt_u + if + return + end + local.get $0 + i32.const 16 + i32.sub + local.set $2 + block $break|0 + block $case5|0 + block $case4|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $1 + local.set $3 + local.get $3 + i32.const 1 + i32.eq + br_if $case0|0 + local.get $3 + i32.const 2 + i32.eq + br_if $case1|0 + local.get $3 + i32.const 3 + i32.eq + br_if $case2|0 + local.get $3 + i32.const 4 + i32.eq + br_if $case3|0 + local.get $3 + i32.const 5 + i32.eq + br_if $case4|0 + br $case5|0 + end + local.get $2 + call $~lib/rt/pure/decrement + br $break|0 + end + local.get $2 + i32.load offset=4 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + i32.eqz + if + i32.const 0 + i32.const 136 + i32.const 75 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 1 + i32.sub + i32.store offset=4 + local.get $2 + call $~lib/rt/pure/markGray + br $break|0 + end + local.get $2 + call $~lib/rt/pure/scan + br $break|0 + end + local.get $2 + i32.load offset=4 + local.set $3 + local.get $3 + i32.const -268435456 + i32.and + local.get $3 + i32.const 1 + i32.add + i32.const -268435456 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 136 + i32.const 86 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $3 + i32.const 1 + i32.add + i32.store offset=4 + local.get $3 + i32.const 1879048192 + i32.and + i32.const 0 + i32.ne + if + local.get $2 + call $~lib/rt/pure/scanBlack + end + br $break|0 + end + local.get $2 + call $~lib/rt/pure/collectWhite + br $break|0 + end + i32.const 0 + i32.eqz + if + i32.const 0 + i32.const 136 + i32.const 97 + i32.const 24 + call $~lib/builtins/abort + unreachable + end + end + ) + (func $~lib/array/Array<~lib/string/String>#__visit_impl (; 105 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + i32.load offset=4 + local.set $2 + local.get $2 + local.get $0 + i32.load offset=12 + i32.const 2 + i32.shl + i32.add + local.set $3 + block $break|0 + loop $continue|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + if + local.get $4 + local.get $1 + call $~lib/rt/pure/__visit + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $continue|0 + end + unreachable + end + ) + (func $~lib/array/Array#__visit_impl (; 106 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 107 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 108 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 109 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/rt/__visit_members (; 110 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + block $block$4$break + block $switch$1$default + block $switch$1$case$10 + block $switch$1$case$9 + block $switch$1$case$8 + block $switch$1$case$7 + block $switch$1$case$6 + block $switch$1$case$5 + block $switch$1$case$4 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$6 $switch$1$case$7 $switch$1$case$8 $switch$1$case$9 $switch$1$case$10 $switch$1$default + end + return + end + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/string/String>#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + unreachable + end + local.get $0 + i32.load + local.tee $2 + if + local.get $2 + local.get $1 + call $~lib/rt/pure/__visit + end + return + ) + (func $null (; 111 ;) (type $FUNCSIG$v) + ) +) diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index a8f757da49..c49a7575c2 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -2107,7 +2107,7 @@ if i32.const 24 i32.const 72 - i32.const 14 + i32.const 22 i32.const 56 call $~lib/builtins/abort unreachable @@ -2744,7 +2744,7 @@ if i32.const 280 i32.const 432 - i32.const 679 + i32.const 655 i32.const 63 call $~lib/builtins/abort unreachable @@ -2768,7 +2768,7 @@ if i32.const 280 i32.const 432 - i32.const 668 + i32.const 644 i32.const 63 call $~lib/builtins/abort unreachable @@ -2784,8 +2784,6 @@ (func $~lib/typedarray/Int32Array#subarray (; 50 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) local.get $0 call $~lib/rt/pure/__retain local.tee $4 @@ -2834,35 +2832,16 @@ i32.lt_s select end - local.tee $1 - local.get $0 - local.get $1 - local.get $0 - i32.gt_s - select - local.set $3 + local.set $1 i32.const 12 i32.const 8 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $4 - i32.load local.tee $2 - local.get $1 + local.get $4 i32.load - local.tee $6 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store - local.get $1 + local.get $2 local.get $4 i32.load offset=4 local.get $0 @@ -2870,16 +2849,22 @@ i32.shl i32.add i32.store offset=4 + local.get $2 local.get $1 - local.get $3 + local.get $0 + local.get $1 + local.get $0 + i32.gt_s + select local.get $0 i32.sub i32.const 2 i32.shl i32.store offset=8 + local.get $2 + call $~lib/rt/pure/__retain local.get $4 call $~lib/rt/pure/__release - local.get $1 ) (func $~lib/typedarray/Float64Array#__set (; 51 ;) (type $FUNCSIG$viid) (param $0 i32) (param $1 i32) (param $2 f64) local.get $1 @@ -2891,7 +2876,7 @@ if i32.const 280 i32.const 432 - i32.const 1319 + i32.const 1275 i32.const 63 call $~lib/builtins/abort unreachable @@ -2908,8 +2893,6 @@ (func $~lib/typedarray/Float64Array#subarray (; 52 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) local.get $0 call $~lib/rt/pure/__retain local.tee $4 @@ -2958,35 +2941,16 @@ i32.lt_s select end - local.tee $1 - local.get $0 - local.get $1 - local.get $0 - i32.gt_s - select - local.set $3 + local.set $1 i32.const 12 i32.const 13 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $4 - i32.load local.tee $2 - local.get $1 + local.get $4 i32.load - local.tee $6 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store - local.get $1 + local.get $2 local.get $4 i32.load offset=4 local.get $0 @@ -2994,16 +2958,22 @@ i32.shl i32.add i32.store offset=4 + local.get $2 local.get $1 - local.get $3 + local.get $0 + local.get $1 + local.get $0 + i32.gt_s + select local.get $0 i32.sub i32.const 3 i32.shl i32.store offset=8 + local.get $2 + call $~lib/rt/pure/__retain local.get $4 call $~lib/rt/pure/__release - local.get $1 ) (func $~lib/util/sort/insertionSort (; 53 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) @@ -3455,7 +3425,7 @@ if i32.const 280 i32.const 432 - i32.const 1308 + i32.const 1264 i32.const 63 call $~lib/builtins/abort unreachable @@ -3476,7 +3446,7 @@ if i32.const 280 i32.const 432 - i32.const 295 + i32.const 283 i32.const 44 call $~lib/builtins/abort unreachable @@ -3508,7 +3478,7 @@ if i32.const 280 i32.const 432 - i32.const 284 + i32.const 272 i32.const 44 call $~lib/builtins/abort unreachable @@ -3527,7 +3497,7 @@ if i32.const 280 i32.const 432 - i32.const 39 + i32.const 35 i32.const 44 call $~lib/builtins/abort unreachable @@ -3649,7 +3619,7 @@ if i32.const 280 i32.const 432 - i32.const 28 + i32.const 24 i32.const 44 call $~lib/builtins/abort unreachable @@ -3668,7 +3638,7 @@ if i32.const 280 i32.const 512 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -3734,8 +3704,6 @@ (func $~lib/typedarray/Int8Array#subarray (; 66 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) - (local $5 i32) - (local $6 i32) local.get $0 call $~lib/rt/pure/__retain local.tee $4 @@ -3784,48 +3752,35 @@ i32.lt_s select end - local.tee $1 - local.get $0 - local.get $1 - local.get $0 - i32.gt_s - select - local.set $3 + local.set $1 i32.const 12 i32.const 3 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $1 - i32.load - local.tee $6 + local.tee $2 local.get $4 i32.load - local.tee $2 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store - local.get $1 + local.get $2 local.get $4 i32.load offset=4 local.get $0 i32.add i32.store offset=4 + local.get $2 local.get $1 - local.get $3 + local.get $0 + local.get $1 + local.get $0 + i32.gt_s + select local.get $0 i32.sub i32.store offset=8 + local.get $2 + call $~lib/rt/pure/__retain local.get $4 call $~lib/rt/pure/__release - local.get $1 ) (func $~lib/typedarray/Int32Array#fill (; 67 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (local $4 i32) @@ -3915,7 +3870,7 @@ if i32.const 280 i32.const 512 - i32.const 96 + i32.const 92 i32.const 41 call $~lib/builtins/abort unreachable @@ -4265,7 +4220,7 @@ if i32.const 280 i32.const 432 - i32.const 167 + i32.const 159 i32.const 44 call $~lib/builtins/abort unreachable @@ -4408,7 +4363,7 @@ if i32.const 280 i32.const 432 - i32.const 423 + i32.const 407 i32.const 63 call $~lib/builtins/abort unreachable @@ -4514,7 +4469,7 @@ if i32.const 280 i32.const 432 - i32.const 551 + i32.const 531 i32.const 63 call $~lib/builtins/abort unreachable @@ -4702,7 +4657,7 @@ if i32.const 280 i32.const 432 - i32.const 807 + i32.const 779 i32.const 63 call $~lib/builtins/abort unreachable @@ -4763,7 +4718,7 @@ if i32.const 280 i32.const 432 - i32.const 935 + i32.const 903 i32.const 63 call $~lib/builtins/abort unreachable @@ -4879,7 +4834,7 @@ if i32.const 280 i32.const 432 - i32.const 1063 + i32.const 1027 i32.const 63 call $~lib/builtins/abort unreachable @@ -4940,7 +4895,7 @@ if i32.const 280 i32.const 432 - i32.const 1191 + i32.const 1151 i32.const 63 call $~lib/builtins/abort unreachable @@ -5905,76 +5860,61 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $2 + local.tee $3 i32.load offset=8 - local.set $3 - local.get $2 + local.set $0 + local.get $3 i32.load offset=4 local.set $5 i32.const 12 i32.const 3 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $3 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.tee $4 - local.set $0 - local.get $1 - i32.load - local.tee $7 - local.get $4 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $7 - call $~lib/rt/pure/__release - end + local.set $2 local.get $0 - i32.store - local.get $1 - local.get $4 - i32.store offset=4 - local.get $1 - local.get $3 - i32.store offset=8 i32.const 0 - local.set $0 + call $~lib/rt/tlsf/__alloc + local.set $4 loop $loop|0 + local.get $1 local.get $0 - local.get $3 i32.lt_s if i32.const 3 global.set $~lib/argc - local.get $0 + local.get $1 local.get $4 i32.add - local.get $0 + local.get $1 local.get $5 i32.add i32.load8_s - local.get $0 - local.get $2 + local.get $1 + local.get $3 call $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8>~anonymous|0 i32.store8 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $loop|0 end end local.get $2 + local.get $4 + call $~lib/rt/pure/__retain + i32.store + local.get $2 + local.get $4 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + local.get $2 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $1 ) (func $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8> (; 123 ;) (type $FUNCSIG$v) (local $0 i32) @@ -6050,76 +5990,61 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $2 + local.tee $3 i32.load offset=8 - local.set $3 - local.get $2 + local.set $0 + local.get $3 i32.load offset=4 local.set $5 i32.const 12 i32.const 4 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $3 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.tee $4 - local.set $0 - local.get $1 - i32.load - local.tee $7 - local.get $4 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $7 - call $~lib/rt/pure/__release - end + local.set $2 local.get $0 - i32.store - local.get $1 - local.get $4 - i32.store offset=4 - local.get $1 - local.get $3 - i32.store offset=8 i32.const 0 - local.set $0 + call $~lib/rt/tlsf/__alloc + local.set $4 loop $loop|0 + local.get $1 local.get $0 - local.get $3 i32.lt_s if i32.const 3 global.set $~lib/argc - local.get $0 + local.get $1 local.get $4 i32.add - local.get $0 + local.get $1 local.get $5 i32.add i32.load8_u - local.get $0 - local.get $2 + local.get $1 + local.get $3 call $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8>~anonymous|0 i32.store8 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $loop|0 end end local.get $2 + local.get $4 + call $~lib/rt/pure/__retain + i32.store + local.get $2 + local.get $4 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + local.get $2 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $1 ) (func $~lib/typedarray/Uint8Array#__get (; 125 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 @@ -6129,7 +6054,7 @@ if i32.const 280 i32.const 432 - i32.const 156 + i32.const 148 i32.const 44 call $~lib/builtins/abort unreachable @@ -6214,76 +6139,61 @@ (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) - (local $7 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $2 + local.tee $3 i32.load offset=8 - local.set $3 - local.get $2 + local.set $0 + local.get $3 i32.load offset=4 local.set $5 i32.const 12 i32.const 5 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $3 - i32.const 0 - call $~lib/rt/tlsf/__alloc - local.tee $4 - local.set $0 - local.get $1 - i32.load - local.tee $7 - local.get $4 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $7 - call $~lib/rt/pure/__release - end + local.set $2 local.get $0 - i32.store - local.get $1 - local.get $4 - i32.store offset=4 - local.get $1 - local.get $3 - i32.store offset=8 i32.const 0 - local.set $0 + call $~lib/rt/tlsf/__alloc + local.set $4 loop $loop|0 + local.get $1 local.get $0 - local.get $3 i32.lt_s if i32.const 3 global.set $~lib/argc - local.get $0 + local.get $1 local.get $4 i32.add - local.get $0 + local.get $1 local.get $5 i32.add i32.load8_u - local.get $0 - local.get $2 + local.get $1 + local.get $3 call $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8>~anonymous|0 i32.store8 - local.get $0 + local.get $1 i32.const 1 i32.add - local.set $0 + local.set $1 br $loop|0 end end local.get $2 + local.get $4 + call $~lib/rt/pure/__retain + i32.store + local.get $2 + local.get $4 + i32.store offset=4 + local.get $2 + local.get $0 + i32.store offset=8 + local.get $2 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $1 ) (func $std/typedarray/testArrayMap<~lib/typedarray/Uint8ClampedArray,u8> (; 128 ;) (type $FUNCSIG$v) (local $0 i32) @@ -6366,48 +6276,26 @@ call $~lib/rt/pure/__retain local.tee $2 call $~lib/typedarray/Int16Array#get:length - local.set $6 + local.set $4 local.get $2 i32.load offset=4 - local.set $7 + local.set $5 i32.const 12 i32.const 6 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $6 + local.set $1 + local.get $4 i32.const 1 i32.shl - local.tee $4 + local.tee $6 i32.const 0 call $~lib/rt/tlsf/__alloc - local.tee $5 - local.set $0 - local.get $1 - i32.load - local.tee $8 - local.get $5 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $0 - i32.store - local.get $1 - local.get $5 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 + local.set $3 i32.const 0 local.set $0 loop $loop|0 local.get $0 - local.get $6 + local.get $4 i32.lt_s if i32.const 3 @@ -6415,18 +6303,18 @@ local.get $0 i32.const 1 i32.shl - local.tee $3 - local.get $7 + local.tee $7 + local.get $5 i32.add i32.load16_s local.get $0 local.get $2 call $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8>~anonymous|0 - local.set $4 + local.set $8 local.get $3 - local.get $5 + local.get $7 i32.add - local.get $4 + local.get $8 i32.store16 local.get $0 i32.const 1 @@ -6435,9 +6323,20 @@ br $loop|0 end end + local.get $1 + local.get $3 + call $~lib/rt/pure/__retain + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + local.get $6 + i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release - local.get $1 ) (func $~lib/typedarray/Int16Array#__get (; 130 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 @@ -6449,7 +6348,7 @@ if i32.const 280 i32.const 432 - i32.const 412 + i32.const 396 i32.const 63 call $~lib/builtins/abort unreachable @@ -6543,48 +6442,26 @@ call $~lib/rt/pure/__retain local.tee $2 call $~lib/typedarray/Int16Array#get:length - local.set $6 + local.set $4 local.get $2 i32.load offset=4 - local.set $7 + local.set $5 i32.const 12 i32.const 7 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $6 + local.set $1 + local.get $4 i32.const 1 i32.shl - local.tee $4 + local.tee $6 i32.const 0 call $~lib/rt/tlsf/__alloc - local.tee $5 - local.set $0 - local.get $1 - i32.load - local.tee $8 - local.get $5 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $0 - i32.store - local.get $1 - local.get $5 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 + local.set $3 i32.const 0 local.set $0 loop $loop|0 local.get $0 - local.get $6 + local.get $4 i32.lt_s if i32.const 3 @@ -6592,18 +6469,18 @@ local.get $0 i32.const 1 i32.shl - local.tee $3 - local.get $7 + local.tee $7 + local.get $5 i32.add i32.load16_u local.get $0 local.get $2 call $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8>~anonymous|0 - local.set $4 + local.set $8 local.get $3 - local.get $5 + local.get $7 i32.add - local.get $4 + local.get $8 i32.store16 local.get $0 i32.const 1 @@ -6612,9 +6489,20 @@ br $loop|0 end end + local.get $1 + local.get $3 + call $~lib/rt/pure/__retain + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + local.get $6 + i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release - local.get $1 ) (func $~lib/typedarray/Uint16Array#__get (; 133 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 @@ -6626,7 +6514,7 @@ if i32.const 280 i32.const 432 - i32.const 540 + i32.const 520 i32.const 63 call $~lib/builtins/abort unreachable @@ -6720,48 +6608,26 @@ call $~lib/rt/pure/__retain local.tee $2 call $~lib/typedarray/Int32Array#get:length - local.set $6 + local.set $4 local.get $2 i32.load offset=4 - local.set $7 + local.set $5 i32.const 12 i32.const 8 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $6 + local.set $1 + local.get $4 i32.const 2 i32.shl - local.tee $4 + local.tee $6 i32.const 0 call $~lib/rt/tlsf/__alloc - local.tee $5 - local.set $0 - local.get $1 - i32.load - local.tee $8 - local.get $5 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $0 - i32.store - local.get $1 - local.get $5 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 + local.set $3 i32.const 0 local.set $0 loop $loop|0 local.get $0 - local.get $6 + local.get $4 i32.lt_s if i32.const 3 @@ -6769,18 +6635,18 @@ local.get $0 i32.const 2 i32.shl - local.tee $3 - local.get $7 + local.tee $7 + local.get $5 i32.add i32.load local.get $0 local.get $2 call $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8>~anonymous|0 - local.set $4 + local.set $8 local.get $3 - local.get $5 + local.get $7 i32.add - local.get $4 + local.get $8 i32.store local.get $0 i32.const 1 @@ -6789,9 +6655,20 @@ br $loop|0 end end + local.get $1 + local.get $3 + call $~lib/rt/pure/__retain + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + local.get $6 + i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release - local.get $1 ) (func $std/typedarray/testArrayMap<~lib/typedarray/Int32Array,i32> (; 136 ;) (type $FUNCSIG$v) (local $0 i32) @@ -6874,48 +6751,26 @@ call $~lib/rt/pure/__retain local.tee $2 call $~lib/typedarray/Int32Array#get:length - local.set $6 + local.set $4 local.get $2 i32.load offset=4 - local.set $7 + local.set $5 i32.const 12 i32.const 9 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $6 + local.set $1 + local.get $4 i32.const 2 i32.shl - local.tee $4 + local.tee $6 i32.const 0 call $~lib/rt/tlsf/__alloc - local.tee $5 + local.set $3 + i32.const 0 local.set $0 - local.get $1 - i32.load - local.tee $8 - local.get $5 - i32.ne - if + loop $loop|0 local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $0 - i32.store - local.get $1 - local.get $5 - i32.store offset=4 - local.get $1 - local.get $4 - i32.store offset=8 - i32.const 0 - local.set $0 - loop $loop|0 - local.get $0 - local.get $6 + local.get $4 i32.lt_s if i32.const 3 @@ -6923,18 +6778,18 @@ local.get $0 i32.const 2 i32.shl - local.tee $3 - local.get $7 + local.tee $7 + local.get $5 i32.add i32.load local.get $0 local.get $2 call $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8>~anonymous|0 - local.set $4 + local.set $8 local.get $3 - local.get $5 + local.get $7 i32.add - local.get $4 + local.get $8 i32.store local.get $0 i32.const 1 @@ -6943,9 +6798,20 @@ br $loop|0 end end + local.get $1 + local.get $3 + call $~lib/rt/pure/__retain + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + local.get $6 + i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release - local.get $1 ) (func $~lib/typedarray/Uint32Array#__get (; 138 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $1 @@ -6957,7 +6823,7 @@ if i32.const 280 i32.const 432 - i32.const 796 + i32.const 768 i32.const 63 call $~lib/builtins/abort unreachable @@ -7056,54 +6922,31 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 i64) + (local $8 i64) local.get $0 call $~lib/rt/pure/__retain local.tee $2 call $~lib/typedarray/Int64Array#get:length - local.set $5 + local.set $4 local.get $2 i32.load offset=4 - local.set $6 + local.set $5 i32.const 12 i32.const 10 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $5 + local.set $1 + local.get $4 i32.const 3 i32.shl - local.tee $7 + local.tee $6 i32.const 0 call $~lib/rt/tlsf/__alloc - local.tee $4 - local.set $0 - local.get $1 - i32.load - local.tee $8 - local.get $4 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $0 - i32.store - local.get $1 - local.get $4 - i32.store offset=4 - local.get $1 - local.get $7 - i32.store offset=8 + local.set $3 i32.const 0 local.set $0 loop $loop|0 local.get $0 - local.get $5 + local.get $4 i32.lt_s if i32.const 3 @@ -7111,18 +6954,18 @@ local.get $0 i32.const 3 i32.shl - local.tee $3 - local.get $6 + local.tee $7 + local.get $5 i32.add i64.load local.get $0 local.get $2 call $std/typedarray/testArrayMap<~lib/typedarray/Int64Array,i64>~anonymous|0 - local.set $9 + local.set $8 local.get $3 - local.get $4 + local.get $7 i32.add - local.get $9 + local.get $8 i64.store local.get $0 i32.const 1 @@ -7131,9 +6974,20 @@ br $loop|0 end end + local.get $1 + local.get $3 + call $~lib/rt/pure/__retain + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + local.get $6 + i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release - local.get $1 ) (func $~lib/typedarray/Int64Array#__get (; 142 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $1 @@ -7145,7 +6999,7 @@ if i32.const 280 i32.const 432 - i32.const 924 + i32.const 892 i32.const 63 call $~lib/builtins/abort unreachable @@ -7234,54 +7088,31 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 i64) + (local $8 i64) local.get $0 call $~lib/rt/pure/__retain local.tee $2 call $~lib/typedarray/Int64Array#get:length - local.set $5 + local.set $4 local.get $2 i32.load offset=4 - local.set $6 + local.set $5 i32.const 12 i32.const 11 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $5 + local.set $1 + local.get $4 i32.const 3 i32.shl - local.tee $7 + local.tee $6 i32.const 0 call $~lib/rt/tlsf/__alloc - local.tee $4 - local.set $0 - local.get $1 - i32.load - local.tee $8 - local.get $4 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $0 - i32.store - local.get $1 - local.get $4 - i32.store offset=4 - local.get $1 - local.get $7 - i32.store offset=8 + local.set $3 i32.const 0 local.set $0 loop $loop|0 local.get $0 - local.get $5 + local.get $4 i32.lt_s if i32.const 3 @@ -7289,18 +7120,18 @@ local.get $0 i32.const 3 i32.shl - local.tee $3 - local.get $6 + local.tee $7 + local.get $5 i32.add i64.load local.get $0 local.get $2 call $std/typedarray/testArrayMap<~lib/typedarray/Int64Array,i64>~anonymous|0 - local.set $9 + local.set $8 local.get $3 - local.get $4 + local.get $7 i32.add - local.get $9 + local.get $8 i64.store local.get $0 i32.const 1 @@ -7309,9 +7140,20 @@ br $loop|0 end end + local.get $1 + local.get $3 + call $~lib/rt/pure/__retain + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + local.get $6 + i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release - local.get $1 ) (func $~lib/typedarray/Uint64Array#__get (; 145 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $1 @@ -7323,7 +7165,7 @@ if i32.const 280 i32.const 432 - i32.const 1052 + i32.const 1016 i32.const 63 call $~lib/builtins/abort unreachable @@ -7422,54 +7264,31 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 f32) + (local $8 f32) local.get $0 call $~lib/rt/pure/__retain local.tee $2 call $~lib/typedarray/Int32Array#get:length - local.set $5 + local.set $4 local.get $2 i32.load offset=4 - local.set $6 + local.set $5 i32.const 12 i32.const 12 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $5 + local.set $1 + local.get $4 i32.const 2 i32.shl - local.tee $7 + local.tee $6 i32.const 0 call $~lib/rt/tlsf/__alloc - local.tee $4 - local.set $0 - local.get $1 - i32.load - local.tee $8 - local.get $4 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $0 - i32.store - local.get $1 - local.get $4 - i32.store offset=4 - local.get $1 - local.get $7 - i32.store offset=8 + local.set $3 i32.const 0 local.set $0 loop $loop|0 local.get $0 - local.get $5 + local.get $4 i32.lt_s if i32.const 3 @@ -7477,18 +7296,18 @@ local.get $0 i32.const 2 i32.shl - local.tee $3 - local.get $6 + local.tee $7 + local.get $5 i32.add f32.load local.get $0 local.get $2 call $std/typedarray/testArrayMap<~lib/typedarray/Float32Array,f32>~anonymous|0 - local.set $9 + local.set $8 local.get $3 - local.get $4 + local.get $7 i32.add - local.get $9 + local.get $8 f32.store local.get $0 i32.const 1 @@ -7497,9 +7316,20 @@ br $loop|0 end end + local.get $1 + local.get $3 + call $~lib/rt/pure/__retain + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + local.get $6 + i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release - local.get $1 ) (func $~lib/typedarray/Float32Array#__get (; 149 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) local.get $1 @@ -7511,7 +7341,7 @@ if i32.const 280 i32.const 432 - i32.const 1180 + i32.const 1140 i32.const 63 call $~lib/builtins/abort unreachable @@ -7610,54 +7440,31 @@ (local $5 i32) (local $6 i32) (local $7 i32) - (local $8 i32) - (local $9 f64) + (local $8 f64) local.get $0 call $~lib/rt/pure/__retain local.tee $2 call $~lib/typedarray/Int64Array#get:length - local.set $5 + local.set $4 local.get $2 i32.load offset=4 - local.set $6 + local.set $5 i32.const 12 i32.const 13 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $5 + local.set $1 + local.get $4 i32.const 3 i32.shl - local.tee $7 + local.tee $6 i32.const 0 call $~lib/rt/tlsf/__alloc - local.tee $4 - local.set $0 - local.get $1 - i32.load - local.tee $8 - local.get $4 - i32.ne - if - local.get $0 - call $~lib/rt/pure/__retain - drop - local.get $8 - call $~lib/rt/pure/__release - end - local.get $0 - i32.store - local.get $1 - local.get $4 - i32.store offset=4 - local.get $1 - local.get $7 - i32.store offset=8 + local.set $3 i32.const 0 local.set $0 loop $loop|0 local.get $0 - local.get $5 + local.get $4 i32.lt_s if i32.const 3 @@ -7665,18 +7472,18 @@ local.get $0 i32.const 3 i32.shl - local.tee $3 - local.get $6 + local.tee $7 + local.get $5 i32.add f64.load local.get $0 local.get $2 call $std/typedarray/testArrayMap<~lib/typedarray/Float64Array,f64>~anonymous|0 - local.set $9 + local.set $8 local.get $3 - local.get $4 + local.get $7 i32.add - local.get $9 + local.get $8 f64.store local.get $0 i32.const 1 @@ -7685,9 +7492,20 @@ br $loop|0 end end - local.get $2 - call $~lib/rt/pure/__release local.get $1 + local.get $3 + call $~lib/rt/pure/__retain + i32.store + local.get $1 + local.get $3 + i32.store offset=4 + local.get $1 + local.get $6 + i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__retain + local.get $2 + call $~lib/rt/pure/__release ) (func $std/typedarray/testArrayMap<~lib/typedarray/Float64Array,f64> (; 153 ;) (type $FUNCSIG$v) (local $0 i32) @@ -7940,87 +7758,74 @@ (local $8 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $5 + local.tee $3 i32.load offset=8 - local.set $1 + local.set $5 i32.const 12 i32.const 3 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $2 - local.get $1 + local.set $1 + local.get $5 i32.const 0 call $~lib/rt/tlsf/__alloc - local.set $7 - local.get $5 + local.set $6 + local.get $3 i32.load offset=4 - local.set $3 + local.set $8 i32.const 0 local.set $0 loop $loop|0 - local.get $4 - local.get $1 + local.get $2 + local.get $5 i32.lt_s if - local.get $3 - local.get $4 + local.get $2 + local.get $8 i32.add i32.load8_s - local.set $8 + local.set $7 i32.const 3 global.set $~lib/argc - local.get $8 - local.get $4 - local.get $5 + local.get $7 + local.get $2 + local.get $3 call $std/typedarray/testArrayFilter<~lib/typedarray/Int8Array,i8>~anonymous|0 if local.get $0 - local.tee $6 + local.tee $4 i32.const 1 i32.add local.set $0 + local.get $4 local.get $6 - local.get $7 i32.add - local.get $8 + local.get $7 i32.store8 end - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $loop|0 end end - local.get $7 + local.get $1 + local.get $6 local.get $0 call $~lib/rt/tlsf/__realloc - local.tee $3 - local.set $1 - local.get $2 - i32.load - local.tee $6 - local.get $3 - i32.ne - if - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $2 - local.get $1 + local.tee $4 + call $~lib/rt/pure/__retain i32.store - local.get $2 - local.get $3 - i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 - local.get $5 + local.get $1 + local.get $4 + i32.store offset=4 + local.get $1 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Int8Array,i8> (; 158 ;) (type $FUNCSIG$v) (local $0 i32) @@ -8143,87 +7948,74 @@ (local $8 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $5 + local.tee $3 i32.load offset=8 - local.set $1 + local.set $5 i32.const 12 i32.const 4 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $2 - local.get $1 + local.set $1 + local.get $5 i32.const 0 call $~lib/rt/tlsf/__alloc - local.set $7 - local.get $5 + local.set $6 + local.get $3 i32.load offset=4 - local.set $3 + local.set $8 i32.const 0 local.set $0 loop $loop|0 - local.get $4 - local.get $1 + local.get $2 + local.get $5 i32.lt_s if - local.get $3 - local.get $4 + local.get $2 + local.get $8 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~lib/argc - local.get $8 - local.get $4 - local.get $5 + local.get $7 + local.get $2 + local.get $3 call $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8>~anonymous|0 if local.get $0 - local.tee $6 + local.tee $4 i32.const 1 i32.add local.set $0 + local.get $4 local.get $6 - local.get $7 i32.add - local.get $8 + local.get $7 i32.store8 end - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $loop|0 end end - local.get $7 + local.get $1 + local.get $6 local.get $0 call $~lib/rt/tlsf/__realloc - local.tee $3 - local.set $1 - local.get $2 - i32.load - local.tee $6 - local.get $3 - i32.ne - if - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $2 - local.get $1 + local.tee $4 + call $~lib/rt/pure/__retain i32.store - local.get $2 - local.get $3 - i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 - local.get $5 + local.get $1 + local.get $4 + i32.store offset=4 + local.get $1 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8> (; 161 ;) (type $FUNCSIG$v) (local $0 i32) @@ -8334,87 +8126,74 @@ (local $8 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $5 + local.tee $3 i32.load offset=8 - local.set $1 + local.set $5 i32.const 12 i32.const 5 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $2 - local.get $1 + local.set $1 + local.get $5 i32.const 0 call $~lib/rt/tlsf/__alloc - local.set $7 - local.get $5 + local.set $6 + local.get $3 i32.load offset=4 - local.set $3 + local.set $8 i32.const 0 local.set $0 loop $loop|0 - local.get $4 - local.get $1 + local.get $2 + local.get $5 i32.lt_s if - local.get $3 - local.get $4 + local.get $2 + local.get $8 i32.add i32.load8_u - local.set $8 + local.set $7 i32.const 3 global.set $~lib/argc - local.get $8 - local.get $4 - local.get $5 + local.get $7 + local.get $2 + local.get $3 call $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8>~anonymous|0 if local.get $0 - local.tee $6 + local.tee $4 i32.const 1 i32.add local.set $0 + local.get $4 local.get $6 - local.get $7 i32.add - local.get $8 + local.get $7 i32.store8 end - local.get $4 + local.get $2 i32.const 1 i32.add - local.set $4 + local.set $2 br $loop|0 end end - local.get $7 + local.get $1 + local.get $6 local.get $0 call $~lib/rt/tlsf/__realloc - local.tee $3 - local.set $1 - local.get $2 - i32.load - local.tee $6 - local.get $3 - i32.ne - if - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $2 - local.get $1 + local.tee $4 + call $~lib/rt/pure/__retain i32.store - local.get $2 - local.get $3 - i32.store offset=4 - local.get $2 + local.get $1 local.get $0 i32.store offset=8 - local.get $5 + local.get $1 + local.get $4 + i32.store offset=4 + local.get $1 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8ClampedArray,u8> (; 163 ;) (type $FUNCSIG$v) (local $0 i32) @@ -8539,31 +8318,30 @@ (local $8 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $5 + local.tee $3 call $~lib/typedarray/Int16Array#get:length - local.set $3 + local.set $5 i32.const 12 i32.const 6 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $2 - local.get $3 + local.set $1 + local.get $5 i32.const 1 i32.shl i32.const 0 call $~lib/rt/tlsf/__alloc local.set $6 - local.get $5 + local.get $3 i32.load offset=4 local.set $8 i32.const 0 local.set $0 loop $loop|0 - local.get $1 - local.get $3 + local.get $2 + local.get $5 i32.lt_s if - local.get $1 + local.get $2 i32.const 1 i32.shl local.get $8 @@ -8573,9 +8351,9 @@ i32.const 3 global.set $~lib/argc local.get $7 - local.get $1 - local.get $5 - call $std/typedarray/testArrayFilter<~lib/typedarray/Int16Array,i16>~anonymous|0 + local.get $2 + local.get $3 + call $std/typedarray/testArrayFilter<~lib/typedarray/Int16Array,i16>~anonymous|0 if local.get $0 local.tee $4 @@ -8590,45 +8368,33 @@ local.get $7 i32.store16 end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $loop|0 end end + local.get $1 local.get $6 local.get $0 i32.const 1 i32.shl - local.tee $1 - call $~lib/rt/tlsf/__realloc local.tee $0 - local.set $4 - local.get $2 - i32.load - local.tee $3 - local.get $0 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/rt/pure/__release - end - local.get $2 - local.get $4 + call $~lib/rt/tlsf/__realloc + local.tee $4 + call $~lib/rt/pure/__retain i32.store - local.get $2 + local.get $1 local.get $0 + i32.store offset=8 + local.get $1 + local.get $4 i32.store offset=4 - local.get $2 local.get $1 - i32.store offset=8 - local.get $5 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Int16Array,i16> (; 166 ;) (type $FUNCSIG$v) (local $0 i32) @@ -8751,31 +8517,30 @@ (local $8 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $5 + local.tee $3 call $~lib/typedarray/Int16Array#get:length - local.set $3 + local.set $5 i32.const 12 i32.const 7 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $2 - local.get $3 + local.set $1 + local.get $5 i32.const 1 i32.shl i32.const 0 call $~lib/rt/tlsf/__alloc local.set $6 - local.get $5 + local.get $3 i32.load offset=4 local.set $8 i32.const 0 local.set $0 loop $loop|0 - local.get $1 - local.get $3 + local.get $2 + local.get $5 i32.lt_s if - local.get $1 + local.get $2 i32.const 1 i32.shl local.get $8 @@ -8785,8 +8550,8 @@ i32.const 3 global.set $~lib/argc local.get $7 - local.get $1 - local.get $5 + local.get $2 + local.get $3 call $std/typedarray/testArrayFilter<~lib/typedarray/Uint16Array,u16>~anonymous|0 if local.get $0 @@ -8802,45 +8567,33 @@ local.get $7 i32.store16 end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $loop|0 end end + local.get $1 local.get $6 local.get $0 i32.const 1 i32.shl - local.tee $1 - call $~lib/rt/tlsf/__realloc local.tee $0 - local.set $4 - local.get $2 - i32.load - local.tee $3 - local.get $0 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/rt/pure/__release - end - local.get $2 - local.get $4 + call $~lib/rt/tlsf/__realloc + local.tee $4 + call $~lib/rt/pure/__retain i32.store - local.get $2 + local.get $1 local.get $0 + i32.store offset=8 + local.get $1 + local.get $4 i32.store offset=4 - local.get $2 local.get $1 - i32.store offset=8 - local.get $5 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint16Array,u16> (; 169 ;) (type $FUNCSIG$v) (local $0 i32) @@ -8961,31 +8714,30 @@ (local $8 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $5 + local.tee $3 call $~lib/typedarray/Int32Array#get:length - local.set $3 + local.set $5 i32.const 12 i32.const 8 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $2 - local.get $3 + local.set $1 + local.get $5 i32.const 2 i32.shl i32.const 0 call $~lib/rt/tlsf/__alloc local.set $6 - local.get $5 + local.get $3 i32.load offset=4 local.set $8 i32.const 0 local.set $0 loop $loop|0 - local.get $1 - local.get $3 + local.get $2 + local.get $5 i32.lt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl local.get $8 @@ -8995,8 +8747,8 @@ i32.const 3 global.set $~lib/argc local.get $7 - local.get $1 - local.get $5 + local.get $2 + local.get $3 call $std/typedarray/testArrayFilter<~lib/typedarray/Int32Array,i32>~anonymous|0 if local.get $0 @@ -9012,45 +8764,33 @@ local.get $7 i32.store end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $loop|0 end end + local.get $1 local.get $6 local.get $0 i32.const 2 i32.shl - local.tee $1 - call $~lib/rt/tlsf/__realloc local.tee $0 - local.set $4 - local.get $2 - i32.load - local.tee $3 - local.get $0 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/rt/pure/__release - end - local.get $2 - local.get $4 + call $~lib/rt/tlsf/__realloc + local.tee $4 + call $~lib/rt/pure/__retain i32.store - local.get $2 + local.get $1 local.get $0 + i32.store offset=8 + local.get $1 + local.get $4 i32.store offset=4 - local.get $2 local.get $1 - i32.store offset=8 - local.get $5 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Int32Array,i32> (; 172 ;) (type $FUNCSIG$v) (local $0 i32) @@ -9171,31 +8911,30 @@ (local $8 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $5 + local.tee $3 call $~lib/typedarray/Int32Array#get:length - local.set $3 + local.set $5 i32.const 12 i32.const 9 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $2 - local.get $3 + local.set $1 + local.get $5 i32.const 2 i32.shl i32.const 0 call $~lib/rt/tlsf/__alloc local.set $6 - local.get $5 + local.get $3 i32.load offset=4 local.set $8 i32.const 0 local.set $0 loop $loop|0 - local.get $1 - local.get $3 + local.get $2 + local.get $5 i32.lt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl local.get $8 @@ -9205,8 +8944,8 @@ i32.const 3 global.set $~lib/argc local.get $7 - local.get $1 - local.get $5 + local.get $2 + local.get $3 call $std/typedarray/testArrayFilter<~lib/typedarray/Uint32Array,u32>~anonymous|0 if local.get $0 @@ -9222,45 +8961,33 @@ local.get $7 i32.store end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $loop|0 end end + local.get $1 local.get $6 local.get $0 i32.const 2 i32.shl - local.tee $1 - call $~lib/rt/tlsf/__realloc local.tee $0 - local.set $4 - local.get $2 - i32.load - local.tee $3 - local.get $0 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/rt/pure/__release - end - local.get $2 - local.get $4 + call $~lib/rt/tlsf/__realloc + local.tee $4 + call $~lib/rt/pure/__retain i32.store - local.get $2 + local.get $1 local.get $0 + i32.store offset=8 + local.get $1 + local.get $4 i32.store offset=4 - local.get $2 local.get $1 - i32.store offset=8 - local.get $5 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint32Array,u32> (; 175 ;) (type $FUNCSIG$v) (local $0 i32) @@ -9381,31 +9108,30 @@ (local $8 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $5 + local.tee $3 call $~lib/typedarray/Int64Array#get:length - local.set $3 + local.set $5 i32.const 12 i32.const 10 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $2 - local.get $3 + local.set $1 + local.get $5 i32.const 3 i32.shl i32.const 0 call $~lib/rt/tlsf/__alloc local.set $6 - local.get $5 + local.get $3 i32.load offset=4 local.set $8 i32.const 0 local.set $0 loop $loop|0 - local.get $1 - local.get $3 + local.get $2 + local.get $5 i32.lt_s if - local.get $1 + local.get $2 i32.const 3 i32.shl local.get $8 @@ -9415,8 +9141,8 @@ i32.const 3 global.set $~lib/argc local.get $7 - local.get $1 - local.get $5 + local.get $2 + local.get $3 call $std/typedarray/testArrayFilter<~lib/typedarray/Int64Array,i64>~anonymous|0 if local.get $0 @@ -9432,45 +9158,33 @@ local.get $7 i64.store end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $loop|0 end end + local.get $1 local.get $6 local.get $0 i32.const 3 i32.shl - local.tee $1 - call $~lib/rt/tlsf/__realloc local.tee $0 - local.set $4 - local.get $2 - i32.load - local.tee $3 - local.get $0 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/rt/pure/__release - end - local.get $2 - local.get $4 + call $~lib/rt/tlsf/__realloc + local.tee $4 + call $~lib/rt/pure/__retain i32.store - local.get $2 + local.get $1 local.get $0 + i32.store offset=8 + local.get $1 + local.get $4 i32.store offset=4 - local.get $2 local.get $1 - i32.store offset=8 - local.get $5 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Int64Array,i64> (; 178 ;) (type $FUNCSIG$v) (local $0 i32) @@ -9591,31 +9305,30 @@ (local $8 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $5 + local.tee $3 call $~lib/typedarray/Int64Array#get:length - local.set $3 + local.set $5 i32.const 12 i32.const 11 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $2 - local.get $3 + local.set $1 + local.get $5 i32.const 3 i32.shl i32.const 0 call $~lib/rt/tlsf/__alloc local.set $6 - local.get $5 + local.get $3 i32.load offset=4 local.set $8 i32.const 0 local.set $0 loop $loop|0 - local.get $1 - local.get $3 + local.get $2 + local.get $5 i32.lt_s if - local.get $1 + local.get $2 i32.const 3 i32.shl local.get $8 @@ -9625,8 +9338,8 @@ i32.const 3 global.set $~lib/argc local.get $7 - local.get $1 - local.get $5 + local.get $2 + local.get $3 call $std/typedarray/testArrayFilter<~lib/typedarray/Uint64Array,u64>~anonymous|0 if local.get $0 @@ -9642,45 +9355,33 @@ local.get $7 i64.store end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $loop|0 end end + local.get $1 local.get $6 local.get $0 i32.const 3 i32.shl - local.tee $1 - call $~lib/rt/tlsf/__realloc local.tee $0 - local.set $4 - local.get $2 - i32.load - local.tee $3 - local.get $0 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/rt/pure/__release - end - local.get $2 - local.get $4 + call $~lib/rt/tlsf/__realloc + local.tee $4 + call $~lib/rt/pure/__retain i32.store - local.get $2 + local.get $1 local.get $0 + i32.store offset=8 + local.get $1 + local.get $4 i32.store offset=4 - local.get $2 local.get $1 - i32.store offset=8 - local.get $5 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint64Array,u64> (; 181 ;) (type $FUNCSIG$v) (local $0 i32) @@ -9801,31 +9502,30 @@ (local $8 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $5 + local.tee $3 call $~lib/typedarray/Int32Array#get:length - local.set $3 + local.set $5 i32.const 12 i32.const 12 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $2 - local.get $3 + local.set $1 + local.get $5 i32.const 2 i32.shl i32.const 0 call $~lib/rt/tlsf/__alloc local.set $6 - local.get $5 + local.get $3 i32.load offset=4 local.set $8 i32.const 0 local.set $0 loop $loop|0 - local.get $1 - local.get $3 + local.get $2 + local.get $5 i32.lt_s if - local.get $1 + local.get $2 i32.const 2 i32.shl local.get $8 @@ -9835,8 +9535,8 @@ i32.const 3 global.set $~lib/argc local.get $7 - local.get $1 - local.get $5 + local.get $2 + local.get $3 call $std/typedarray/testArrayFilter<~lib/typedarray/Float32Array,f32>~anonymous|0 if local.get $0 @@ -9852,45 +9552,33 @@ local.get $7 f32.store end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $loop|0 end end + local.get $1 local.get $6 local.get $0 i32.const 2 i32.shl - local.tee $1 - call $~lib/rt/tlsf/__realloc local.tee $0 - local.set $4 - local.get $2 - i32.load - local.tee $3 - local.get $0 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/rt/pure/__release - end - local.get $2 - local.get $4 + call $~lib/rt/tlsf/__realloc + local.tee $4 + call $~lib/rt/pure/__retain i32.store - local.get $2 + local.get $1 local.get $0 + i32.store offset=8 + local.get $1 + local.get $4 i32.store offset=4 - local.get $2 local.get $1 - i32.store offset=8 - local.get $5 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Float32Array,f32> (; 184 ;) (type $FUNCSIG$v) (local $0 i32) @@ -10011,31 +9699,30 @@ (local $8 i32) local.get $0 call $~lib/rt/pure/__retain - local.tee $5 + local.tee $3 call $~lib/typedarray/Int64Array#get:length - local.set $3 + local.set $5 i32.const 12 i32.const 13 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.set $2 - local.get $3 + local.set $1 + local.get $5 i32.const 3 i32.shl i32.const 0 call $~lib/rt/tlsf/__alloc local.set $6 - local.get $5 + local.get $3 i32.load offset=4 local.set $8 i32.const 0 local.set $0 loop $loop|0 - local.get $1 - local.get $3 + local.get $2 + local.get $5 i32.lt_s if - local.get $1 + local.get $2 i32.const 3 i32.shl local.get $8 @@ -10045,8 +9732,8 @@ i32.const 3 global.set $~lib/argc local.get $7 - local.get $1 - local.get $5 + local.get $2 + local.get $3 call $std/typedarray/testArrayFilter<~lib/typedarray/Float64Array,f64>~anonymous|0 if local.get $0 @@ -10062,45 +9749,33 @@ local.get $7 f64.store end - local.get $1 + local.get $2 i32.const 1 i32.add - local.set $1 + local.set $2 br $loop|0 end end + local.get $1 local.get $6 local.get $0 i32.const 3 i32.shl - local.tee $1 - call $~lib/rt/tlsf/__realloc local.tee $0 - local.set $4 - local.get $2 - i32.load - local.tee $3 - local.get $0 - i32.ne - if - local.get $4 - call $~lib/rt/pure/__retain - drop - local.get $3 - call $~lib/rt/pure/__release - end - local.get $2 - local.get $4 + call $~lib/rt/tlsf/__realloc + local.tee $4 + call $~lib/rt/pure/__retain i32.store - local.get $2 + local.get $1 local.get $0 + i32.store offset=8 + local.get $1 + local.get $4 i32.store offset=4 - local.get $2 local.get $1 - i32.store offset=8 - local.get $5 + call $~lib/rt/pure/__retain + local.get $3 call $~lib/rt/pure/__release - local.get $2 ) (func $std/typedarray/testArrayFilter<~lib/typedarray/Float64Array,f64> (; 187 ;) (type $FUNCSIG$v) (local $0 i32) @@ -15100,9 +14775,6 @@ (func $~lib/typedarray/Uint8Array#subarray (; 302 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) i32.const 4 local.get $0 call $~lib/rt/pure/__retain @@ -15135,48 +14807,35 @@ i32.lt_s select end - local.tee $0 - local.get $2 - local.get $0 - local.get $2 - i32.gt_s - select - local.set $4 + local.set $0 i32.const 12 i32.const 4 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $0 - local.get $0 - i32.load - local.tee $6 + local.tee $1 local.get $3 i32.load - local.tee $1 - i32.ne - if - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $1 + call $~lib/rt/pure/__retain i32.store - local.get $0 + local.get $1 local.get $3 i32.load offset=4 local.get $2 i32.add i32.store offset=4 + local.get $1 + local.get $0 + local.get $2 local.get $0 - local.get $4 + local.get $2 + i32.gt_s + select local.get $2 i32.sub i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__retain local.get $3 call $~lib/rt/pure/__release - local.get $0 ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint8Array,u8> (; 303 ;) (type $FUNCSIG$v) (local $0 i32) @@ -15343,9 +15002,6 @@ (func $~lib/typedarray/Uint8ClampedArray#subarray (; 304 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) i32.const 4 local.get $0 call $~lib/rt/pure/__retain @@ -15378,48 +15034,35 @@ i32.lt_s select end - local.tee $0 - local.get $2 - local.get $0 - local.get $2 - i32.gt_s - select - local.set $4 + local.set $0 i32.const 12 i32.const 5 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $0 - local.get $0 - i32.load - local.tee $6 + local.tee $1 local.get $3 i32.load - local.tee $1 - i32.ne - if - local.get $1 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $1 + call $~lib/rt/pure/__retain i32.store - local.get $0 + local.get $1 local.get $3 i32.load offset=4 local.get $2 i32.add i32.store offset=4 + local.get $1 local.get $0 - local.get $4 local.get $2 - i32.sub - i32.store offset=8 + local.get $0 + local.get $2 + i32.gt_s + select + local.get $2 + i32.sub + i32.store offset=8 + local.get $1 + call $~lib/rt/pure/__retain local.get $3 call $~lib/rt/pure/__release - local.get $0 ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint8ClampedArray,u8> (; 305 ;) (type $FUNCSIG$v) (local $0 i32) @@ -15643,9 +15286,6 @@ (func $~lib/typedarray/Int16Array#subarray (; 307 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) i32.const 4 local.get $0 call $~lib/rt/pure/__retain @@ -15678,35 +15318,16 @@ i32.lt_s select end - local.tee $1 - local.get $0 - local.get $1 - local.get $0 - i32.gt_s - select - local.set $4 + local.set $1 i32.const 12 i32.const 6 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $1 - i32.load - local.tee $6 + local.tee $2 local.get $3 i32.load - local.tee $2 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store - local.get $1 + local.get $2 local.get $3 i32.load offset=4 local.get $0 @@ -15714,16 +15335,22 @@ i32.shl i32.add i32.store offset=4 + local.get $2 + local.get $1 + local.get $0 local.get $1 - local.get $4 + local.get $0 + i32.gt_s + select local.get $0 i32.sub i32.const 1 i32.shl i32.store offset=8 + local.get $2 + call $~lib/rt/pure/__retain local.get $3 call $~lib/rt/pure/__release - local.get $1 ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Int16Array,i16> (; 308 ;) (type $FUNCSIG$v) (local $0 i32) @@ -15953,9 +15580,6 @@ (func $~lib/typedarray/Uint16Array#subarray (; 310 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) i32.const 4 local.get $0 call $~lib/rt/pure/__retain @@ -15988,35 +15612,16 @@ i32.lt_s select end - local.tee $1 - local.get $0 - local.get $1 - local.get $0 - i32.gt_s - select - local.set $4 + local.set $1 i32.const 12 i32.const 7 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $1 - i32.load - local.tee $6 + local.tee $2 local.get $3 i32.load - local.tee $2 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store - local.get $1 + local.get $2 local.get $3 i32.load offset=4 local.get $0 @@ -16024,16 +15629,22 @@ i32.shl i32.add i32.store offset=4 + local.get $2 + local.get $1 + local.get $0 local.get $1 - local.get $4 + local.get $0 + i32.gt_s + select local.get $0 i32.sub i32.const 1 i32.shl i32.store offset=8 + local.get $2 + call $~lib/rt/pure/__retain local.get $3 call $~lib/rt/pure/__release - local.get $1 ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint16Array,u16> (; 311 ;) (type $FUNCSIG$v) (local $0 i32) @@ -16414,9 +16025,6 @@ (func $~lib/typedarray/Uint32Array#subarray (; 314 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) i32.const 4 local.get $0 call $~lib/rt/pure/__retain @@ -16449,35 +16057,16 @@ i32.lt_s select end - local.tee $1 - local.get $0 - local.get $1 - local.get $0 - i32.gt_s - select - local.set $4 + local.set $1 i32.const 12 i32.const 9 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $1 - i32.load - local.tee $6 + local.tee $2 local.get $3 i32.load - local.tee $2 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store - local.get $1 + local.get $2 local.get $3 i32.load offset=4 local.get $0 @@ -16485,16 +16074,22 @@ i32.shl i32.add i32.store offset=4 + local.get $2 + local.get $1 + local.get $0 local.get $1 - local.get $4 + local.get $0 + i32.gt_s + select local.get $0 i32.sub i32.const 2 i32.shl i32.store offset=8 + local.get $2 + call $~lib/rt/pure/__retain local.get $3 call $~lib/rt/pure/__release - local.get $1 ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint32Array,u32> (; 315 ;) (type $FUNCSIG$v) (local $0 i32) @@ -16712,9 +16307,6 @@ (func $~lib/typedarray/Int64Array#subarray (; 317 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) i32.const 4 local.get $0 call $~lib/rt/pure/__retain @@ -16747,35 +16339,16 @@ i32.lt_s select end - local.tee $1 - local.get $0 - local.get $1 - local.get $0 - i32.gt_s - select - local.set $4 + local.set $1 i32.const 12 i32.const 10 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $1 - i32.load - local.tee $6 + local.tee $2 local.get $3 i32.load - local.tee $2 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store - local.get $1 + local.get $2 local.get $3 i32.load offset=4 local.get $0 @@ -16783,16 +16356,22 @@ i32.shl i32.add i32.store offset=4 + local.get $2 + local.get $1 + local.get $0 local.get $1 - local.get $4 + local.get $0 + i32.gt_s + select local.get $0 i32.sub i32.const 3 i32.shl i32.store offset=8 + local.get $2 + call $~lib/rt/pure/__retain local.get $3 call $~lib/rt/pure/__release - local.get $1 ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Int64Array,i64> (; 318 ;) (type $FUNCSIG$v) (local $0 i32) @@ -16956,9 +16535,6 @@ (func $~lib/typedarray/Uint64Array#subarray (; 319 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) i32.const 4 local.get $0 call $~lib/rt/pure/__retain @@ -16991,35 +16567,16 @@ i32.lt_s select end - local.tee $1 - local.get $0 - local.get $1 - local.get $0 - i32.gt_s - select - local.set $4 + local.set $1 i32.const 12 i32.const 11 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $1 - i32.load - local.tee $6 + local.tee $2 local.get $3 i32.load - local.tee $2 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store - local.get $1 + local.get $2 local.get $3 i32.load offset=4 local.get $0 @@ -17027,16 +16584,22 @@ i32.shl i32.add i32.store offset=4 + local.get $2 + local.get $1 + local.get $0 local.get $1 - local.get $4 + local.get $0 + i32.gt_s + select local.get $0 i32.sub i32.const 3 i32.shl i32.store offset=8 + local.get $2 + call $~lib/rt/pure/__retain local.get $3 call $~lib/rt/pure/__release - local.get $1 ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint64Array,u64> (; 320 ;) (type $FUNCSIG$v) (local $0 i32) @@ -17257,9 +16820,6 @@ (func $~lib/typedarray/Float32Array#subarray (; 322 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) i32.const 4 local.get $0 call $~lib/rt/pure/__retain @@ -17292,35 +16852,16 @@ i32.lt_s select end - local.tee $1 - local.get $0 - local.get $1 - local.get $0 - i32.gt_s - select - local.set $4 + local.set $1 i32.const 12 i32.const 12 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $1 - local.get $1 - i32.load - local.tee $6 + local.tee $2 local.get $3 i32.load - local.tee $2 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $6 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store - local.get $1 + local.get $2 local.get $3 i32.load offset=4 local.get $0 @@ -17328,16 +16869,22 @@ i32.shl i32.add i32.store offset=4 + local.get $2 + local.get $1 + local.get $0 local.get $1 - local.get $4 + local.get $0 + i32.gt_s + select local.get $0 i32.sub i32.const 2 i32.shl i32.store offset=8 + local.get $2 + call $~lib/rt/pure/__retain local.get $3 call $~lib/rt/pure/__release - local.get $1 ) (func $std/typedarray/testArrayReverse<~lib/typedarray/Float32Array,f32> (; 323 ;) (type $FUNCSIG$v) (local $0 i32) @@ -27384,18 +26931,13 @@ local.get $0 call $~lib/rt/pure/__release ) - (func $~lib/typedarray/Int8Array#get:buffer (; 412 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load - call $~lib/rt/pure/__retain - ) - (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 413 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 412 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 i32.const 16 i32.sub i32.load offset=12 ) - (func $~lib/arraybuffer/ArrayBuffer#slice (; 414 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/arraybuffer/ArrayBuffer#slice (; 413 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $0 call $~lib/arraybuffer/ArrayBuffer#get:byteLength @@ -27463,11 +27005,9 @@ local.get $3 call $~lib/rt/pure/__retain ) - (func $~lib/typedarray/Int8Array.wrap (; 415 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int8Array.wrap (; 414 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $0 call $~lib/rt/pure/__retain drop @@ -27482,7 +27022,7 @@ call $~lib/rt/pure/__release i32.const 280 i32.const 432 - i32.const 1724 + i32.const 1680 i32.const 4 call $~lib/builtins/abort unreachable @@ -27504,7 +27044,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1731 + i32.const 1687 i32.const 8 call $~lib/builtins/abort unreachable @@ -27517,7 +27057,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1736 + i32.const 1692 i32.const 6 call $~lib/builtins/abort unreachable @@ -27533,7 +27073,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1742 + i32.const 1698 i32.const 4 call $~lib/builtins/abort unreachable @@ -27541,21 +27081,9 @@ i32.const 12 i32.const 3 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain local.tee $3 local.get $2 - local.get $3 - i32.load - local.tee $5 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $5 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store local.get $3 local.get $1 @@ -27563,13 +27091,14 @@ local.get $3 local.get $2 i32.store offset=4 + local.get $3 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release local.get $0 call $~lib/rt/pure/__release - local.get $3 ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Int8Array,i8> (; 416 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Int8Array,i8> (; 415 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -27577,68 +27106,68 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) i32.const 3104 call $~lib/rt/pure/__retain - local.tee $3 + local.tee $2 i32.load offset=12 - local.tee $4 + local.tee $3 call $~lib/typedarray/Int8Array#constructor local.tee $6 call $~lib/rt/pure/__retain - local.set $0 + local.set $1 loop $loop|0 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $0 - local.get $1 - local.get $3 local.get $1 + local.get $0 + local.get $2 + local.get $0 call $~lib/array/Array#__get i32.const 24 i32.shl i32.const 24 i32.shr_s call $~lib/typedarray/Int8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $loop|0 end end - local.get $0 - call $~lib/typedarray/Int8Array#get:buffer - local.tee $7 - local.get $0 + local.get $1 + i32.load + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 + local.set $4 i32.const 1 global.set $~lib/argc - local.get $1 + local.get $4 i32.const -1 call $~lib/typedarray/Int8Array.wrap local.set $5 i32.const 0 call $~lib/rt/pure/__release + i32.const 0 + local.set $0 loop $loop|1 - local.get $2 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if + local.get $1 local.get $0 - local.get $2 call $~lib/typedarray/Int8Array#__get local.get $5 - local.get $2 + local.get $0 call $~lib/typedarray/Int8Array#__get i32.ne if @@ -27649,10 +27178,10 @@ call $~lib/builtins/abort unreachable else - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $loop|1 end unreachable @@ -27660,22 +27189,18 @@ end local.get $6 call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 + local.get $2 call $~lib/rt/pure/__release local.get $1 call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release local.get $5 call $~lib/rt/pure/__release ) - (func $~lib/typedarray/Uint8Array.wrap (; 417 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8Array.wrap (; 416 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $0 call $~lib/rt/pure/__retain drop @@ -27690,7 +27215,7 @@ call $~lib/rt/pure/__release i32.const 280 i32.const 432 - i32.const 1724 + i32.const 1680 i32.const 4 call $~lib/builtins/abort unreachable @@ -27712,7 +27237,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1731 + i32.const 1687 i32.const 8 call $~lib/builtins/abort unreachable @@ -27725,7 +27250,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1736 + i32.const 1692 i32.const 6 call $~lib/builtins/abort unreachable @@ -27741,7 +27266,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1742 + i32.const 1698 i32.const 4 call $~lib/builtins/abort unreachable @@ -27749,21 +27274,9 @@ i32.const 12 i32.const 4 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain local.tee $3 local.get $2 - local.get $3 - i32.load - local.tee $5 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $5 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store local.get $3 local.get $1 @@ -27771,13 +27284,14 @@ local.get $3 local.get $2 i32.store offset=4 + local.get $3 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release local.get $0 call $~lib/rt/pure/__release - local.get $3 ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint8Array,u8> (; 418 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint8Array,u8> (; 417 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -27785,66 +27299,66 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) i32.const 3104 call $~lib/rt/pure/__retain - local.tee $3 + local.tee $2 i32.load offset=12 - local.tee $4 + local.tee $3 call $~lib/typedarray/Uint8Array#constructor local.tee $6 call $~lib/rt/pure/__retain - local.set $0 + local.set $1 loop $loop|0 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $0 - local.get $1 - local.get $3 local.get $1 + local.get $0 + local.get $2 + local.get $0 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8Array#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $loop|0 end end - local.get $0 - call $~lib/typedarray/Int8Array#get:buffer - local.tee $7 - local.get $0 + local.get $1 + i32.load + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 + local.set $4 i32.const 1 global.set $~lib/argc - local.get $1 + local.get $4 i32.const -1 call $~lib/typedarray/Uint8Array.wrap local.set $5 i32.const 0 call $~lib/rt/pure/__release + i32.const 0 + local.set $0 loop $loop|1 - local.get $2 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if + local.get $1 local.get $0 - local.get $2 call $~lib/typedarray/Uint8Array#__get local.get $5 - local.get $2 + local.get $0 call $~lib/typedarray/Uint8Array#__get i32.ne if @@ -27855,10 +27369,10 @@ call $~lib/builtins/abort unreachable else - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $loop|1 end unreachable @@ -27866,22 +27380,18 @@ end local.get $6 call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 + local.get $2 call $~lib/rt/pure/__release local.get $1 call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release local.get $5 call $~lib/rt/pure/__release ) - (func $~lib/typedarray/Uint8ClampedArray.wrap (; 419 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint8ClampedArray.wrap (; 418 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $0 call $~lib/rt/pure/__retain drop @@ -27896,7 +27406,7 @@ call $~lib/rt/pure/__release i32.const 280 i32.const 432 - i32.const 1724 + i32.const 1680 i32.const 4 call $~lib/builtins/abort unreachable @@ -27918,7 +27428,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1731 + i32.const 1687 i32.const 8 call $~lib/builtins/abort unreachable @@ -27931,7 +27441,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1736 + i32.const 1692 i32.const 6 call $~lib/builtins/abort unreachable @@ -27947,7 +27457,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1742 + i32.const 1698 i32.const 4 call $~lib/builtins/abort unreachable @@ -27955,21 +27465,9 @@ i32.const 12 i32.const 5 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain local.tee $3 local.get $2 - local.get $3 - i32.load - local.tee $5 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $5 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store local.get $3 local.get $1 @@ -27977,13 +27475,14 @@ local.get $3 local.get $2 i32.store offset=4 + local.get $3 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release local.get $0 call $~lib/rt/pure/__release - local.get $3 ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint8ClampedArray,u8> (; 420 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint8ClampedArray,u8> (; 419 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -27991,66 +27490,66 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) i32.const 3104 call $~lib/rt/pure/__retain - local.tee $3 + local.tee $2 i32.load offset=12 - local.tee $4 + local.tee $3 call $~lib/typedarray/Uint8ClampedArray#constructor local.tee $6 call $~lib/rt/pure/__retain - local.set $0 + local.set $1 loop $loop|0 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $0 - local.get $1 - local.get $3 local.get $1 + local.get $0 + local.get $2 + local.get $0 call $~lib/array/Array#__get i32.const 255 i32.and call $~lib/typedarray/Uint8ClampedArray#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $loop|0 end end - local.get $0 - call $~lib/typedarray/Int8Array#get:buffer - local.tee $7 - local.get $0 + local.get $1 + i32.load + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 + local.set $4 i32.const 1 global.set $~lib/argc - local.get $1 + local.get $4 i32.const -1 call $~lib/typedarray/Uint8ClampedArray.wrap local.set $5 i32.const 0 call $~lib/rt/pure/__release + i32.const 0 + local.set $0 loop $loop|1 - local.get $2 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if + local.get $1 local.get $0 - local.get $2 call $~lib/typedarray/Uint8ClampedArray#__get local.get $5 - local.get $2 + local.get $0 call $~lib/typedarray/Uint8ClampedArray#__get i32.ne if @@ -28061,10 +27560,10 @@ call $~lib/builtins/abort unreachable else - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $loop|1 end unreachable @@ -28072,22 +27571,18 @@ end local.get $6 call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 + local.get $2 call $~lib/rt/pure/__release local.get $1 call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release local.get $5 call $~lib/rt/pure/__release ) - (func $~lib/typedarray/Int16Array.wrap (; 421 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int16Array.wrap (; 420 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $0 call $~lib/rt/pure/__retain drop @@ -28102,7 +27597,7 @@ call $~lib/rt/pure/__release i32.const 280 i32.const 432 - i32.const 1724 + i32.const 1680 i32.const 4 call $~lib/builtins/abort unreachable @@ -28124,7 +27619,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1731 + i32.const 1687 i32.const 8 call $~lib/builtins/abort unreachable @@ -28137,7 +27632,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1736 + i32.const 1692 i32.const 6 call $~lib/builtins/abort unreachable @@ -28156,7 +27651,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1742 + i32.const 1698 i32.const 4 call $~lib/builtins/abort unreachable @@ -28164,21 +27659,9 @@ i32.const 12 i32.const 6 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain local.tee $3 local.get $2 - local.get $3 - i32.load - local.tee $5 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $5 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store local.get $3 local.get $1 @@ -28186,13 +27669,14 @@ local.get $3 local.get $2 i32.store offset=4 + local.get $3 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release local.get $0 call $~lib/rt/pure/__release - local.get $3 ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Int16Array,i16> (; 422 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Int16Array,i16> (; 421 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -28200,68 +27684,68 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) i32.const 3104 call $~lib/rt/pure/__retain - local.tee $3 + local.tee $2 i32.load offset=12 - local.tee $4 + local.tee $3 call $~lib/typedarray/Int16Array#constructor local.tee $6 call $~lib/rt/pure/__retain - local.set $0 + local.set $1 loop $loop|0 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $0 - local.get $1 - local.get $3 local.get $1 + local.get $0 + local.get $2 + local.get $0 call $~lib/array/Array#__get i32.const 16 i32.shl i32.const 16 i32.shr_s call $~lib/typedarray/Int16Array#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $loop|0 end end - local.get $0 - call $~lib/typedarray/Int8Array#get:buffer - local.tee $7 - local.get $0 + local.get $1 + i32.load + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 + local.set $4 i32.const 1 global.set $~lib/argc - local.get $1 + local.get $4 i32.const -1 call $~lib/typedarray/Int16Array.wrap local.set $5 i32.const 0 call $~lib/rt/pure/__release + i32.const 0 + local.set $0 loop $loop|1 - local.get $2 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if + local.get $1 local.get $0 - local.get $2 call $~lib/typedarray/Int16Array#__get local.get $5 - local.get $2 + local.get $0 call $~lib/typedarray/Int16Array#__get i32.ne if @@ -28272,10 +27756,10 @@ call $~lib/builtins/abort unreachable else - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $loop|1 end unreachable @@ -28283,22 +27767,18 @@ end local.get $6 call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 + local.get $2 call $~lib/rt/pure/__release local.get $1 call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release local.get $5 call $~lib/rt/pure/__release ) - (func $~lib/typedarray/Uint16Array.wrap (; 423 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint16Array.wrap (; 422 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $0 call $~lib/rt/pure/__retain drop @@ -28313,7 +27793,7 @@ call $~lib/rt/pure/__release i32.const 280 i32.const 432 - i32.const 1724 + i32.const 1680 i32.const 4 call $~lib/builtins/abort unreachable @@ -28335,7 +27815,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1731 + i32.const 1687 i32.const 8 call $~lib/builtins/abort unreachable @@ -28348,7 +27828,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1736 + i32.const 1692 i32.const 6 call $~lib/builtins/abort unreachable @@ -28367,7 +27847,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1742 + i32.const 1698 i32.const 4 call $~lib/builtins/abort unreachable @@ -28375,21 +27855,9 @@ i32.const 12 i32.const 7 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain local.tee $3 local.get $2 - local.get $3 - i32.load - local.tee $5 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $5 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store local.get $3 local.get $1 @@ -28397,13 +27865,14 @@ local.get $3 local.get $2 i32.store offset=4 + local.get $3 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release local.get $0 call $~lib/rt/pure/__release - local.get $3 ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint16Array,u16> (; 424 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint16Array,u16> (; 423 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -28411,66 +27880,66 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) i32.const 3104 call $~lib/rt/pure/__retain - local.tee $3 + local.tee $2 i32.load offset=12 - local.tee $4 + local.tee $3 call $~lib/typedarray/Uint16Array#constructor local.tee $6 call $~lib/rt/pure/__retain - local.set $0 + local.set $1 loop $loop|0 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $0 - local.get $1 - local.get $3 local.get $1 + local.get $0 + local.get $2 + local.get $0 call $~lib/array/Array#__get i32.const 65535 i32.and call $~lib/typedarray/Uint16Array#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $loop|0 end end - local.get $0 - call $~lib/typedarray/Int8Array#get:buffer - local.tee $7 - local.get $0 + local.get $1 + i32.load + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 + local.set $4 i32.const 1 global.set $~lib/argc - local.get $1 + local.get $4 i32.const -1 call $~lib/typedarray/Uint16Array.wrap local.set $5 i32.const 0 call $~lib/rt/pure/__release + i32.const 0 + local.set $0 loop $loop|1 - local.get $2 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if + local.get $1 local.get $0 - local.get $2 call $~lib/typedarray/Uint16Array#__get local.get $5 - local.get $2 + local.get $0 call $~lib/typedarray/Uint16Array#__get i32.ne if @@ -28481,10 +27950,10 @@ call $~lib/builtins/abort unreachable else - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $loop|1 end unreachable @@ -28492,22 +27961,18 @@ end local.get $6 call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 + local.get $2 call $~lib/rt/pure/__release local.get $1 call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release local.get $5 call $~lib/rt/pure/__release ) - (func $~lib/typedarray/Int32Array.wrap (; 425 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int32Array.wrap (; 424 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $0 call $~lib/rt/pure/__retain drop @@ -28522,7 +27987,7 @@ call $~lib/rt/pure/__release i32.const 280 i32.const 432 - i32.const 1724 + i32.const 1680 i32.const 4 call $~lib/builtins/abort unreachable @@ -28544,7 +28009,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1731 + i32.const 1687 i32.const 8 call $~lib/builtins/abort unreachable @@ -28557,7 +28022,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1736 + i32.const 1692 i32.const 6 call $~lib/builtins/abort unreachable @@ -28572,33 +28037,21 @@ call $~lib/arraybuffer/ArrayBuffer#get:byteLength i32.gt_s if - local.get $2 - call $~lib/rt/pure/__release - i32.const 24 - i32.const 432 - i32.const 1742 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - i32.const 12 - i32.const 8 - call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain - local.tee $3 - local.get $2 - local.get $3 - i32.load - local.tee $5 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $5 + local.get $2 call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1698 + i32.const 4 + call $~lib/builtins/abort + unreachable end + i32.const 12 + i32.const 8 + call $~lib/rt/tlsf/__alloc + local.tee $3 local.get $2 + call $~lib/rt/pure/__retain i32.store local.get $3 local.get $1 @@ -28606,13 +28059,14 @@ local.get $3 local.get $2 i32.store offset=4 + local.get $3 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release local.get $0 call $~lib/rt/pure/__release - local.get $3 ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Int32Array,i32> (; 426 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Int32Array,i32> (; 425 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -28620,64 +28074,64 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) i32.const 3104 call $~lib/rt/pure/__retain - local.tee $3 + local.tee $2 i32.load offset=12 - local.tee $4 + local.tee $3 call $~lib/typedarray/Int32Array#constructor local.tee $6 call $~lib/rt/pure/__retain - local.set $0 + local.set $1 loop $loop|0 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $0 - local.get $1 - local.get $3 local.get $1 + local.get $0 + local.get $2 + local.get $0 call $~lib/array/Array#__get call $~lib/typedarray/Int32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $loop|0 end end - local.get $0 - call $~lib/typedarray/Int8Array#get:buffer - local.tee $7 - local.get $0 + local.get $1 + i32.load + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 + local.set $4 i32.const 1 global.set $~lib/argc - local.get $1 + local.get $4 i32.const -1 call $~lib/typedarray/Int32Array.wrap local.set $5 i32.const 0 call $~lib/rt/pure/__release + i32.const 0 + local.set $0 loop $loop|1 - local.get $2 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if + local.get $1 local.get $0 - local.get $2 call $~lib/typedarray/Int32Array#__get local.get $5 - local.get $2 + local.get $0 call $~lib/typedarray/Int32Array#__get i32.ne if @@ -28688,10 +28142,10 @@ call $~lib/builtins/abort unreachable else - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $loop|1 end unreachable @@ -28699,22 +28153,18 @@ end local.get $6 call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 + local.get $2 call $~lib/rt/pure/__release local.get $1 call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release local.get $5 call $~lib/rt/pure/__release ) - (func $~lib/typedarray/Uint32Array.wrap (; 427 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint32Array.wrap (; 426 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $0 call $~lib/rt/pure/__retain drop @@ -28729,7 +28179,7 @@ call $~lib/rt/pure/__release i32.const 280 i32.const 432 - i32.const 1724 + i32.const 1680 i32.const 4 call $~lib/builtins/abort unreachable @@ -28751,7 +28201,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1731 + i32.const 1687 i32.const 8 call $~lib/builtins/abort unreachable @@ -28764,7 +28214,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1736 + i32.const 1692 i32.const 6 call $~lib/builtins/abort unreachable @@ -28783,7 +28233,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1742 + i32.const 1698 i32.const 4 call $~lib/builtins/abort unreachable @@ -28791,21 +28241,9 @@ i32.const 12 i32.const 9 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain local.tee $3 local.get $2 - local.get $3 - i32.load - local.tee $5 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $5 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store local.get $3 local.get $1 @@ -28813,13 +28251,14 @@ local.get $3 local.get $2 i32.store offset=4 + local.get $3 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release local.get $0 call $~lib/rt/pure/__release - local.get $3 ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint32Array,u32> (; 428 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint32Array,u32> (; 427 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -28827,64 +28266,64 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) i32.const 3104 call $~lib/rt/pure/__retain - local.tee $3 + local.tee $2 i32.load offset=12 - local.tee $4 + local.tee $3 call $~lib/typedarray/Uint32Array#constructor local.tee $6 call $~lib/rt/pure/__retain - local.set $0 + local.set $1 loop $loop|0 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $0 - local.get $1 - local.get $3 local.get $1 + local.get $0 + local.get $2 + local.get $0 call $~lib/array/Array#__get call $~lib/typedarray/Uint32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $loop|0 end end - local.get $0 - call $~lib/typedarray/Int8Array#get:buffer - local.tee $7 - local.get $0 + local.get $1 + i32.load + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 + local.set $4 i32.const 1 global.set $~lib/argc - local.get $1 + local.get $4 i32.const -1 call $~lib/typedarray/Uint32Array.wrap local.set $5 i32.const 0 call $~lib/rt/pure/__release + i32.const 0 + local.set $0 loop $loop|1 - local.get $2 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if + local.get $1 local.get $0 - local.get $2 call $~lib/typedarray/Uint32Array#__get local.get $5 - local.get $2 + local.get $0 call $~lib/typedarray/Uint32Array#__get i32.ne if @@ -28895,10 +28334,10 @@ call $~lib/builtins/abort unreachable else - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $loop|1 end unreachable @@ -28906,22 +28345,18 @@ end local.get $6 call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 + local.get $2 call $~lib/rt/pure/__release local.get $1 call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release local.get $5 call $~lib/rt/pure/__release ) - (func $~lib/typedarray/Int64Array.wrap (; 429 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Int64Array.wrap (; 428 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $0 call $~lib/rt/pure/__retain drop @@ -28936,7 +28371,7 @@ call $~lib/rt/pure/__release i32.const 280 i32.const 432 - i32.const 1724 + i32.const 1680 i32.const 4 call $~lib/builtins/abort unreachable @@ -28958,7 +28393,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1731 + i32.const 1687 i32.const 8 call $~lib/builtins/abort unreachable @@ -28971,7 +28406,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1736 + i32.const 1692 i32.const 6 call $~lib/builtins/abort unreachable @@ -28990,7 +28425,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1742 + i32.const 1698 i32.const 4 call $~lib/builtins/abort unreachable @@ -28998,21 +28433,9 @@ i32.const 12 i32.const 10 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain local.tee $3 local.get $2 - local.get $3 - i32.load - local.tee $5 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $5 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store local.get $3 local.get $1 @@ -29020,13 +28443,14 @@ local.get $3 local.get $2 i32.store offset=4 + local.get $3 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release local.get $0 call $~lib/rt/pure/__release - local.get $3 ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Int64Array,i64> (; 430 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Int64Array,i64> (; 429 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -29034,65 +28458,65 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) i32.const 3104 call $~lib/rt/pure/__retain - local.tee $3 + local.tee $2 i32.load offset=12 - local.tee $4 + local.tee $3 call $~lib/typedarray/Int64Array#constructor local.tee $6 call $~lib/rt/pure/__retain - local.set $0 + local.set $1 loop $loop|0 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $0 - local.get $1 - local.get $3 local.get $1 + local.get $0 + local.get $2 + local.get $0 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Int64Array#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $loop|0 end end - local.get $0 - call $~lib/typedarray/Int8Array#get:buffer - local.tee $7 - local.get $0 + local.get $1 + i32.load + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 + local.set $4 i32.const 1 global.set $~lib/argc - local.get $1 + local.get $4 i32.const -1 call $~lib/typedarray/Int64Array.wrap local.set $5 i32.const 0 call $~lib/rt/pure/__release + i32.const 0 + local.set $0 loop $loop|1 - local.get $2 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if + local.get $1 local.get $0 - local.get $2 call $~lib/typedarray/Int64Array#__get local.get $5 - local.get $2 + local.get $0 call $~lib/typedarray/Int64Array#__get i64.ne if @@ -29103,10 +28527,10 @@ call $~lib/builtins/abort unreachable else - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $loop|1 end unreachable @@ -29114,22 +28538,18 @@ end local.get $6 call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 + local.get $2 call $~lib/rt/pure/__release local.get $1 call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release local.get $5 call $~lib/rt/pure/__release ) - (func $~lib/typedarray/Uint64Array.wrap (; 431 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Uint64Array.wrap (; 430 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $0 call $~lib/rt/pure/__retain drop @@ -29144,7 +28564,7 @@ call $~lib/rt/pure/__release i32.const 280 i32.const 432 - i32.const 1724 + i32.const 1680 i32.const 4 call $~lib/builtins/abort unreachable @@ -29166,7 +28586,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1731 + i32.const 1687 i32.const 8 call $~lib/builtins/abort unreachable @@ -29179,7 +28599,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1736 + i32.const 1692 i32.const 6 call $~lib/builtins/abort unreachable @@ -29198,7 +28618,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1742 + i32.const 1698 i32.const 4 call $~lib/builtins/abort unreachable @@ -29206,21 +28626,9 @@ i32.const 12 i32.const 11 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain local.tee $3 local.get $2 - local.get $3 - i32.load - local.tee $5 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $5 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store local.get $3 local.get $1 @@ -29228,13 +28636,14 @@ local.get $3 local.get $2 i32.store offset=4 + local.get $3 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release local.get $0 call $~lib/rt/pure/__release - local.get $3 ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint64Array,u64> (; 432 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint64Array,u64> (; 431 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -29242,65 +28651,65 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) i32.const 3104 call $~lib/rt/pure/__retain - local.tee $3 + local.tee $2 i32.load offset=12 - local.tee $4 + local.tee $3 call $~lib/typedarray/Uint64Array#constructor local.tee $6 call $~lib/rt/pure/__retain - local.set $0 + local.set $1 loop $loop|0 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $0 - local.get $1 - local.get $3 local.get $1 + local.get $0 + local.get $2 + local.get $0 call $~lib/array/Array#__get i64.extend_i32_s call $~lib/typedarray/Uint64Array#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $loop|0 end end - local.get $0 - call $~lib/typedarray/Int8Array#get:buffer - local.tee $7 - local.get $0 + local.get $1 + i32.load + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 + local.set $4 i32.const 1 global.set $~lib/argc - local.get $1 + local.get $4 i32.const -1 call $~lib/typedarray/Uint64Array.wrap local.set $5 i32.const 0 call $~lib/rt/pure/__release + i32.const 0 + local.set $0 loop $loop|1 - local.get $2 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if + local.get $1 local.get $0 - local.get $2 call $~lib/typedarray/Uint64Array#__get local.get $5 - local.get $2 + local.get $0 call $~lib/typedarray/Uint64Array#__get i64.ne if @@ -29311,10 +28720,10 @@ call $~lib/builtins/abort unreachable else - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $loop|1 end unreachable @@ -29322,22 +28731,18 @@ end local.get $6 call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 + local.get $2 call $~lib/rt/pure/__release local.get $1 call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release local.get $5 call $~lib/rt/pure/__release ) - (func $~lib/typedarray/Float32Array.wrap (; 433 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float32Array.wrap (; 432 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $0 call $~lib/rt/pure/__retain drop @@ -29352,7 +28757,7 @@ call $~lib/rt/pure/__release i32.const 280 i32.const 432 - i32.const 1724 + i32.const 1680 i32.const 4 call $~lib/builtins/abort unreachable @@ -29374,7 +28779,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1731 + i32.const 1687 i32.const 8 call $~lib/builtins/abort unreachable @@ -29387,7 +28792,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1736 + i32.const 1692 i32.const 6 call $~lib/builtins/abort unreachable @@ -29406,7 +28811,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1742 + i32.const 1698 i32.const 4 call $~lib/builtins/abort unreachable @@ -29414,21 +28819,9 @@ i32.const 12 i32.const 12 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain local.tee $3 local.get $2 - local.get $3 - i32.load - local.tee $5 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $5 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store local.get $3 local.get $1 @@ -29436,13 +28829,14 @@ local.get $3 local.get $2 i32.store offset=4 + local.get $3 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release local.get $0 call $~lib/rt/pure/__release - local.get $3 ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Float32Array,f32> (; 434 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Float32Array,f32> (; 433 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -29450,65 +28844,65 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) i32.const 3104 call $~lib/rt/pure/__retain - local.tee $3 + local.tee $2 i32.load offset=12 - local.tee $4 + local.tee $3 call $~lib/typedarray/Float32Array#constructor local.tee $6 call $~lib/rt/pure/__retain - local.set $0 + local.set $1 loop $loop|0 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $0 - local.get $1 - local.get $3 local.get $1 + local.get $0 + local.get $2 + local.get $0 call $~lib/array/Array#__get f32.convert_i32_s call $~lib/typedarray/Float32Array#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $loop|0 end end - local.get $0 - call $~lib/typedarray/Int8Array#get:buffer - local.tee $7 - local.get $0 + local.get $1 + i32.load + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 + local.set $4 i32.const 1 global.set $~lib/argc - local.get $1 + local.get $4 i32.const -1 call $~lib/typedarray/Float32Array.wrap local.set $5 i32.const 0 call $~lib/rt/pure/__release + i32.const 0 + local.set $0 loop $loop|1 - local.get $2 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if + local.get $1 local.get $0 - local.get $2 call $~lib/typedarray/Float32Array#__get local.get $5 - local.get $2 + local.get $0 call $~lib/typedarray/Float32Array#__get f32.ne if @@ -29519,10 +28913,10 @@ call $~lib/builtins/abort unreachable else - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $loop|1 end unreachable @@ -29530,22 +28924,18 @@ end local.get $6 call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 + local.get $2 call $~lib/rt/pure/__release local.get $1 call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release local.get $5 call $~lib/rt/pure/__release ) - (func $~lib/typedarray/Float64Array.wrap (; 435 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/typedarray/Float64Array.wrap (; 434 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) local.get $0 call $~lib/rt/pure/__retain drop @@ -29560,7 +28950,7 @@ call $~lib/rt/pure/__release i32.const 280 i32.const 432 - i32.const 1724 + i32.const 1680 i32.const 4 call $~lib/builtins/abort unreachable @@ -29582,7 +28972,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1731 + i32.const 1687 i32.const 8 call $~lib/builtins/abort unreachable @@ -29595,7 +28985,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1736 + i32.const 1692 i32.const 6 call $~lib/builtins/abort unreachable @@ -29614,7 +29004,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 1742 + i32.const 1698 i32.const 4 call $~lib/builtins/abort unreachable @@ -29622,21 +29012,9 @@ i32.const 12 i32.const 13 call $~lib/rt/tlsf/__alloc - call $~lib/rt/pure/__retain local.tee $3 local.get $2 - local.get $3 - i32.load - local.tee $5 - i32.ne - if - local.get $2 - call $~lib/rt/pure/__retain - drop - local.get $5 - call $~lib/rt/pure/__release - end - local.get $2 + call $~lib/rt/pure/__retain i32.store local.get $3 local.get $1 @@ -29644,13 +29022,14 @@ local.get $3 local.get $2 i32.store offset=4 + local.get $3 + call $~lib/rt/pure/__retain local.get $2 call $~lib/rt/pure/__release local.get $0 call $~lib/rt/pure/__release - local.get $3 ) - (func $std/typedarray/testArrayWrap<~lib/typedarray/Float64Array,f64> (; 436 ;) (type $FUNCSIG$v) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Float64Array,f64> (; 435 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -29658,65 +29037,65 @@ (local $4 i32) (local $5 i32) (local $6 i32) - (local $7 i32) i32.const 3104 call $~lib/rt/pure/__retain - local.tee $3 + local.tee $2 i32.load offset=12 - local.tee $4 + local.tee $3 call $~lib/typedarray/Float64Array#constructor local.tee $6 call $~lib/rt/pure/__retain - local.set $0 + local.set $1 loop $loop|0 - local.get $1 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if - local.get $0 - local.get $1 - local.get $3 local.get $1 + local.get $0 + local.get $2 + local.get $0 call $~lib/array/Array#__get f64.convert_i32_s call $~lib/typedarray/Float64Array#__set - local.get $1 + local.get $0 i32.const 1 i32.add - local.set $1 + local.set $0 br $loop|0 end end - local.get $0 - call $~lib/typedarray/Int8Array#get:buffer - local.tee $7 - local.get $0 + local.get $1 + i32.load + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset - local.get $0 + local.get $1 i32.load offset=8 i32.add call $~lib/arraybuffer/ArrayBuffer#slice - local.set $1 + local.set $4 i32.const 1 global.set $~lib/argc - local.get $1 + local.get $4 i32.const -1 call $~lib/typedarray/Float64Array.wrap local.set $5 i32.const 0 call $~lib/rt/pure/__release + i32.const 0 + local.set $0 loop $loop|1 - local.get $2 - local.get $4 + local.get $0 + local.get $3 i32.lt_s if + local.get $1 local.get $0 - local.get $2 call $~lib/typedarray/Float64Array#__get local.get $5 - local.get $2 + local.get $0 call $~lib/typedarray/Float64Array#__get f64.ne if @@ -29727,10 +29106,10 @@ call $~lib/builtins/abort unreachable else - local.get $2 + local.get $0 i32.const 1 i32.add - local.set $2 + local.set $0 br $loop|1 end unreachable @@ -29738,18 +29117,16 @@ end local.get $6 call $~lib/rt/pure/__release - local.get $7 - call $~lib/rt/pure/__release - local.get $3 - call $~lib/rt/pure/__release - local.get $0 + local.get $2 call $~lib/rt/pure/__release local.get $1 call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release local.get $5 call $~lib/rt/pure/__release ) - (func $start:std/typedarray (; 437 ;) (type $FUNCSIG$v) + (func $start:std/typedarray (; 436 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -29927,46 +29304,46 @@ call $~lib/rt/pure/__release i32.const 8 call $~lib/typedarray/Float64Array#constructor - local.tee $0 + local.tee $1 i32.const 0 f64.const 1 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 1 f64.const 2 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 2 f64.const 7 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 3 f64.const 6 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 4 f64.const 5 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 5 f64.const 4 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 6 f64.const 3 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 7 f64.const 8 call $~lib/typedarray/Float64Array#__set - local.get $0 + local.get $1 i32.const 2 i32.const 6 call $~lib/typedarray/Float64Array#subarray - local.set $1 - local.get $0 - call $~lib/rt/pure/__release + local.set $0 local.get $1 + call $~lib/rt/pure/__release + local.get $0 call $~lib/typedarray/Int64Array#get:length i32.const 4 i32.ne @@ -29978,7 +29355,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset i32.const 16 i32.ne @@ -29990,7 +29367,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 i32.load offset=8 i32.const 32 i32.ne @@ -30004,17 +29381,17 @@ end i32.const 0 global.set $~lib/argc - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Float64Array#sort call $~lib/rt/pure/__release - local.get $1 + local.get $0 i32.const 0 call $~lib/typedarray/Float64Array#__get f64.const 4 f64.eq if (result i32) - local.get $1 + local.get $0 i32.const 1 call $~lib/typedarray/Float64Array#__get f64.const 5 @@ -30023,7 +29400,7 @@ i32.const 0 end if (result i32) - local.get $1 + local.get $0 i32.const 2 call $~lib/typedarray/Float64Array#__get f64.const 6 @@ -30032,7 +29409,7 @@ i32.const 0 end if (result i32) - local.get $1 + local.get $0 i32.const 3 call $~lib/typedarray/Float64Array#__get f64.const 7 @@ -30049,7 +29426,7 @@ call $~lib/builtins/abort unreachable end - local.get $1 + local.get $0 call $~lib/rt/pure/__release i32.const 3 call $~lib/typedarray/Uint8ClampedArray#constructor @@ -31067,10 +30444,9 @@ i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.set $0 local.get $1 call $~lib/rt/pure/__release - local.get $0 + local.tee $1 i32.const -4 i32.const -3 i32.const -2 @@ -31097,10 +30473,10 @@ i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.set $1 - local.get $0 - call $~lib/rt/pure/__release + local.set $0 local.get $1 + call $~lib/rt/pure/__release + local.get $0 i32.const -4 i32.const -3 i32.const -1 @@ -31127,15 +30503,15 @@ i32.const 0 i32.const 2147483647 call $~lib/typedarray/Int32Array#slice - local.set $0 - local.get $1 - call $~lib/rt/pure/__release + local.set $1 local.get $0 + call $~lib/rt/pure/__release + local.get $1 i32.const -4 i32.const -3 i32.const 2147483647 call $~lib/typedarray/Int32Array#copyWithin - local.tee $1 + local.tee $0 i32.const 5 i32.const 2 i32.const 15 @@ -31153,7 +30529,7 @@ call $~lib/builtins/abort unreachable end - local.get $0 + local.get $1 call $~lib/rt/pure/__release local.get $2 call $~lib/rt/pure/__release @@ -31201,7 +30577,7 @@ call $~lib/rt/pure/__release local.get $24 call $~lib/rt/pure/__release - local.get $1 + local.get $0 call $~lib/rt/pure/__release local.get $25 call $~lib/rt/pure/__release @@ -31579,7 +30955,7 @@ call $std/typedarray/testArrayWrap<~lib/typedarray/Float32Array,f32> call $std/typedarray/testArrayWrap<~lib/typedarray/Float64Array,f64> ) - (func $start (; 438 ;) (type $FUNCSIG$v) + (func $start (; 437 ;) (type $FUNCSIG$v) global.get $~lib/started if return @@ -31589,7 +30965,7 @@ end call $start:std/typedarray ) - (func $~lib/rt/pure/__visit (; 439 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/rt/pure/__visit (; 438 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) local.get $0 i32.const 3276 i32.lt_u @@ -31699,7 +31075,7 @@ unreachable end ) - (func $~lib/rt/__visit_members (; 440 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/rt/__visit_members (; 439 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) block $block$4$break block $switch$1$default block $switch$1$case$2 @@ -31722,7 +31098,7 @@ call $~lib/rt/pure/__visit end ) - (func $null (; 441 ;) (type $FUNCSIG$v) + (func $null (; 440 ;) (type $FUNCSIG$v) nop ) ) diff --git a/tests/compiler/std/typedarray.untouched.wat b/tests/compiler/std/typedarray.untouched.wat index e69de29bb2..f4a7a3b872 100644 --- a/tests/compiler/std/typedarray.untouched.wat +++ b/tests/compiler/std/typedarray.untouched.wat @@ -0,0 +1,42335 @@ +(module + (type $FUNCSIG$vi (func (param i32))) + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$v (func)) + (type $FUNCSIG$vii (func (param i32 i32))) + (type $FUNCSIG$ii (func (param i32) (result i32))) + (type $FUNCSIG$viii (func (param i32 i32 i32))) + (type $FUNCSIG$viid (func (param i32 i32 f64))) + (type $FUNCSIG$idd (func (param f64 f64) (result i32))) + (type $FUNCSIG$dii (func (param i32 i32) (result f64))) + (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$viij (func (param i32 i32 i64))) + (type $FUNCSIG$jjjii (func (param i64 i64 i32 i32) (result i64))) + (type $FUNCSIG$jiij (func (param i32 i32 i64) (result i64))) + (type $FUNCSIG$viif (func (param i32 i32 f32))) + (type $FUNCSIG$fffii (func (param f32 f32 i32 i32) (result f32))) + (type $FUNCSIG$fiif (func (param i32 i32 f32) (result f32))) + (type $FUNCSIG$dddii (func (param f64 f64 i32 i32) (result f64))) + (type $FUNCSIG$diid (func (param i32 i32 f64) (result f64))) + (type $FUNCSIG$jjii (func (param i64 i32 i32) (result i64))) + (type $FUNCSIG$jii (func (param i32 i32) (result i64))) + (type $FUNCSIG$ffii (func (param f32 i32 i32) (result f32))) + (type $FUNCSIG$fii (func (param i32 i32) (result f32))) + (type $FUNCSIG$ddii (func (param f64 i32 i32) (result f64))) + (type $FUNCSIG$ijii (func (param i64 i32 i32) (result i32))) + (type $FUNCSIG$ifii (func (param f32 i32 i32) (result i32))) + (type $FUNCSIG$idii (func (param f64 i32 i32) (result i32))) + (type $FUNCSIG$fff (func (param f32 f32) (result f32))) + (type $FUNCSIG$if (func (param f32) (result i32))) + (type $FUNCSIG$ddd (func (param f64 f64) (result f64))) + (type $FUNCSIG$id (func (param f64) (result i32))) + (type $FUNCSIG$vjii (func (param i64 i32 i32))) + (type $FUNCSIG$vfii (func (param f32 i32 i32))) + (type $FUNCSIG$vdii (func (param f64 i32 i32))) + (type $FUNCSIG$iiji (func (param i32 i64 i32) (result i32))) + (type $FUNCSIG$iifi (func (param i32 f32 i32) (result i32))) + (type $FUNCSIG$iidi (func (param i32 f64 i32) (result i32))) + (type $FUNCSIG$iiiiii (func (param i32 i32 i32 i32 i32) (result i32))) + (type $FUNCSIG$ij (func (param i64) (result i32))) + (type $FUNCSIG$viji (func (param i32 i64 i32))) + (type $FUNCSIG$iiij (func (param i32 i32 i64) (result i32))) + (type $FUNCSIG$iid (func (param i32 f64) (result i32))) + (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) + (type $FUNCSIG$iiid (func (param i32 i32 f64) (result i32))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32))) + (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32))) + (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32))) + (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32))) + (memory $0 1) + (data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") + (data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") + (data (i32.const 112) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") + (data (i32.const 160) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") + (data (i32.const 216) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") + (data (i32.const 264) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00I\00n\00d\00e\00x\00 \00o\00u\00t\00 \00o\00f\00 \00r\00a\00n\00g\00e\00") + (data (i32.const 320) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00~\00l\00i\00b\00/\00r\00t\00.\00t\00s\00") + (data (i32.const 360) "\"\00\00\00\01\00\00\00\01\00\00\00\"\00\00\00s\00t\00d\00/\00t\00y\00p\00e\00d\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 416) "$\00\00\00\01\00\00\00\01\00\00\00$\00\00\00~\00l\00i\00b\00/\00t\00y\00p\00e\00d\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 472) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\01\04\05") + (data (i32.const 496) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 544) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\00\00\00\00\00") + (data (i32.const 568) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\00\00\00") + (data (i32.const 592) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\00\02\02") + (data (i32.const 616) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\01\00\02\02") + (data (i32.const 640) "\03\00\00\00\01\00\00\00\00\00\00\00\03\00\00\00\00\00\00") + (data (i32.const 664) "\05\00\00\00\01\00\00\00\00\00\00\00\05\00\00\00\01\00\00\00\02") + (data (i32.const 688) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 728) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 768) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 808) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\02\00\00\00") + (data (i32.const 848) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\02\00\00\00") + (data (i32.const 888) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 920) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\02\00\00\00") + (data (i32.const 960) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1000) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\04\00\00\00\05\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1040) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00") + (data (i32.const 1080) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1120) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1160) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\04\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1200) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1240) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\05\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1280) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\04\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1320) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1360) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\04\00\00\00\05\00\00\00") + (data (i32.const 1400) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\05\00\00\00") + (data (i32.const 1440) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\n\00\00\00\0c\00\00\00\0e\00\00\00") + (data (i32.const 1472) "\10\00\00\00\01\00\00\00\0f\00\00\00\10\00\00\00\b0\05\00\00\b0\05\00\00\0c\00\00\00\03\00\00\00") + (data (i32.const 1504) "$\00\00\00\01\00\00\00\00\00\00\00$\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\08\00\00\00\t\00\00\00") + (data (i32.const 1560) "\10\00\00\00\01\00\00\00\0f\00\00\00\10\00\00\00\f0\05\00\00\f0\05\00\00$\00\00\00\t\00\00\00") + (data (i32.const 1592) ",\00\00\00\01\00\00\00\00\00\00\00,\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00\06\00\00\00\07\00\00\00\08\00\00\00\t\00\00\00\n\00\00\00") + (data (i32.const 1656) "\10\00\00\00\01\00\00\00\0f\00\00\00\10\00\00\00H\06\00\00H\06\00\00,\00\00\00\0b\00\00\00") + (data (i32.const 1688) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00") + (data (i32.const 1704) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") + (data (i32.const 1728) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") + (data (i32.const 2144) "\10\00\00\00\01\00\00\00\10\00\00\00\10\00\00\00\d0\06\00\00\d0\06\00\00\90\01\00\00d\00\00\00") + (data (i32.const 2176) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00,\00") + (data (i32.const 2200) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\001\00,\002\00,\003\00,\004\00,\005\00") + (data (i32.const 2240) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") + (data (i32.const 2264) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") + (data (i32.const 2288) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 2328) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 2360) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testReduce<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testReduceRight<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testArrayMap<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testArrayFilter<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Int8Array,i8>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Uint8Array,u8>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Int16Array,i16>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Uint16Array,u16>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Int32Array,i32>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Uint32Array,u32>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Int64Array,i64>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Uint64Array,u64>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Float32Array,f32>~anonymous|1 $std/typedarray/testArraySome<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testArraySome<~lib/typedarray/Float64Array,f64>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int8Array,i8>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8Array,u8>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int16Array,i16>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint16Array,u16>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int32Array,i32>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint32Array,u32>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Int64Array,i64>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint64Array,u64>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Float32Array,f32>~anonymous|1 $std/typedarray/testArrayFindIndex<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testArrayFindIndex<~lib/typedarray/Float64Array,f64>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Int8Array,i8>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Uint8Array,u8>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Int16Array,i16>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Uint16Array,u16>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Int32Array,i32>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Uint32Array,u32>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Int64Array,i64>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Uint64Array,u64>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Float32Array,f32>~anonymous|1 $std/typedarray/testArrayEvery<~lib/typedarray/Float64Array,f64>~anonymous|0 $std/typedarray/testArrayEvery<~lib/typedarray/Float64Array,f64>~anonymous|1 $std/typedarray/testArrayForEach<~lib/typedarray/Int8Array,i8>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Uint8Array,u8>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Int16Array,i16>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Uint16Array,u16>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Int32Array,i32>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Uint32Array,u32>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Int64Array,i64>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Uint64Array,u64>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Float32Array,f32>~anonymous|0 $std/typedarray/testArrayForEach<~lib/typedarray/Float64Array,f64>~anonymous|0) + (global $~lib/typedarray/Int8Array.BYTES_PER_ELEMENT i32 (i32.const 1)) + (global $~lib/typedarray/Uint8Array.BYTES_PER_ELEMENT i32 (i32.const 1)) + (global $~lib/typedarray/Uint8ClampedArray.BYTES_PER_ELEMENT i32 (i32.const 1)) + (global $~lib/typedarray/Int16Array.BYTES_PER_ELEMENT i32 (i32.const 2)) + (global $~lib/typedarray/Uint16Array.BYTES_PER_ELEMENT i32 (i32.const 2)) + (global $~lib/typedarray/Int32Array.BYTES_PER_ELEMENT i32 (i32.const 4)) + (global $~lib/typedarray/Uint32Array.BYTES_PER_ELEMENT i32 (i32.const 4)) + (global $~lib/typedarray/Int64Array.BYTES_PER_ELEMENT i32 (i32.const 8)) + (global $~lib/typedarray/Uint64Array.BYTES_PER_ELEMENT i32 (i32.const 8)) + (global $~lib/typedarray/Float32Array.BYTES_PER_ELEMENT i32 (i32.const 4)) + (global $~lib/typedarray/Float64Array.BYTES_PER_ELEMENT i32 (i32.const 8)) + (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) + (global $~lib/rt/tlsf/collectLock (mut i32) (i32.const 0)) + (global $~lib/gc/gc.auto (mut i32) (i32.const 1)) + (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) + (global $~lib/rt/pure/CUR (mut i32) (i32.const 0)) + (global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0)) + (global $~lib/rt/pure/END (mut i32) (i32.const 0)) + (global $~lib/argc (mut i32) (i32.const 0)) + (global $~lib/builtins/i32.MAX_VALUE i32 (i32.const 2147483647)) + (global $std/typedarray/forEachCallCount (mut i32) (i32.const 0)) + (global $std/typedarray/forEachSelf (mut i32) (i32.const 0)) + (global $std/typedarray/forEachValues i32 (i32.const 1488)) + (global $std/typedarray/testArrayReverseValues i32 (i32.const 1576)) + (global $std/typedarray/testArrayIndexOfAndLastIndexOfValues i32 (i32.const 1672)) + (global $~lib/builtins/u32.MAX_VALUE i32 (i32.const -1)) + (global $~lib/util/number/_frc_plus (mut i64) (i64.const 0)) + (global $~lib/util/number/_frc_minus (mut i64) (i64.const 0)) + (global $~lib/util/number/_exp (mut i32) (i32.const 0)) + (global $~lib/util/number/_K (mut i32) (i32.const 0)) + (global $~lib/util/number/_frc_pow (mut i64) (i64.const 0)) + (global $~lib/util/number/_exp_pow (mut i32) (i32.const 0)) + (global $std/typedarray/testArrayWrapValues i32 (i32.const 3552)) + (global $~lib/started (mut i32) (i32.const 0)) + (global $~lib/rt/__rtti_base i32 (i32.const 3568)) + (global $~lib/heap/__heap_base i32 (i32.const 3724)) + (export "__start" (func $start)) + (export "memory" (memory $0)) + (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 277 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.set $3 + local.get $3 + i32.const 16 + i32.ge_u + if (result i32) + local.get $3 + i32.const 1073741808 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 279 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $4 + local.get $3 + i32.const 4 + i32.shr_u + local.set $5 + else + i32.const 31 + local.get $3 + i32.clz + i32.sub + local.set $4 + local.get $3 + local.get $4 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $5 + local.get $4 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $4 + end + local.get $4 + i32.const 23 + i32.lt_u + if (result i32) + local.get $5 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 292 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.load offset=16 + local.set $6 + local.get $1 + i32.load offset=20 + local.set $7 + local.get $6 + if + local.get $6 + local.get $7 + i32.store offset=20 + end + local.get $7 + if + local.get $7 + local.get $6 + i32.store offset=16 + end + local.get $1 + local.get $0 + local.set $10 + local.get $4 + local.set $9 + local.get $5 + local.set $8 + local.get $10 + local.get $9 + i32.const 4 + i32.shl + local.get $8 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + i32.eq + if + local.get $0 + local.set $11 + local.get $4 + local.set $10 + local.get $5 + local.set $9 + local.get $7 + local.set $8 + local.get $11 + local.get $10 + i32.const 4 + i32.shl + local.get $9 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $8 + i32.store offset=96 + local.get $7 + i32.eqz + if + local.get $0 + local.set $9 + local.get $4 + local.set $8 + local.get $9 + local.get $8 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + local.set $9 + local.get $0 + local.set $8 + local.get $4 + local.set $11 + local.get $9 + i32.const 1 + local.get $5 + i32.shl + i32.const -1 + i32.xor + i32.and + local.tee $9 + local.set $10 + local.get $8 + local.get $11 + i32.const 2 + i32.shl + i32.add + local.get $10 + i32.store offset=4 + local.get $9 + i32.eqz + if + local.get $0 + local.get $0 + i32.load + i32.const 1 + local.get $4 + i32.shl + i32.const -1 + i32.xor + i32.and + i32.store + end + end + end + ) + (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + local.get $1 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 205 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 207 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.set $3 + local.get $3 + i32.const 16 + i32.add + local.get $3 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $4 + local.get $4 + i32.load + local.set $5 + local.get $5 + i32.const 1 + i32.and + if + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $5 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $3 + local.get $3 + i32.const 1073741808 + i32.lt_u + if + local.get $0 + local.get $4 + call $~lib/rt/tlsf/removeBlock + local.get $1 + local.get $2 + i32.const 3 + i32.and + local.get $3 + i32.or + local.tee $2 + i32.store + local.get $1 + local.set $6 + local.get $6 + i32.const 16 + i32.add + local.get $6 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $4 + local.get $4 + i32.load + local.set $5 + end + end + local.get $2 + i32.const 2 + i32.and + if + local.get $1 + local.set $6 + local.get $6 + i32.const 4 + i32.sub + i32.load + local.set $6 + local.get $6 + i32.load + local.set $3 + local.get $3 + i32.const 1 + i32.and + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 228 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $7 + local.get $7 + i32.const 1073741808 + i32.lt_u + if + local.get $0 + local.get $6 + call $~lib/rt/tlsf/removeBlock + local.get $6 + local.get $3 + i32.const 3 + i32.and + local.get $7 + i32.or + local.tee $2 + i32.store + local.get $6 + local.set $1 + end + end + local.get $4 + local.get $5 + i32.const 2 + i32.or + i32.store + local.get $2 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.set $8 + local.get $8 + i32.const 16 + i32.ge_u + if (result i32) + local.get $8 + i32.const 1073741808 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 243 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 16 + i32.add + local.get $8 + i32.add + local.get $4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 244 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 4 + i32.sub + local.get $1 + i32.store + local.get $8 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $9 + local.get $8 + i32.const 4 + i32.shr_u + local.set $10 + else + i32.const 31 + local.get $8 + i32.clz + i32.sub + local.set $9 + local.get $8 + local.get $9 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $10 + local.get $9 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $9 + end + local.get $9 + i32.const 23 + i32.lt_u + if (result i32) + local.get $10 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 260 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $7 + local.get $9 + local.set $3 + local.get $10 + local.set $6 + local.get $7 + local.get $3 + i32.const 4 + i32.shl + local.get $6 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $11 + local.get $1 + i32.const 0 + i32.store offset=16 + local.get $1 + local.get $11 + i32.store offset=20 + local.get $11 + if + local.get $11 + local.get $1 + i32.store offset=16 + end + local.get $0 + local.set $12 + local.get $9 + local.set $7 + local.get $10 + local.set $3 + local.get $1 + local.set $6 + local.get $12 + local.get $7 + i32.const 4 + i32.shl + local.get $3 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store offset=96 + local.get $0 + local.get $0 + i32.load + i32.const 1 + local.get $9 + i32.shl + i32.or + i32.store + local.get $0 + local.set $13 + local.get $9 + local.set $12 + local.get $0 + local.set $3 + local.get $9 + local.set $6 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + i32.const 1 + local.get $10 + i32.shl + i32.or + local.set $7 + local.get $13 + local.get $12 + i32.const 2 + i32.shl + i32.add + local.get $7 + i32.store offset=4 + ) + (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $1 + local.get $2 + i32.le_u + if (result i32) + local.get $1 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + if (result i32) + local.get $2 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 386 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $3 + local.get $3 + i32.load offset=1568 + local.set $4 + i32.const 0 + local.set $5 + local.get $4 + if + local.get $1 + local.get $4 + i32.const 16 + i32.add + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 396 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 16 + i32.sub + local.get $4 + i32.eq + if + local.get $1 + i32.const 16 + i32.sub + local.set $1 + local.get $4 + i32.load + local.set $5 + else + nop + end + else + local.get $1 + local.get $0 + i32.const 1572 + i32.add + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 408 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + end + local.get $2 + local.get $1 + i32.sub + local.set $6 + local.get $6 + i32.const 48 + i32.lt_u + if + i32.const 0 + return + end + local.get $6 + i32.const 16 + i32.const 1 + i32.shl + i32.sub + local.set $7 + local.get $1 + local.set $8 + local.get $8 + local.get $7 + i32.const 1 + i32.or + local.get $5 + i32.const 2 + i32.and + i32.or + i32.store + local.get $8 + i32.const 0 + i32.store offset=16 + local.get $8 + i32.const 0 + i32.store offset=20 + local.get $1 + local.get $6 + i32.add + i32.const 16 + i32.sub + local.set $4 + local.get $4 + i32.const 0 + i32.const 2 + i32.or + i32.store + local.get $0 + local.set $9 + local.get $4 + local.set $3 + local.get $9 + local.get $3 + i32.store offset=1568 + local.get $0 + local.get $8 + call $~lib/rt/tlsf/insertBlock + i32.const 1 + ) + (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + global.get $~lib/heap/__heap_base + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.set $0 + memory.size + local.set $1 + local.get $0 + i32.const 1572 + i32.add + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $2 + local.get $2 + local.get $1 + i32.gt_s + if (result i32) + local.get $2 + local.get $1 + i32.sub + memory.grow + i32.const 0 + i32.lt_s + else + i32.const 0 + end + if + unreachable + end + local.get $0 + local.set $3 + local.get $3 + i32.const 0 + i32.store + local.get $3 + local.set $5 + i32.const 0 + local.set $4 + local.get $5 + local.get $4 + i32.store offset=1568 + block $break|0 + i32.const 0 + local.set $5 + loop $loop|0 + local.get $5 + i32.const 23 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $3 + local.set $7 + local.get $5 + local.set $6 + i32.const 0 + local.set $4 + local.get $7 + local.get $6 + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store offset=4 + block $break|1 + i32.const 0 + local.set $7 + loop $loop|1 + local.get $7 + i32.const 16 + i32.lt_u + i32.eqz + br_if $break|1 + local.get $3 + local.set $9 + local.get $5 + local.set $8 + local.get $7 + local.set $6 + i32.const 0 + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $6 + i32.add + i32.const 2 + i32.shl + i32.add + local.get $4 + i32.store offset=96 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + local.get $0 + i32.const 1572 + i32.add + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + memory.size + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + drop + local.get $3 + global.set $~lib/rt/tlsf/ROOT + ) + (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.const 1073741808 + i32.ge_u + if + i32.const 176 + i32.const 128 + i32.const 457 + i32.const 29 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 15 + i32.add + i32.const 15 + i32.const -1 + i32.xor + i32.and + local.tee $1 + i32.const 16 + local.tee $2 + local.get $1 + local.get $2 + i32.gt_u + select + ) + (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $1 + i32.const 256 + i32.lt_u + if + i32.const 0 + local.set $2 + local.get $1 + i32.const 4 + i32.shr_u + local.set $3 + else + local.get $1 + i32.const 536870904 + i32.lt_u + if (result i32) + local.get $1 + i32.const 1 + i32.const 27 + local.get $1 + i32.clz + i32.sub + i32.shl + i32.add + i32.const 1 + i32.sub + else + local.get $1 + end + local.set $4 + i32.const 31 + local.get $4 + i32.clz + i32.sub + local.set $2 + local.get $4 + local.get $2 + i32.const 4 + i32.sub + i32.shr_u + i32.const 1 + i32.const 4 + i32.shl + i32.xor + local.set $3 + local.get $2 + i32.const 8 + i32.const 1 + i32.sub + i32.sub + local.set $2 + end + local.get $2 + i32.const 23 + i32.lt_u + if (result i32) + local.get $3 + i32.const 16 + i32.lt_u + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 338 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $5 + local.get $2 + local.set $4 + local.get $5 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + i32.const 0 + i32.const -1 + i32.xor + local.get $3 + i32.shl + i32.and + local.set $6 + i32.const 0 + local.set $7 + local.get $6 + i32.eqz + if + local.get $0 + i32.load + i32.const 0 + i32.const -1 + i32.xor + local.get $2 + i32.const 1 + i32.add + i32.shl + i32.and + local.set $5 + local.get $5 + i32.eqz + if + i32.const 0 + local.set $7 + else + local.get $5 + i32.ctz + local.set $2 + local.get $0 + local.set $8 + local.get $2 + local.set $4 + local.get $8 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load offset=4 + local.set $6 + local.get $6 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 351 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.set $9 + local.get $2 + local.set $8 + local.get $6 + i32.ctz + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $4 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $7 + end + else + local.get $0 + local.set $9 + local.get $2 + local.set $8 + local.get $6 + i32.ctz + local.set $4 + local.get $9 + local.get $8 + i32.const 4 + i32.shl + local.get $4 + i32.add + i32.const 2 + i32.shl + i32.add + i32.load offset=96 + local.set $7 + end + local.get $7 + ) + (func $~lib/rt/pure/markGray (; 11 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 268435456 + i32.ne + if + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 268435456 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 2 + call $~lib/rt/__visit_members + end + ) + (func $~lib/rt/tlsf/freeBlock (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + local.get $1 + i32.load + local.set $2 + local.get $2 + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $2 + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $1 + call $~lib/rt/tlsf/insertBlock + local.get $1 + call $~lib/rt/rtrace/onfree + ) + (func $~lib/rt/pure/scanBlack (; 13 ;) (type $FUNCSIG$vi) (param $0 i32) + local.get $0 + local.get $0 + i32.load offset=4 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 0 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 4 + call $~lib/rt/__visit_members + ) + (func $~lib/rt/pure/scan (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 268435456 + i32.eq + if + local.get $1 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + if + local.get $0 + call $~lib/rt/pure/scanBlack + else + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 536870912 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 3 + call $~lib/rt/__visit_members + end + end + ) + (func $~lib/rt/pure/collectWhite (; 15 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 1879048192 + i32.and + i32.const 536870912 + i32.eq + if (result i32) + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + else + i32.const 0 + end + if + local.get $0 + local.get $1 + i32.const 1879048192 + i32.const -1 + i32.xor + i32.and + i32.const 0 + i32.or + i32.store offset=4 + local.get $0 + i32.const 16 + i32.add + i32.const 5 + call $~lib/rt/__visit_members + global.get $~lib/rt/tlsf/ROOT + local.get $0 + call $~lib/rt/tlsf/freeBlock + end + ) + (func $~lib/rt/pure/__collect (; 16 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $~lib/rt/pure/ROOTS + local.set $0 + local.get $0 + local.set $1 + block $break|0 + local.get $1 + local.set $2 + global.get $~lib/rt/pure/CUR + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + i32.load + local.set $4 + local.get $4 + i32.load offset=4 + local.set $5 + local.get $5 + i32.const 1879048192 + i32.and + i32.const 805306368 + i32.eq + if (result i32) + local.get $5 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + else + i32.const 0 + end + if + local.get $4 + call $~lib/rt/pure/markGray + local.get $1 + local.get $4 + i32.store + local.get $1 + i32.const 4 + i32.add + local.set $1 + else + local.get $5 + i32.const 1879048192 + i32.and + i32.const 0 + i32.eq + if (result i32) + local.get $5 + i32.const 268435455 + i32.and + i32.eqz + else + i32.const 0 + end + if + global.get $~lib/rt/tlsf/ROOT + local.get $4 + call $~lib/rt/tlsf/freeBlock + else + local.get $4 + local.get $5 + i32.const -2147483648 + i32.const -1 + i32.xor + i32.and + i32.store offset=4 + end + end + local.get $2 + i32.const 4 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + local.get $1 + global.set $~lib/rt/pure/CUR + block $break|1 + local.get $0 + local.set $5 + loop $loop|1 + local.get $5 + local.get $1 + i32.lt_u + i32.eqz + br_if $break|1 + local.get $5 + i32.load + call $~lib/rt/pure/scan + local.get $5 + i32.const 4 + i32.add + local.set $5 + br $loop|1 + end + unreachable + end + block $break|2 + local.get $0 + local.set $5 + loop $loop|2 + local.get $5 + local.get $1 + i32.lt_u + i32.eqz + br_if $break|2 + local.get $5 + i32.load + local.set $4 + local.get $4 + local.get $4 + i32.load offset=4 + i32.const -2147483648 + i32.const -1 + i32.xor + i32.and + i32.store offset=4 + local.get $4 + call $~lib/rt/pure/collectWhite + local.get $5 + i32.const 4 + i32.add + local.set $5 + br $loop|2 + end + unreachable + end + local.get $0 + global.set $~lib/rt/pure/CUR + ) + (func $~lib/rt/tlsf/growMemory (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $1 + i32.const 536870904 + i32.lt_u + if + local.get $1 + i32.const 1 + i32.const 27 + local.get $1 + i32.clz + i32.sub + i32.shl + i32.const 1 + i32.sub + i32.add + local.set $1 + end + memory.size + local.set $2 + local.get $1 + i32.const 16 + local.get $2 + i32.const 16 + i32.shl + i32.const 16 + i32.sub + local.get $0 + local.set $3 + local.get $3 + i32.load offset=1568 + i32.ne + i32.shl + i32.add + local.set $1 + local.get $1 + i32.const 65535 + i32.add + i32.const 65535 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.shr_u + local.set $4 + local.get $2 + local.tee $3 + local.get $4 + local.tee $5 + local.get $3 + local.get $5 + i32.gt_s + select + local.set $6 + local.get $6 + memory.grow + i32.const 0 + i32.lt_s + if + local.get $4 + memory.grow + i32.const 0 + i32.lt_s + if + unreachable + end + end + memory.size + local.set $7 + local.get $0 + local.get $2 + i32.const 16 + i32.shl + local.get $7 + i32.const 16 + i32.shl + call $~lib/rt/tlsf/addMemory + drop + ) + (func $~lib/rt/tlsf/prepareBlock (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.load + local.set $3 + local.get $2 + i32.const 15 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 365 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const -1 + i32.xor + i32.and + local.get $2 + i32.sub + local.set $4 + local.get $4 + i32.const 32 + i32.ge_u + if + local.get $1 + local.get $2 + local.get $3 + i32.const 2 + i32.and + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.get $2 + i32.add + local.set $5 + local.get $5 + local.get $4 + i32.const 16 + i32.sub + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $5 + call $~lib/rt/tlsf/insertBlock + else + local.get $1 + local.get $3 + i32.const 1 + i32.const -1 + i32.xor + i32.and + i32.store + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + i32.load + i32.const 2 + i32.const -1 + i32.xor + i32.and + i32.store + end + ) + (func $~lib/rt/tlsf/allocateBlock (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/tlsf/collectLock + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 486 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/rt/tlsf/prepareSize + local.set $2 + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + global.get $~lib/gc/gc.auto + if + i32.const 1 + global.set $~lib/rt/tlsf/collectLock + call $~lib/rt/pure/__collect + i32.const 0 + global.set $~lib/rt/tlsf/collectLock + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + local.get $0 + local.get $2 + call $~lib/rt/tlsf/growMemory + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 498 + i32.const 19 + call $~lib/builtins/abort + unreachable + end + end + else + local.get $0 + local.get $2 + call $~lib/rt/tlsf/growMemory + local.get $0 + local.get $2 + call $~lib/rt/tlsf/searchBlock + local.set $3 + local.get $3 + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 503 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + end + end + local.get $3 + i32.load + i32.const -4 + i32.and + local.get $2 + i32.ge_u + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 506 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.store offset=4 + local.get $3 + local.get $1 + i32.store offset=12 + local.get $0 + local.get $3 + call $~lib/rt/tlsf/removeBlock + local.get $0 + local.get $3 + local.get $2 + call $~lib/rt/tlsf/prepareBlock + local.get $3 + call $~lib/rt/rtrace/onalloc + local.get $3 + ) + (func $~lib/rt/tlsf/__alloc (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + global.get $~lib/rt/tlsf/ROOT + local.set $2 + local.get $2 + i32.eqz + if + call $~lib/rt/tlsf/initializeRoot + global.get $~lib/rt/tlsf/ROOT + local.set $2 + end + local.get $2 + local.get $0 + call $~lib/rt/tlsf/allocateBlock + local.set $3 + local.get $3 + local.get $1 + i32.store offset=8 + local.get $3 + i32.const 16 + i32.add + ) + (func $~lib/memory/memory.fill (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + block $~lib/util/memory/memset|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 1 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 2 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.get $4 + i32.store8 + local.get $5 + i32.const 2 + i32.add + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 2 + i32.sub + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 3 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 6 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 3 + i32.add + local.get $4 + i32.store8 + local.get $5 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.get $4 + i32.store8 + local.get $3 + i32.const 8 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + i32.const 0 + local.get $5 + i32.sub + i32.const 3 + i32.and + local.set $6 + local.get $5 + local.get $6 + i32.add + local.set $5 + local.get $3 + local.get $6 + i32.sub + local.set $3 + local.get $3 + i32.const -4 + i32.and + local.set $3 + i32.const -1 + i32.const 255 + i32.div_u + local.get $4 + i32.const 255 + i32.and + i32.mul + local.set $7 + local.get $5 + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 4 + i32.sub + local.get $7 + i32.store + local.get $3 + i32.const 8 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 4 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 8 + i32.add + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 12 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 8 + i32.sub + local.get $7 + i32.store + local.get $3 + i32.const 24 + i32.le_u + if + br $~lib/util/memory/memset|inlined.0 + end + local.get $5 + i32.const 12 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 16 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 20 + i32.add + local.get $7 + i32.store + local.get $5 + i32.const 24 + i32.add + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 28 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 24 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 20 + i32.sub + local.get $7 + i32.store + local.get $5 + local.get $3 + i32.add + i32.const 16 + i32.sub + local.get $7 + i32.store + i32.const 24 + local.get $5 + i32.const 4 + i32.and + i32.add + local.set $6 + local.get $5 + local.get $6 + i32.add + local.set $5 + local.get $3 + local.get $6 + i32.sub + local.set $3 + local.get $7 + i64.extend_i32_u + local.get $7 + i64.extend_i32_u + i64.const 32 + i64.shl + i64.or + local.set $8 + block $break|0 + loop $continue|0 + local.get $3 + i32.const 32 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $5 + local.get $8 + i64.store + local.get $5 + i32.const 8 + i32.add + local.get $8 + i64.store + local.get $5 + i32.const 16 + i32.add + local.get $8 + i64.store + local.get $5 + i32.const 24 + i32.add + local.get $8 + i64.store + local.get $3 + i32.const 32 + i32.sub + local.set $3 + local.get $5 + i32.const 32 + i32.add + local.set $5 + br $continue|0 + end + unreachable + end + end + ) + (func $~lib/rt/pure/increment (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const -268435456 + i32.and + local.get $1 + i32.const 1 + i32.add + i32.const -268435456 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 104 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + i32.const 1 + i32.add + i32.store offset=4 + local.get $0 + call $~lib/rt/rtrace/onincrement + local.get $0 + i32.load + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 107 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/rt/pure/__retain (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.gt_u + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/pure/increment + end + local.get $0 + ) + (func $~lib/rt/__typeinfo (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + global.get $~lib/rt/__rtti_base + local.set $1 + local.get $0 + local.get $1 + i32.load + i32.gt_u + if + i32.const 280 + i32.const 336 + i32.const 22 + i32.const 27 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 4 + i32.add + local.get $0 + i32.const 8 + i32.mul + i32.add + i32.load + ) + (func $~lib/util/memory/memcpy (; 25 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + block $break|0 + loop $continue|0 + local.get $2 + if (result i32) + local.get $1 + i32.const 3 + i32.and + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + br $continue|0 + end + unreachable + end + local.get $0 + i32.const 3 + i32.and + i32.const 0 + i32.eq + if + block $break|1 + loop $continue|1 + local.get $2 + i32.const 16 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.get $1 + i32.const 8 + i32.add + i32.load + i32.store + local.get $0 + i32.const 12 + i32.add + local.get $1 + i32.const 12 + i32.add + i32.load + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|1 + end + unreachable + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.get $1 + i32.const 4 + i32.add + i32.load + i32.store + local.get $0 + i32.const 8 + i32.add + local.set $0 + local.get $1 + i32.const 8 + i32.add + local.set $1 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.get $1 + i32.load + i32.store + local.get $0 + i32.const 4 + i32.add + local.set $0 + local.get $1 + i32.const 4 + i32.add + local.set $1 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.get $1 + i32.load16_u + i32.store16 + local.get $0 + i32.const 2 + i32.add + local.set $0 + local.get $1 + i32.const 2 + i32.add + local.set $1 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + return + end + local.get $2 + i32.const 32 + i32.ge_u + if + block $break|2 + block $case2|2 + block $case1|2 + block $case0|2 + local.get $0 + i32.const 3 + i32.and + local.set $5 + local.get $5 + i32.const 1 + i32.eq + br_if $case0|2 + local.get $5 + i32.const 2 + i32.eq + br_if $case1|2 + local.get $5 + i32.const 3 + i32.eq + br_if $case2|2 + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 3 + i32.sub + local.set $2 + block $break|3 + loop $continue|3 + local.get $2 + i32.const 17 + i32.ge_u + i32.eqz + br_if $break|3 + local.get $1 + i32.const 1 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 5 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 9 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 24 + i32.shr_u + local.get $4 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 13 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 24 + i32.shr_u + local.get $3 + i32.const 8 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|3 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + block $break|4 + loop $continue|4 + local.get $2 + i32.const 18 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $1 + i32.const 2 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 6 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 10 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 16 + i32.shr_u + local.get $4 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 14 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 16 + i32.shr_u + local.get $3 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|4 + end + unreachable + end + br $break|2 + end + local.get $1 + i32.load + local.set $3 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $2 + i32.const 1 + i32.sub + local.set $2 + block $break|5 + loop $continue|5 + local.get $2 + i32.const 19 + i32.ge_u + i32.eqz + br_if $break|5 + local.get $1 + i32.const 3 + i32.add + i32.load + local.set $4 + local.get $0 + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 7 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 4 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 11 + i32.add + i32.load + local.set $4 + local.get $0 + i32.const 8 + i32.add + local.get $3 + i32.const 8 + i32.shr_u + local.get $4 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 15 + i32.add + i32.load + local.set $3 + local.get $0 + i32.const 12 + i32.add + local.get $4 + i32.const 8 + i32.shr_u + local.get $3 + i32.const 24 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 16 + i32.add + local.set $1 + local.get $0 + i32.const 16 + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.sub + local.set $2 + br $continue|5 + end + unreachable + end + br $break|2 + end + end + local.get $2 + i32.const 16 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 8 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 4 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 2 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + local.get $2 + i32.const 1 + i32.and + if + local.get $0 + local.tee $5 + i32.const 1 + i32.add + local.set $0 + local.get $5 + local.get $1 + local.tee $5 + i32.const 1 + i32.add + local.set $1 + local.get $5 + i32.load8_u + i32.store8 + end + ) + (func $~lib/memory/memory.copy (; 26 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + block $~lib/util/memory/memmove|inlined.0 + local.get $0 + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + local.get $4 + i32.eq + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $4 + local.get $3 + i32.add + local.get $5 + i32.le_u + if (result i32) + i32.const 1 + else + local.get $5 + local.get $3 + i32.add + local.get $4 + i32.le_u + end + if + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/memory/memcpy + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $4 + i32.lt_u + if + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|0 + loop $continue|0 + local.get $5 + i32.const 7 + i32.and + i32.eqz + br_if $break|0 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $3 + i32.const 1 + i32.sub + local.set $3 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + br $continue|0 + end + unreachable + end + block $break|1 + loop $continue|1 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|1 + local.get $5 + local.get $4 + i64.load + i64.store + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + i32.const 8 + i32.add + local.set $5 + local.get $4 + i32.const 8 + i32.add + local.set $4 + br $continue|1 + end + unreachable + end + end + block $break|2 + loop $continue|2 + local.get $3 + i32.eqz + br_if $break|2 + local.get $5 + local.tee $6 + i32.const 1 + i32.add + local.set $5 + local.get $6 + local.get $4 + local.tee $6 + i32.const 1 + i32.add + local.set $4 + local.get $6 + i32.load8_u + i32.store8 + local.get $3 + i32.const 1 + i32.sub + local.set $3 + br $continue|2 + end + unreachable + end + else + local.get $4 + i32.const 7 + i32.and + local.get $5 + i32.const 7 + i32.and + i32.eq + if + block $break|3 + loop $continue|3 + local.get $5 + local.get $3 + i32.add + i32.const 7 + i32.and + i32.eqz + br_if $break|3 + local.get $3 + i32.eqz + if + br $~lib/util/memory/memmove|inlined.0 + end + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $3 + i32.const 8 + i32.ge_u + i32.eqz + br_if $break|4 + local.get $3 + i32.const 8 + i32.sub + local.set $3 + local.get $5 + local.get $3 + i32.add + local.get $4 + local.get $3 + i32.add + i64.load + i64.store + br $continue|4 + end + unreachable + end + end + block $break|5 + loop $continue|5 + local.get $3 + i32.eqz + br_if $break|5 + local.get $5 + local.get $3 + i32.const 1 + i32.sub + local.tee $3 + i32.add + local.get $4 + local.get $3 + i32.add + i32.load8_u + i32.store8 + br $continue|5 + end + unreachable + end + end + end + ) + (func $~lib/rt/tlsf/__free (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 593 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 594 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/tlsf/ROOT + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/tlsf/freeBlock + ) + (func $~lib/rt/pure/growRoots (; 28 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $~lib/rt/pure/ROOTS + local.set $0 + global.get $~lib/rt/pure/CUR + local.get $0 + i32.sub + local.set $1 + local.get $1 + i32.const 2 + i32.mul + local.tee $2 + i32.const 64 + i32.const 2 + i32.shl + local.tee $3 + local.get $2 + local.get $3 + i32.gt_u + select + local.set $4 + local.get $4 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $5 + i32.const 16 + i32.sub + call $~lib/rt/rtrace/onfree + local.get $5 + local.get $0 + local.get $1 + call $~lib/memory/memory.copy + local.get $0 + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/rtrace/onalloc + local.get $0 + call $~lib/rt/tlsf/__free + end + local.get $5 + global.set $~lib/rt/pure/ROOTS + local.get $5 + local.get $1 + i32.add + global.set $~lib/rt/pure/CUR + local.get $5 + local.get $4 + i32.add + global.set $~lib/rt/pure/END + ) + (func $~lib/rt/pure/appendRoot (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + global.get $~lib/rt/pure/CUR + local.set $1 + local.get $1 + global.get $~lib/rt/pure/END + i32.ge_u + if + call $~lib/rt/pure/growRoots + global.get $~lib/rt/pure/CUR + local.set $1 + end + local.get $1 + local.get $0 + i32.store + local.get $1 + i32.const 4 + i32.add + global.set $~lib/rt/pure/CUR + ) + (func $~lib/rt/pure/decrement (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + (local $2 i32) + local.get $0 + i32.load offset=4 + local.set $1 + local.get $1 + i32.const 268435455 + i32.and + local.set $2 + local.get $0 + call $~lib/rt/rtrace/ondecrement + local.get $0 + i32.load + i32.const 1 + i32.and + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 115 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + i32.eq + if + local.get $0 + i32.const 16 + i32.add + i32.const 1 + call $~lib/rt/__visit_members + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + if + global.get $~lib/rt/tlsf/ROOT + local.get $0 + call $~lib/rt/tlsf/freeBlock + else + local.get $0 + i32.const -2147483648 + i32.const 0 + i32.or + i32.const 0 + i32.or + i32.store offset=4 + end + else + local.get $2 + i32.const 0 + i32.gt_u + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 124 + i32.const 15 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=8 + call $~lib/rt/__typeinfo + i32.const 16 + i32.and + i32.eqz + if + local.get $0 + i32.const -2147483648 + i32.const 805306368 + i32.or + local.get $2 + i32.const 1 + i32.sub + i32.or + i32.store offset=4 + local.get $1 + i32.const -2147483648 + i32.and + i32.eqz + if + local.get $0 + call $~lib/rt/pure/appendRoot + end + else + local.get $0 + local.get $1 + i32.const 268435455 + i32.const -1 + i32.xor + i32.and + local.get $2 + i32.const 1 + i32.sub + i32.or + i32.store offset=4 + end + end + ) + (func $~lib/rt/pure/__release (; 31 ;) (type $FUNCSIG$vi) (param $0 i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.gt_u + if + local.get $0 + i32.const 16 + i32.sub + call $~lib/rt/pure/decrement + end + ) + (func $~lib/arraybuffer/ArrayBufferView#constructor (; 32 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $1 + i32.const 1073741808 + local.get $2 + i32.shr_u + i32.gt_u + if + i32.const 24 + i32.const 72 + i32.const 22 + i32.const 56 + call $~lib/builtins/abort + unreachable + end + local.get $1 + local.get $2 + i32.shl + local.tee $1 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $3 + local.get $3 + i32.const 0 + local.get $1 + call $~lib/memory/memory.fill + local.get $0 + i32.eqz + if + i32.const 12 + i32.const 2 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $0 + end + local.get $0 + i32.const 0 + i32.store + local.get $0 + i32.const 0 + i32.store offset=4 + local.get $0 + i32.const 0 + i32.store offset=8 + local.get $0 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + i32.load + local.tee $4 + i32.ne + if + local.get $5 + call $~lib/rt/pure/__retain + drop + local.get $4 + call $~lib/rt/pure/__release + end + local.get $5 + i32.store + local.get $0 + local.get $3 + i32.store offset=4 + local.get $0 + local.get $1 + i32.store offset=8 + local.get $0 + ) + (func $~lib/typedarray/Int8Array#constructor (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 3 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 0 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $0 + i32.load + i32.sub + ) + (func $~lib/typedarray/Int8Array#get:length (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=8 + ) + (func $~lib/typedarray/Uint8Array#constructor (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 4 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 0 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/typedarray/Uint8Array#get:length (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=8 + ) + (func $~lib/typedarray/Uint8ClampedArray#constructor (; 38 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 5 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 0 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/typedarray/Uint8ClampedArray#get:length (; 39 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=8 + ) + (func $~lib/typedarray/Int16Array#constructor (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 6 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 1 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/typedarray/Int16Array#get:length (; 41 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=8 + i32.const 1 + i32.shr_u + ) + (func $~lib/typedarray/Uint16Array#constructor (; 42 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 7 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 1 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/typedarray/Uint16Array#get:length (; 43 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=8 + i32.const 1 + i32.shr_u + ) + (func $~lib/typedarray/Int32Array#constructor (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 8 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 2 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/typedarray/Int32Array#get:length (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + ) + (func $~lib/typedarray/Uint32Array#constructor (; 46 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 9 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 2 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/typedarray/Uint32Array#get:length (; 47 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + ) + (func $~lib/typedarray/Int64Array#constructor (; 48 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 10 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 3 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/typedarray/Int64Array#get:length (; 49 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + ) + (func $~lib/typedarray/Uint64Array#constructor (; 50 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 11 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 3 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/typedarray/Uint64Array#get:length (; 51 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + ) + (func $~lib/typedarray/Float32Array#constructor (; 52 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 12 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 2 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/typedarray/Float32Array#get:length (; 53 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + ) + (func $~lib/typedarray/Float64Array#constructor (; 54 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + if (result i32) + local.get $0 + else + i32.const 12 + i32.const 13 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + end + local.get $1 + i32.const 3 + call $~lib/arraybuffer/ArrayBufferView#constructor + local.set $0 + local.get $0 + ) + (func $~lib/typedarray/Float64Array#get:length (; 55 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + ) + (func $std/typedarray/testInstantiate (; 56 ;) (type $FUNCSIG$vi) (param $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + i32.const 0 + local.get $0 + call $~lib/typedarray/Int8Array#constructor + local.set $1 + local.get $1 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 32 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.load offset=8 + local.get $0 + i32.const 1 + i32.mul + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 33 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/typedarray/Int8Array#get:length + local.get $0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 34 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.get $0 + call $~lib/typedarray/Uint8Array#constructor + local.set $2 + local.get $2 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 37 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.load offset=8 + local.get $0 + i32.const 1 + i32.mul + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 38 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/typedarray/Uint8Array#get:length + local.get $0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 39 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.get $0 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.set $3 + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 42 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.load offset=8 + local.get $0 + i32.const 1 + i32.mul + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 43 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.get $0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 44 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.get $0 + call $~lib/typedarray/Int16Array#constructor + local.set $4 + local.get $4 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 47 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.load offset=8 + local.get $0 + i32.const 2 + i32.mul + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 48 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $4 + call $~lib/typedarray/Int16Array#get:length + local.get $0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 49 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.get $0 + call $~lib/typedarray/Uint16Array#constructor + local.set $5 + local.get $5 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 52 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.load offset=8 + local.get $0 + i32.const 2 + i32.mul + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 53 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + local.get $0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 54 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.get $0 + call $~lib/typedarray/Int32Array#constructor + local.set $6 + local.get $6 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 57 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.load offset=8 + local.get $0 + i32.const 4 + i32.mul + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 58 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $6 + call $~lib/typedarray/Int32Array#get:length + local.get $0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 59 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.get $0 + call $~lib/typedarray/Uint32Array#constructor + local.set $7 + local.get $7 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 62 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.load offset=8 + local.get $0 + i32.const 4 + i32.mul + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 63 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + call $~lib/typedarray/Uint32Array#get:length + local.get $0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 64 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.get $0 + call $~lib/typedarray/Int64Array#constructor + local.set $8 + local.get $8 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 67 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.load offset=8 + local.get $0 + i32.const 8 + i32.mul + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 68 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + call $~lib/typedarray/Int64Array#get:length + local.get $0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 69 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.get $0 + call $~lib/typedarray/Uint64Array#constructor + local.set $9 + local.get $9 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 72 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $9 + i32.load offset=8 + local.get $0 + i32.const 8 + i32.mul + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 73 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $9 + call $~lib/typedarray/Uint64Array#get:length + local.get $0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 74 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.get $0 + call $~lib/typedarray/Float32Array#constructor + local.set $10 + local.get $10 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 77 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $10 + i32.load offset=8 + local.get $0 + i32.const 4 + i32.mul + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 78 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $10 + call $~lib/typedarray/Float32Array#get:length + local.get $0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 79 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + local.get $0 + call $~lib/typedarray/Float64Array#constructor + local.set $11 + local.get $11 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 82 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $11 + i32.load offset=8 + local.get $0 + i32.const 8 + i32.mul + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 83 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $11 + call $~lib/typedarray/Float64Array#get:length + local.get $0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 84 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + local.get $10 + call $~lib/rt/pure/__release + local.get $11 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int32Array#__set (; 57 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 655 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $2 + i32.store + ) + (func $~lib/typedarray/Int32Array#__get (; 58 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 644 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + ) + (func $~lib/typedarray/Int32Array#subarray (; 59 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/typedarray/Int32Array#get:length + local.set $6 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $4 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $4 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $4 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $3 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $3 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $3 + local.get $3 + local.tee $7 + local.get $4 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + local.set $3 + i32.const 12 + i32.const 8 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $5 + i32.load + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $7 + local.get $3 + local.get $4 + i32.sub + i32.const 2 + i32.shl + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Float64Array#__set (; 60 ;) (type $FUNCSIG$viid) (param $0 i32) (param $1 i32) (param $2 f64) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 1275 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + local.get $2 + f64.store + ) + (func $~lib/typedarray/Float64Array#subarray (; 61 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/typedarray/Float64Array#get:length + local.set $6 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $4 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $4 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $4 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $3 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $3 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $3 + local.get $3 + local.tee $7 + local.get $4 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + local.set $3 + i32.const 12 + i32.const 13 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $5 + i32.load + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 3 + i32.shl + i32.add + i32.store offset=4 + local.get $7 + local.get $3 + local.get $4 + i32.sub + i32.const 3 + i32.shl + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/util/sort/insertionSort (; 62 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 f64) + (local $5 i32) + (local $6 f64) + (local $7 i32) + block $break|0 + i32.const 0 + local.set $3 + loop $loop|0 + local.get $3 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $3 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + block $break|1 + loop $continue|1 + local.get $5 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $6 + i32.const 2 + global.set $~lib/argc + local.get $4 + local.get $6 + local.get $2 + call_indirect (type $FUNCSIG$idd) + i32.const 0 + i32.lt_s + if + local.get $0 + local.get $5 + local.tee $7 + i32.const 1 + i32.sub + local.set $5 + local.get $7 + i32.const 1 + i32.add + i32.const 3 + i32.shl + i32.add + local.get $6 + f64.store + else + br $break|1 + end + br $continue|1 + end + unreachable + end + local.get $0 + local.get $5 + i32.const 1 + i32.add + i32.const 3 + i32.shl + i32.add + local.get $4 + f64.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + br $loop|0 + end + unreachable + end + ) + (func $~lib/util/sort/weakHeapSort (; 63 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 f64) + (local $9 f64) + (local $10 f64) + local.get $1 + i32.const 31 + i32.add + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + local.set $3 + local.get $3 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $4 + local.get $4 + i32.const 0 + local.get $3 + call $~lib/memory/memory.fill + block $break|0 + local.get $1 + i32.const 1 + i32.sub + local.set $5 + loop $loop|0 + local.get $5 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|0 + local.get $5 + local.set $6 + block $break|1 + loop $continue|1 + local.get $6 + i32.const 1 + i32.and + local.get $4 + local.get $6 + i32.const 6 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + local.get $6 + i32.const 1 + i32.shr_s + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + i32.eq + i32.eqz + br_if $break|1 + local.get $6 + i32.const 1 + i32.shr_s + local.set $6 + br $continue|1 + end + unreachable + end + local.get $6 + i32.const 1 + i32.shr_s + local.set $7 + local.get $0 + local.get $7 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $8 + local.get $0 + local.get $5 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $9 + i32.const 2 + global.set $~lib/argc + local.get $8 + local.get $9 + local.get $2 + call_indirect (type $FUNCSIG$idd) + i32.const 0 + i32.lt_s + if + local.get $4 + local.get $5 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + local.get $4 + local.get $5 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + i32.const 1 + local.get $5 + i32.const 31 + i32.and + i32.shl + i32.xor + i32.store + local.get $0 + local.get $5 + i32.const 3 + i32.shl + i32.add + local.get $8 + f64.store + local.get $0 + local.get $7 + i32.const 3 + i32.shl + i32.add + local.get $9 + f64.store + end + local.get $5 + i32.const 1 + i32.sub + local.set $5 + br $loop|0 + end + unreachable + end + block $break|2 + local.get $1 + i32.const 1 + i32.sub + local.set $7 + loop $loop|2 + local.get $7 + i32.const 2 + i32.ge_s + i32.eqz + br_if $break|2 + local.get $0 + f64.load + local.set $9 + local.get $0 + local.get $0 + local.get $7 + i32.const 3 + i32.shl + i32.add + f64.load + f64.store + local.get $0 + local.get $7 + i32.const 3 + i32.shl + i32.add + local.get $9 + f64.store + i32.const 1 + local.set $6 + block $break|3 + loop $continue|3 + local.get $6 + i32.const 1 + i32.shl + local.get $4 + local.get $6 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + local.get $6 + i32.const 31 + i32.and + i32.shr_u + i32.const 1 + i32.and + i32.add + local.tee $5 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|3 + local.get $5 + local.set $6 + br $continue|3 + end + unreachable + end + block $break|4 + loop $continue|4 + local.get $6 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|4 + local.get $0 + f64.load + local.set $9 + local.get $0 + local.get $6 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $8 + i32.const 2 + global.set $~lib/argc + local.get $9 + local.get $8 + local.get $2 + call_indirect (type $FUNCSIG$idd) + i32.const 0 + i32.lt_s + if + local.get $4 + local.get $6 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + local.get $4 + local.get $6 + i32.const 5 + i32.shr_s + i32.const 2 + i32.shl + i32.add + i32.load + i32.const 1 + local.get $6 + i32.const 31 + i32.and + i32.shl + i32.xor + i32.store + local.get $0 + local.get $6 + i32.const 3 + i32.shl + i32.add + local.get $9 + f64.store + local.get $0 + local.get $8 + f64.store + end + local.get $6 + i32.const 1 + i32.shr_s + local.set $6 + br $continue|4 + end + unreachable + end + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|2 + end + unreachable + end + local.get $4 + call $~lib/rt/tlsf/__free + local.get $0 + f64.load offset=8 + local.set $10 + local.get $0 + local.get $0 + f64.load + f64.store offset=8 + local.get $0 + local.get $10 + f64.store + ) + (func $~lib/typedarray/Float64Array#sort (; 64 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 f64) + (local $7 f64) + (local $8 i32) + (local $9 i32) + (local $10 i32) + block $~lib/typedarray/SORT<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Float64Array#get:length + local.set $4 + local.get $4 + i32.const 1 + i32.le_s + if + local.get $3 + local.set $5 + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + br $~lib/typedarray/SORT<~lib/typedarray/Float64Array,f64>|inlined.0 + end + local.get $3 + i32.load offset=4 + local.set $5 + local.get $4 + i32.const 2 + i32.eq + if + local.get $5 + f64.load offset=8 + local.set $6 + local.get $5 + f64.load + local.set $7 + i32.const 2 + global.set $~lib/argc + local.get $6 + local.get $7 + local.get $2 + call_indirect (type $FUNCSIG$idd) + i32.const 0 + i32.lt_s + if + local.get $5 + local.get $7 + f64.store offset=8 + local.get $5 + local.get $6 + f64.store + end + local.get $3 + local.set $8 + local.get $3 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/SORT<~lib/typedarray/Float64Array,f64>|inlined.0 + end + local.get $5 + local.set $10 + local.get $4 + local.set $9 + local.get $2 + local.set $8 + local.get $9 + i32.const 256 + i32.lt_s + if + local.get $10 + local.get $9 + local.get $8 + call $~lib/util/sort/insertionSort + else + local.get $10 + local.get $9 + local.get $8 + call $~lib/util/sort/weakHeapSort + end + local.get $3 + end + ) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 65 ;) (type $FUNCSIG$idd) (param $0 f64) (param $1 f64) (result i32) + (local $2 i64) + (local $3 i64) + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $1 + i64.reinterpret_f64 + local.set $3 + local.get $2 + local.get $2 + i64.const 63 + i64.shr_s + i64.const 1 + i64.shr_u + i64.xor + local.set $2 + local.get $3 + local.get $3 + i64.const 63 + i64.shr_s + i64.const 1 + i64.shr_u + i64.xor + local.set $3 + local.get $2 + local.get $3 + i64.gt_s + local.get $2 + local.get $3 + i64.lt_s + i32.sub + ) + (func $~lib/typedarray/Float64Array#sort|trampoline (; 66 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + block $~lib/util/sort/COMPARATOR|inlined.0 (result i32) + i32.const 1 + br $~lib/util/sort/COMPARATOR|inlined.0 + end + local.set $1 + end + local.get $0 + local.get $1 + call $~lib/typedarray/Float64Array#sort + ) + (func $~lib/typedarray/Float64Array#__get (; 67 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 1264 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + f64.load + ) + (func $~lib/typedarray/Uint8ClampedArray#__set (; 68 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 283 + i32.const 44 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.add + local.get $2 + i32.const 31 + i32.shr_s + i32.const -1 + i32.xor + i32.const 255 + local.get $2 + i32.sub + i32.const 31 + i32.shr_s + local.get $2 + i32.or + i32.and + i32.store8 + ) + (func $~lib/typedarray/Uint8ClampedArray#__get (; 69 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 272 + i32.const 44 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.add + i32.load8_u + ) + (func $~lib/typedarray/Int8Array#__set (; 70 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 35 + i32.const 44 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.add + local.get $2 + i32.store8 + ) + (func $~lib/typedarray/Int8Array#fill (; 71 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $7 + local.get $1 + local.set $6 + local.get $2 + local.set $5 + local.get $3 + local.set $4 + local.get $7 + i32.load offset=4 + local.set $8 + local.get $7 + call $~lib/typedarray/Int8Array#get:length + local.set $9 + local.get $5 + i32.const 0 + i32.lt_s + if (result i32) + local.get $9 + local.get $5 + i32.add + local.tee $10 + i32.const 0 + local.tee $11 + local.get $10 + local.get $11 + i32.gt_s + select + else + local.get $5 + local.tee $10 + local.get $9 + local.tee $11 + local.get $10 + local.get $11 + i32.lt_s + select + end + local.set $5 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $9 + local.get $4 + i32.add + local.tee $10 + i32.const 0 + local.tee $11 + local.get $10 + local.get $11 + i32.gt_s + select + else + local.get $4 + local.tee $10 + local.get $9 + local.tee $11 + local.get $10 + local.get $11 + i32.lt_s + select + end + local.set $4 + local.get $5 + local.get $4 + i32.lt_s + if + local.get $8 + local.get $5 + i32.add + local.get $6 + local.get $4 + local.get $5 + i32.sub + call $~lib/memory/memory.fill + end + local.get $7 + ) + (func $~lib/rt/__allocArray (; 72 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + i32.const 16 + local.get $2 + call $~lib/rt/tlsf/__alloc + local.set $4 + local.get $0 + local.get $1 + i32.shl + local.set $5 + local.get $5 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $4 + local.get $6 + call $~lib/rt/pure/__retain + i32.store + local.get $4 + local.get $6 + i32.store offset=4 + local.get $4 + local.get $5 + i32.store offset=8 + local.get $4 + local.get $0 + i32.store offset=12 + local.get $3 + if + local.get $6 + local.get $3 + local.get $5 + call $~lib/memory/memory.copy + end + local.get $4 + ) + (func $~lib/array/Array#get:length (; 73 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/typedarray/Int8Array#__get (; 74 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 24 + i32.const 44 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.add + i32.load8_s + ) + (func $~lib/array/Array#__unchecked_get (; 75 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 0 + i32.shl + i32.add + i32.load8_s + ) + (func $~lib/array/Array#__get (; 76 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 280 + i32.const 512 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $std/typedarray/isInt8ArrayEqual (; 77 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/typedarray/Int8Array#get:length + local.get $1 + call $~lib/array/Array#get:length + i32.ne + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + block $break|0 + i32.const 0 + local.set $2 + local.get $0 + call $~lib/typedarray/Int8Array#get:length + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $2 + call $~lib/typedarray/Int8Array#__get + local.get $1 + local.get $2 + call $~lib/array/Array#__get + i32.ne + if + i32.const 0 + local.set $4 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int8Array#subarray (; 78 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/typedarray/Int8Array#get:length + local.set $6 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $4 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $4 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $4 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $3 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $3 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $3 + local.get $3 + local.tee $7 + local.get $4 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + local.set $3 + i32.const 12 + i32.const 3 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $5 + i32.load + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 0 + i32.shl + i32.add + i32.store offset=4 + local.get $7 + local.get $3 + local.get $4 + i32.sub + i32.const 0 + i32.shl + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Int32Array#fill (; 79 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $7 + local.get $1 + local.set $6 + local.get $2 + local.set $5 + local.get $3 + local.set $4 + local.get $7 + i32.load offset=4 + local.set $8 + local.get $7 + call $~lib/typedarray/Int32Array#get:length + local.set $9 + local.get $5 + i32.const 0 + i32.lt_s + if (result i32) + local.get $9 + local.get $5 + i32.add + local.tee $10 + i32.const 0 + local.tee $11 + local.get $10 + local.get $11 + i32.gt_s + select + else + local.get $5 + local.tee $10 + local.get $9 + local.tee $11 + local.get $10 + local.get $11 + i32.lt_s + select + end + local.set $5 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $9 + local.get $4 + i32.add + local.tee $10 + i32.const 0 + local.tee $11 + local.get $10 + local.get $11 + i32.gt_s + select + else + local.get $4 + local.tee $10 + local.get $9 + local.tee $11 + local.get $10 + local.get $11 + i32.lt_s + select + end + local.set $4 + block $break|0 + loop $loop|0 + local.get $5 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $5 + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.store + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $7 + ) + (func $~lib/array/Array#get:length (; 80 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.load offset=12 + ) + (func $~lib/array/Array#__unchecked_get (; 81 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + ) + (func $~lib/array/Array#__get (; 82 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + local.get $0 + i32.load offset=12 + i32.ge_u + if + i32.const 280 + i32.const 512 + i32.const 92 + i32.const 41 + call $~lib/builtins/abort + unreachable + end + local.get $0 + local.get $1 + call $~lib/array/Array#__unchecked_get + local.set $2 + local.get $2 + ) + (func $std/typedarray/isInt32ArrayEqual (; 83 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/typedarray/Int32Array#get:length + local.get $1 + call $~lib/array/Array#get:length + i32.ne + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + block $break|0 + i32.const 0 + local.set $2 + local.get $0 + call $~lib/typedarray/Int32Array#get:length + local.set $3 + loop $loop|0 + local.get $2 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $2 + call $~lib/typedarray/Int32Array#__get + local.get $1 + local.get $2 + call $~lib/array/Array#__get + i32.ne + if + i32.const 0 + local.set $4 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $2 + i32.const 1 + i32.add + local.set $2 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $3 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int32Array#slice (; 84 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/typedarray/Int32Array#get:length + local.set $6 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $4 + local.get $6 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $4 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $4 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $3 + local.get $6 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $3 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $3 + local.get $3 + local.get $4 + i32.sub + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + local.set $6 + i32.const 0 + local.get $6 + call $~lib/typedarray/Int32Array#constructor + local.tee $7 + call $~lib/rt/pure/__retain + local.set $8 + local.get $8 + i32.load offset=4 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 2 + i32.shl + i32.add + local.get $6 + i32.const 2 + i32.shl + call $~lib/memory/memory.copy + local.get $8 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $~lib/typedarray/Int32Array#copyWithin (; 85 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $7 + local.get $1 + local.set $6 + local.get $2 + local.set $5 + local.get $3 + local.set $4 + local.get $7 + call $~lib/typedarray/Int32Array#get:length + local.set $8 + local.get $7 + i32.load offset=4 + local.set $9 + local.get $4 + local.tee $10 + local.get $8 + local.tee $11 + local.get $10 + local.get $11 + i32.lt_s + select + local.set $4 + local.get $6 + i32.const 0 + i32.lt_s + if (result i32) + local.get $8 + local.get $6 + i32.add + local.tee $10 + i32.const 0 + local.tee $11 + local.get $10 + local.get $11 + i32.gt_s + select + else + local.get $6 + local.tee $10 + local.get $8 + local.tee $11 + local.get $10 + local.get $11 + i32.lt_s + select + end + local.set $10 + local.get $5 + i32.const 0 + i32.lt_s + if (result i32) + local.get $8 + local.get $5 + i32.add + local.tee $11 + i32.const 0 + local.tee $12 + local.get $11 + local.get $12 + i32.gt_s + select + else + local.get $5 + local.tee $11 + local.get $8 + local.tee $12 + local.get $11 + local.get $12 + i32.lt_s + select + end + local.set $11 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $8 + local.get $4 + i32.add + local.tee $12 + i32.const 0 + local.tee $13 + local.get $12 + local.get $13 + i32.gt_s + select + else + local.get $4 + local.tee $12 + local.get $8 + local.tee $13 + local.get $12 + local.get $13 + i32.lt_s + select + end + local.set $12 + local.get $12 + local.get $11 + i32.sub + local.tee $13 + local.get $8 + local.get $10 + i32.sub + local.tee $14 + local.get $13 + local.get $14 + i32.lt_s + select + local.set $13 + local.get $9 + local.get $10 + i32.const 2 + i32.shl + i32.add + local.get $9 + local.get $11 + i32.const 2 + i32.shl + i32.add + local.get $13 + i32.const 2 + i32.shl + call $~lib/memory/memory.copy + local.get $7 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 86 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Int8Array#reduce (; 87 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + i32.const 0 + local.set $7 + local.get $5 + call $~lib/typedarray/Int8Array#get:length + local.set $8 + loop $loop|0 + local.get $7 + local.get $8 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Int8Array,i8> (; 88 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 2 + i32.const 0 + call $~lib/typedarray/Int8Array#reduce + local.set $2 + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 323 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint8Array#__set (; 89 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 159 + i32.const 44 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.add + local.get $2 + i32.store8 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 90 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint8Array#reduce (; 91 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + i32.const 0 + local.set $7 + local.get $5 + call $~lib/typedarray/Uint8Array#get:length + local.set $8 + loop $loop|0 + local.get $7 + local.get $8 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Uint8Array,u8> (; 92 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint8Array#reduce + local.set $2 + local.get $2 + i32.const 255 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 323 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduce<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 93 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint8ClampedArray#reduce (; 94 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + i32.const 0 + local.set $7 + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.set $8 + loop $loop|0 + local.get $7 + local.get $8 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Uint8ClampedArray,u8> (; 95 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 4 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#reduce + local.set $2 + local.get $2 + i32.const 255 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 323 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int16Array#__set (; 96 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 407 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.get $2 + i32.store16 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 97 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Int16Array#reduce (; 98 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + i32.const 0 + local.set $7 + local.get $5 + call $~lib/typedarray/Int16Array#get:length + local.set $8 + loop $loop|0 + local.get $7 + local.get $8 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 1 + i32.shl + i32.add + i32.load16_s + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Int16Array,i16> (; 99 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 5 + i32.const 0 + call $~lib/typedarray/Int16Array#reduce + local.set $2 + local.get $2 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 323 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint16Array#__set (; 100 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 531 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.get $2 + i32.store16 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 101 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint16Array#reduce (; 102 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + i32.const 0 + local.set $7 + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + local.set $8 + loop $loop|0 + local.get $7 + local.get $8 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Uint16Array,u16> (; 103 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 6 + i32.const 0 + call $~lib/typedarray/Uint16Array#reduce + local.set $2 + local.get $2 + i32.const 65535 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 323 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduce<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 104 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Int32Array#reduce (; 105 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + i32.const 0 + local.set $7 + local.get $5 + call $~lib/typedarray/Int32Array#get:length + local.set $8 + loop $loop|0 + local.get $7 + local.get $8 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Int32Array,i32> (; 106 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 7 + i32.const 0 + call $~lib/typedarray/Int32Array#reduce + local.set $2 + local.get $2 + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 323 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint32Array#__set (; 107 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 779 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $2 + i32.store + ) + (func $std/typedarray/testReduce<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 108 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint32Array#reduce (; 109 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + i32.const 0 + local.set $7 + local.get $5 + call $~lib/typedarray/Uint32Array#get:length + local.set $8 + loop $loop|0 + local.get $7 + local.get $8 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Uint32Array,u32> (; 110 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 8 + i32.const 0 + call $~lib/typedarray/Uint32Array#reduce + local.set $2 + local.get $2 + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 323 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int64Array#__set (; 111 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 903 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + local.get $2 + i64.store + ) + (func $std/typedarray/testReduce<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 112 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) + (local $4 i64) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i64.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Int64Array#reduce (; 113 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) + (local $3 i64) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i64) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + i32.const 0 + local.set $7 + local.get $5 + call $~lib/typedarray/Int64Array#get:length + local.set $8 + loop $loop|0 + local.get $7 + local.get $8 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$jjjii) + local.set $3 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Int64Array,i64> (; 114 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i64) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 1 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 1 + i64.const 2 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 2 + i64.const 3 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 9 + i64.const 0 + call $~lib/typedarray/Int64Array#reduce + local.set $2 + local.get $2 + i64.const 6 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 323 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint64Array#__set (; 115 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 1027 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + local.get $2 + i64.store + ) + (func $std/typedarray/testReduce<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 116 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) + (local $4 i64) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i64.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint64Array#reduce (; 117 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) + (local $3 i64) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i64) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + i32.const 0 + local.set $7 + local.get $5 + call $~lib/typedarray/Uint64Array#get:length + local.set $8 + loop $loop|0 + local.get $7 + local.get $8 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$jjjii) + local.set $3 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Uint64Array,u64> (; 118 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i64) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 1 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 1 + i64.const 2 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 2 + i64.const 3 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 10 + i64.const 0 + call $~lib/typedarray/Uint64Array#reduce + local.set $2 + local.get $2 + i64.const 6 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 323 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Float32Array#__set (; 119 ;) (type $FUNCSIG$viif) (param $0 i32) (param $1 i32) (param $2 f32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 1151 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + local.get $2 + f32.store + ) + (func $std/typedarray/testReduce<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 120 ;) (type $FUNCSIG$fffii) (param $0 f32) (param $1 f32) (param $2 i32) (param $3 i32) (result f32) + (local $4 f32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + f32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Float32Array#reduce (; 121 ;) (type $FUNCSIG$fiif) (param $0 i32) (param $1 i32) (param $2 f32) (result f32) + (local $3 f32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 f32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + i32.const 0 + local.set $7 + local.get $5 + call $~lib/typedarray/Float32Array#get:length + local.set $8 + loop $loop|0 + local.get $7 + local.get $8 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 2 + i32.shl + i32.add + f32.load + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$fffii) + local.set $3 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Float32Array,f32> (; 122 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 f32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f32.const 1 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 1 + f32.const 2 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 2 + f32.const 3 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 11 + f32.const 0 + call $~lib/typedarray/Float32Array#reduce + local.set $2 + local.get $2 + f32.const 6 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 323 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduce<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 123 ;) (type $FUNCSIG$dddii) (param $0 f64) (param $1 f64) (param $2 i32) (param $3 i32) (result f64) + (local $4 f64) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + f64.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Float64Array#reduce (; 124 ;) (type $FUNCSIG$diid) (param $0 i32) (param $1 i32) (param $2 f64) (result f64) + (local $3 f64) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 f64) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + i32.const 0 + local.set $7 + local.get $5 + call $~lib/typedarray/Float64Array#get:length + local.set $8 + loop $loop|0 + local.get $7 + local.get $8 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 3 + i32.shl + i32.add + f64.load + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$dddii) + local.set $3 + local.get $7 + i32.const 1 + i32.add + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $std/typedarray/testReduce<~lib/typedarray/Float64Array,f64> (; 125 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 f64) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f64.const 1 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 1 + f64.const 2 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 2 + f64.const 3 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 12 + f64.const 0 + call $~lib/typedarray/Float64Array#reduce + local.set $2 + local.get $2 + f64.const 6 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 323 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 126 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Int8Array#reduceRight (; 127 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + local.get $5 + call $~lib/typedarray/Int8Array#get:length + i32.const 1 + i32.sub + local.set $7 + loop $loop|0 + local.get $7 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $7 + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Int8Array,i8> (; 128 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 13 + i32.const 0 + call $~lib/typedarray/Int8Array#reduceRight + local.set $2 + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 344 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 129 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint8Array#reduceRight (; 130 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + local.get $5 + call $~lib/typedarray/Uint8Array#get:length + i32.const 1 + i32.sub + local.set $7 + loop $loop|0 + local.get $7 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $7 + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Uint8Array,u8> (; 131 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 14 + i32.const 0 + call $~lib/typedarray/Uint8Array#reduceRight + local.set $2 + local.get $2 + i32.const 255 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 344 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 132 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint8ClampedArray#reduceRight (; 133 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.const 1 + i32.sub + local.set $7 + loop $loop|0 + local.get $7 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $7 + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Uint8ClampedArray,u8> (; 134 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 15 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#reduceRight + local.set $2 + local.get $2 + i32.const 255 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 344 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 135 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Int16Array#reduceRight (; 136 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + local.get $5 + call $~lib/typedarray/Int16Array#get:length + i32.const 1 + i32.sub + local.set $7 + loop $loop|0 + local.get $7 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 1 + i32.shl + i32.add + i32.load16_s + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $7 + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Int16Array,i16> (; 137 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 16 + i32.const 0 + call $~lib/typedarray/Int16Array#reduceRight + local.set $2 + local.get $2 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 344 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 138 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint16Array#reduceRight (; 139 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + i32.const 1 + i32.sub + local.set $7 + loop $loop|0 + local.get $7 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $7 + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Uint16Array,u16> (; 140 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 17 + i32.const 0 + call $~lib/typedarray/Uint16Array#reduceRight + local.set $2 + local.get $2 + i32.const 65535 + i32.and + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 344 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 141 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Int32Array#reduceRight (; 142 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + local.get $5 + call $~lib/typedarray/Int32Array#get:length + i32.const 1 + i32.sub + local.set $7 + loop $loop|0 + local.get $7 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $7 + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Int32Array,i32> (; 143 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 18 + i32.const 0 + call $~lib/typedarray/Int32Array#reduceRight + local.set $2 + local.get $2 + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 344 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 144 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) + (local $4 i32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint32Array#reduceRight (; 145 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + local.get $5 + call $~lib/typedarray/Uint32Array#get:length + i32.const 1 + i32.sub + local.set $7 + loop $loop|0 + local.get $7 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$iiiii) + local.set $3 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $7 + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Uint32Array,u32> (; 146 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 19 + i32.const 0 + call $~lib/typedarray/Uint32Array#reduceRight + local.set $2 + local.get $2 + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 344 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 147 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) + (local $4 i64) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i64.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Int64Array#reduceRight (; 148 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) + (local $3 i64) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + local.get $5 + call $~lib/typedarray/Int64Array#get:length + i32.const 1 + i32.sub + local.set $7 + loop $loop|0 + local.get $7 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$jjjii) + local.set $3 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Int64Array,i64> (; 149 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i64) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 1 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 1 + i64.const 2 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 2 + i64.const 3 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 20 + i64.const 0 + call $~lib/typedarray/Int64Array#reduceRight + local.set $2 + local.get $2 + i64.const 6 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 344 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 150 ;) (type $FUNCSIG$jjjii) (param $0 i64) (param $1 i64) (param $2 i32) (param $3 i32) (result i64) + (local $4 i64) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i64.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint64Array#reduceRight (; 151 ;) (type $FUNCSIG$jiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i64) + (local $3 i64) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + local.get $5 + call $~lib/typedarray/Uint64Array#get:length + i32.const 1 + i32.sub + local.set $7 + loop $loop|0 + local.get $7 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$jjjii) + local.set $3 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Uint64Array,u64> (; 152 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i64) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 1 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 1 + i64.const 2 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 2 + i64.const 3 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 21 + i64.const 0 + call $~lib/typedarray/Uint64Array#reduceRight + local.set $2 + local.get $2 + i64.const 6 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 344 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 153 ;) (type $FUNCSIG$fffii) (param $0 f32) (param $1 f32) (param $2 i32) (param $3 i32) (result f32) + (local $4 f32) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + f32.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Float32Array#reduceRight (; 154 ;) (type $FUNCSIG$fiif) (param $0 i32) (param $1 i32) (param $2 f32) (result f32) + (local $3 f32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 f32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + local.get $5 + call $~lib/typedarray/Float32Array#get:length + i32.const 1 + i32.sub + local.set $7 + loop $loop|0 + local.get $7 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 2 + i32.shl + i32.add + f32.load + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$fffii) + local.set $3 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Float32Array,f32> (; 155 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 f32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f32.const 1 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 1 + f32.const 2 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 2 + f32.const 3 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 22 + f32.const 0 + call $~lib/typedarray/Float32Array#reduceRight + local.set $2 + local.get $2 + f32.const 6 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 344 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 156 ;) (type $FUNCSIG$dddii) (param $0 f64) (param $1 f64) (param $2 i32) (param $3 i32) (result f64) + (local $4 f64) + local.get $3 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + f64.add + local.set $4 + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Float64Array#reduceRight (; 157 ;) (type $FUNCSIG$diid) (param $0 i32) (param $1 i32) (param $2 f64) (result f64) + (local $3 f64) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 f64) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i32.load offset=4 + local.set $6 + block $break|0 + local.get $5 + call $~lib/typedarray/Float64Array#get:length + i32.const 1 + i32.sub + local.set $7 + loop $loop|0 + local.get $7 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + i32.const 4 + global.set $~lib/argc + local.get $3 + local.get $6 + local.get $7 + i32.const 3 + i32.shl + i32.add + f64.load + local.get $7 + local.get $5 + local.get $4 + call_indirect (type $FUNCSIG$dddii) + local.set $3 + local.get $7 + i32.const 1 + i32.sub + local.set $7 + br $loop|0 + end + unreachable + end + local.get $3 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testReduceRight<~lib/typedarray/Float64Array,f64> (; 158 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 f64) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f64.const 1 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 1 + f64.const 2 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 2 + f64.const 3 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 23 + f64.const 0 + call $~lib/typedarray/Float64Array#reduceRight + local.set $2 + local.get $2 + f64.const 6 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 344 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 159 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $0 + i32.mul + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int8Array#map (; 160 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Int8Array#get:length + local.set $4 + local.get $3 + i32.load offset=4 + local.set $5 + local.get $4 + i32.const 0 + i32.shl + local.set $6 + i32.const 12 + i32.const 3 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $9 + i32.const 0 + i32.shl + i32.add + i32.const 3 + global.set $~lib/argc + local.get $5 + local.get $9 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + i32.store8 + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $7 + local.get $8 + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $8 + i32.store offset=4 + local.get $7 + local.get $6 + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $9 + local.get $3 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8> (; 161 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 24 + call $~lib/typedarray/Int8Array#map + local.set $2 + local.get $2 + i32.const 0 + call $~lib/typedarray/Int8Array#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 365 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Int8Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 366 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Int8Array#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 367 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 162 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $0 + i32.mul + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint8Array#map (; 163 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Uint8Array#get:length + local.set $4 + local.get $3 + i32.load offset=4 + local.set $5 + local.get $4 + i32.const 0 + i32.shl + local.set $6 + i32.const 12 + i32.const 4 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $9 + i32.const 0 + i32.shl + i32.add + i32.const 3 + global.set $~lib/argc + local.get $5 + local.get $9 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + i32.store8 + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $7 + local.get $8 + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $8 + i32.store offset=4 + local.get $7 + local.get $6 + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $9 + local.get $3 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $~lib/typedarray/Uint8Array#__get (; 164 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 148 + i32.const 44 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.add + i32.load8_u + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Uint8Array,u8> (; 165 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 25 + call $~lib/typedarray/Uint8Array#map + local.set $2 + local.get $2 + i32.const 0 + call $~lib/typedarray/Uint8Array#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 365 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Uint8Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 366 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Uint8Array#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 367 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 166 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $0 + i32.mul + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint8ClampedArray#map (; 167 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.set $4 + local.get $3 + i32.load offset=4 + local.set $5 + local.get $4 + i32.const 0 + i32.shl + local.set $6 + i32.const 12 + i32.const 5 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $9 + i32.const 0 + i32.shl + i32.add + i32.const 3 + global.set $~lib/argc + local.get $5 + local.get $9 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + i32.store8 + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $7 + local.get $8 + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $8 + i32.store offset=4 + local.get $7 + local.get $6 + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $9 + local.get $3 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Uint8ClampedArray,u8> (; 168 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 26 + call $~lib/typedarray/Uint8ClampedArray#map + local.set $2 + local.get $2 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 365 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 366 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 367 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 169 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $0 + i32.mul + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int16Array#map (; 170 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Int16Array#get:length + local.set $4 + local.get $3 + i32.load offset=4 + local.set $5 + local.get $4 + i32.const 1 + i32.shl + local.set $6 + i32.const 12 + i32.const 6 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + i32.const 3 + global.set $~lib/argc + local.get $5 + local.get $9 + i32.const 1 + i32.shl + i32.add + i32.load16_s + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + i32.store16 + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $7 + local.get $8 + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $8 + i32.store offset=4 + local.get $7 + local.get $6 + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $9 + local.get $3 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $~lib/typedarray/Int16Array#__get (; 171 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 396 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.load16_s + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Int16Array,i16> (; 172 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 27 + call $~lib/typedarray/Int16Array#map + local.set $2 + local.get $2 + i32.const 0 + call $~lib/typedarray/Int16Array#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 365 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Int16Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 366 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Int16Array#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 367 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 173 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $0 + i32.mul + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint16Array#map (; 174 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Uint16Array#get:length + local.set $4 + local.get $3 + i32.load offset=4 + local.set $5 + local.get $4 + i32.const 1 + i32.shl + local.set $6 + i32.const 12 + i32.const 7 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + i32.const 3 + global.set $~lib/argc + local.get $5 + local.get $9 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + i32.store16 + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $7 + local.get $8 + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $8 + i32.store offset=4 + local.get $7 + local.get $6 + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $9 + local.get $3 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $~lib/typedarray/Uint16Array#__get (; 175 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 1 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 520 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.load16_u + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Uint16Array,u16> (; 176 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 28 + call $~lib/typedarray/Uint16Array#map + local.set $2 + local.get $2 + i32.const 0 + call $~lib/typedarray/Uint16Array#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 365 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Uint16Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 366 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Uint16Array#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 367 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 177 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $0 + i32.mul + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int32Array#map (; 178 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Int32Array#get:length + local.set $4 + local.get $3 + i32.load offset=4 + local.set $5 + local.get $4 + i32.const 2 + i32.shl + local.set $6 + i32.const 12 + i32.const 8 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $9 + i32.const 2 + i32.shl + i32.add + i32.const 3 + global.set $~lib/argc + local.get $5 + local.get $9 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + i32.store + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $7 + local.get $8 + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $8 + i32.store offset=4 + local.get $7 + local.get $6 + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $9 + local.get $3 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Int32Array,i32> (; 179 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 29 + call $~lib/typedarray/Int32Array#map + local.set $2 + local.get $2 + i32.const 0 + call $~lib/typedarray/Int32Array#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 365 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Int32Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 366 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Int32Array#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 367 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 180 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $0 + i32.mul + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint32Array#map (; 181 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Uint32Array#get:length + local.set $4 + local.get $3 + i32.load offset=4 + local.set $5 + local.get $4 + i32.const 2 + i32.shl + local.set $6 + i32.const 12 + i32.const 9 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $9 + i32.const 2 + i32.shl + i32.add + i32.const 3 + global.set $~lib/argc + local.get $5 + local.get $9 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + i32.store + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $7 + local.get $8 + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $8 + i32.store offset=4 + local.get $7 + local.get $6 + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $9 + local.get $3 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $~lib/typedarray/Uint32Array#__get (; 182 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 768 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Uint32Array,u32> (; 183 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 30 + call $~lib/typedarray/Uint32Array#map + local.set $2 + local.get $2 + i32.const 0 + call $~lib/typedarray/Uint32Array#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 365 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Uint32Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 366 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Uint32Array#__get + i32.const 9 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 367 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 184 ;) (type $FUNCSIG$jjii) (param $0 i64) (param $1 i32) (param $2 i32) (result i64) + (local $3 i64) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $0 + i64.mul + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int64Array#map (; 185 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Int64Array#get:length + local.set $4 + local.get $3 + i32.load offset=4 + local.set $5 + local.get $4 + i32.const 3 + i32.shl + local.set $6 + i32.const 12 + i32.const 10 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $9 + i32.const 3 + i32.shl + i32.add + i32.const 3 + global.set $~lib/argc + local.get $5 + local.get $9 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$jjii) + i64.store + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $7 + local.get $8 + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $8 + i32.store offset=4 + local.get $7 + local.get $6 + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $9 + local.get $3 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $~lib/typedarray/Int64Array#__get (; 186 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 892 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + i64.load + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Int64Array,i64> (; 187 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 1 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 1 + i64.const 2 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 2 + i64.const 3 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 31 + call $~lib/typedarray/Int64Array#map + local.set $2 + local.get $2 + i32.const 0 + call $~lib/typedarray/Int64Array#__get + i64.const 1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 365 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Int64Array#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 366 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Int64Array#__get + i64.const 9 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 367 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 188 ;) (type $FUNCSIG$jjii) (param $0 i64) (param $1 i32) (param $2 i32) (result i64) + (local $3 i64) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $0 + i64.mul + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint64Array#map (; 189 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Uint64Array#get:length + local.set $4 + local.get $3 + i32.load offset=4 + local.set $5 + local.get $4 + i32.const 3 + i32.shl + local.set $6 + i32.const 12 + i32.const 11 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $9 + i32.const 3 + i32.shl + i32.add + i32.const 3 + global.set $~lib/argc + local.get $5 + local.get $9 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$jjii) + i64.store + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $7 + local.get $8 + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $8 + i32.store offset=4 + local.get $7 + local.get $6 + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $9 + local.get $3 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $~lib/typedarray/Uint64Array#__get (; 190 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 3 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 1016 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + i64.load + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Uint64Array,u64> (; 191 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 1 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 1 + i64.const 2 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 2 + i64.const 3 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 32 + call $~lib/typedarray/Uint64Array#map + local.set $2 + local.get $2 + i32.const 0 + call $~lib/typedarray/Uint64Array#__get + i64.const 1 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 365 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Uint64Array#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 366 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Uint64Array#__get + i64.const 9 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 367 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 192 ;) (type $FUNCSIG$ffii) (param $0 f32) (param $1 i32) (param $2 i32) (result f32) + (local $3 f32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $0 + f32.mul + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Float32Array#map (; 193 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Float32Array#get:length + local.set $4 + local.get $3 + i32.load offset=4 + local.set $5 + local.get $4 + i32.const 2 + i32.shl + local.set $6 + i32.const 12 + i32.const 12 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $9 + i32.const 2 + i32.shl + i32.add + i32.const 3 + global.set $~lib/argc + local.get $5 + local.get $9 + i32.const 2 + i32.shl + i32.add + f32.load + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ffii) + f32.store + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $7 + local.get $8 + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $8 + i32.store offset=4 + local.get $7 + local.get $6 + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $9 + local.get $3 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $~lib/typedarray/Float32Array#__get (; 194 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) + local.get $1 + local.get $0 + i32.load offset=8 + i32.const 2 + i32.shr_u + i32.ge_u + if + i32.const 280 + i32.const 432 + i32.const 1140 + i32.const 63 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 2 + i32.shl + i32.add + f32.load + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Float32Array,f32> (; 195 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f32.const 1 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 1 + f32.const 2 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 2 + f32.const 3 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 33 + call $~lib/typedarray/Float32Array#map + local.set $2 + local.get $2 + i32.const 0 + call $~lib/typedarray/Float32Array#__get + f32.const 1 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 365 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Float32Array#__get + f32.const 4 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 366 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Float32Array#__get + f32.const 9 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 367 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 196 ;) (type $FUNCSIG$ddii) (param $0 f64) (param $1 i32) (param $2 i32) (result f64) + (local $3 f64) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $0 + f64.mul + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Float64Array#map (; 197 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Float64Array#get:length + local.set $4 + local.get $3 + i32.load offset=4 + local.set $5 + local.get $4 + i32.const 3 + i32.shl + local.set $6 + i32.const 12 + i32.const 13 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $9 + i32.const 3 + i32.shl + i32.add + i32.const 3 + global.set $~lib/argc + local.get $5 + local.get $9 + i32.const 3 + i32.shl + i32.add + f64.load + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ddii) + f64.store + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $7 + local.get $8 + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $8 + i32.store offset=4 + local.get $7 + local.get $6 + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $9 + local.get $3 + call $~lib/rt/pure/__release + local.get $9 + ) + (func $std/typedarray/testArrayMap<~lib/typedarray/Float64Array,f64> (; 198 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f64.const 1 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 1 + f64.const 2 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 2 + f64.const 3 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 34 + call $~lib/typedarray/Float64Array#map + local.set $2 + local.get $2 + i32.const 0 + call $~lib/typedarray/Float64Array#__get + f64.const 1 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 365 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Float64Array#__get + f64.const 4 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 366 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Float64Array#__get + f64.const 9 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 367 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 199 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 2 + i32.gt_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/rt/tlsf/reallocateBlock (; 200 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $2 + call $~lib/rt/tlsf/prepareSize + local.set $3 + local.get $1 + i32.load + local.set $4 + local.get $4 + i32.const 1 + i32.and + i32.eqz + if (result i32) + local.get $1 + i32.load offset=4 + i32.const -268435456 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 521 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + local.get $4 + i32.const -4 + i32.and + i32.le_u + if + local.get $0 + local.get $1 + local.get $3 + call $~lib/rt/tlsf/prepareBlock + local.get $1 + local.get $2 + i32.store offset=12 + local.get $1 + return + end + local.get $1 + local.set $5 + local.get $5 + i32.const 16 + i32.add + local.get $5 + i32.load + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $6 + local.get $6 + i32.load + local.set $7 + local.get $7 + i32.const 1 + i32.and + if + local.get $4 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.const 16 + i32.add + local.get $7 + i32.const 3 + i32.const -1 + i32.xor + i32.and + i32.add + local.set $5 + local.get $5 + local.get $3 + i32.ge_u + if + local.get $0 + local.get $6 + call $~lib/rt/tlsf/removeBlock + local.get $1 + local.get $4 + i32.const 3 + i32.and + local.get $5 + i32.or + i32.store + local.get $1 + local.get $2 + i32.store offset=12 + local.get $0 + local.get $1 + local.get $3 + call $~lib/rt/tlsf/prepareBlock + local.get $1 + return + end + end + local.get $0 + local.get $2 + call $~lib/rt/tlsf/allocateBlock + local.set $8 + local.get $8 + local.get $1 + i32.load offset=8 + i32.store offset=8 + local.get $8 + i32.const 16 + i32.add + local.get $1 + i32.const 16 + i32.add + local.get $2 + call $~lib/memory/memory.copy + local.get $1 + local.get $4 + i32.const 1 + i32.or + i32.store + local.get $0 + local.get $1 + call $~lib/rt/tlsf/insertBlock + local.get $1 + call $~lib/rt/rtrace/onfree + local.get $8 + ) + (func $~lib/rt/tlsf/__realloc (; 201 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + global.get $~lib/rt/tlsf/ROOT + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 585 + i32.const 13 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.ne + if (result i32) + local.get $0 + i32.const 15 + i32.and + i32.eqz + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 128 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + global.get $~lib/rt/tlsf/ROOT + local.get $0 + i32.const 16 + i32.sub + local.get $1 + call $~lib/rt/tlsf/reallocateBlock + i32.const 16 + i32.add + ) + (func $~lib/typedarray/Int8Array#filter (; 202 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Int8Array#get:length + local.set $4 + i32.const 12 + i32.const 3 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $4 + i32.const 0 + i32.shl + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + i32.const 0 + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $7 + local.get $9 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.set $10 + i32.const 3 + global.set $~lib/argc + local.get $10 + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $6 + local.get $8 + local.tee $11 + i32.const 1 + i32.add + local.set $8 + local.get $11 + i32.const 0 + i32.shl + i32.add + local.get $10 + i32.store8 + end + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $8 + i32.const 0 + i32.shl + local.set $10 + local.get $6 + local.get $10 + call $~lib/rt/tlsf/__realloc + local.set $9 + local.get $5 + local.get $9 + call $~lib/rt/pure/__retain + i32.store + local.get $5 + local.get $10 + i32.store offset=8 + local.get $5 + local.get $9 + i32.store offset=4 + local.get $5 + call $~lib/rt/pure/__retain + local.set $11 + local.get $3 + call $~lib/rt/pure/__release + local.get $11 + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Int8Array,i8> (; 203 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 6 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 5 + i32.const 5 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 35 + call $~lib/typedarray/Int8Array#filter + local.set $2 + local.get $2 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 390 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/typedarray/Int8Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 391 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 0 + call $~lib/typedarray/Int8Array#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 392 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Int8Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 393 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Int8Array#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 394 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 204 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 2 + i32.gt_u + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint8Array#filter (; 205 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Uint8Array#get:length + local.set $4 + i32.const 12 + i32.const 4 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $4 + i32.const 0 + i32.shl + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + i32.const 0 + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $7 + local.get $9 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.set $10 + i32.const 3 + global.set $~lib/argc + local.get $10 + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $6 + local.get $8 + local.tee $11 + i32.const 1 + i32.add + local.set $8 + local.get $11 + i32.const 0 + i32.shl + i32.add + local.get $10 + i32.store8 + end + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $8 + i32.const 0 + i32.shl + local.set $10 + local.get $6 + local.get $10 + call $~lib/rt/tlsf/__realloc + local.set $9 + local.get $5 + local.get $9 + call $~lib/rt/pure/__retain + i32.store + local.get $5 + local.get $10 + i32.store offset=8 + local.get $5 + local.get $9 + i32.store offset=4 + local.get $5 + call $~lib/rt/pure/__retain + local.set $11 + local.get $3 + call $~lib/rt/pure/__release + local.get $11 + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8> (; 206 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 6 + call $~lib/typedarray/Uint8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 5 + i32.const 5 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 36 + call $~lib/typedarray/Uint8Array#filter + local.set $2 + local.get $2 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 390 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/typedarray/Uint8Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 391 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 0 + call $~lib/typedarray/Uint8Array#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 392 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Uint8Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 393 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Uint8Array#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 394 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 207 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 2 + i32.gt_u + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint8ClampedArray#filter (; 208 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.set $4 + i32.const 12 + i32.const 5 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $4 + i32.const 0 + i32.shl + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + i32.const 0 + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $7 + local.get $9 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.set $10 + i32.const 3 + global.set $~lib/argc + local.get $10 + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $6 + local.get $8 + local.tee $11 + i32.const 1 + i32.add + local.set $8 + local.get $11 + i32.const 0 + i32.shl + i32.add + local.get $10 + i32.store8 + end + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $8 + i32.const 0 + i32.shl + local.set $10 + local.get $6 + local.get $10 + call $~lib/rt/tlsf/__realloc + local.set $9 + local.get $5 + local.get $9 + call $~lib/rt/pure/__retain + i32.store + local.get $5 + local.get $10 + i32.store offset=8 + local.get $5 + local.get $9 + i32.store offset=4 + local.get $5 + call $~lib/rt/pure/__retain + local.set $11 + local.get $3 + call $~lib/rt/pure/__release + local.get $11 + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint8ClampedArray,u8> (; 209 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 6 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 5 + i32.const 5 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 37 + call $~lib/typedarray/Uint8ClampedArray#filter + local.set $2 + local.get $2 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 390 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 391 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 392 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 393 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 394 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 210 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 2 + i32.gt_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int16Array#filter (; 211 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Int16Array#get:length + local.set $4 + i32.const 12 + i32.const 6 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $4 + i32.const 1 + i32.shl + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + i32.const 0 + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $7 + local.get $9 + i32.const 1 + i32.shl + i32.add + i32.load16_s + local.set $10 + i32.const 3 + global.set $~lib/argc + local.get $10 + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $6 + local.get $8 + local.tee $11 + i32.const 1 + i32.add + local.set $8 + local.get $11 + i32.const 1 + i32.shl + i32.add + local.get $10 + i32.store16 + end + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $8 + i32.const 1 + i32.shl + local.set $10 + local.get $6 + local.get $10 + call $~lib/rt/tlsf/__realloc + local.set $9 + local.get $5 + local.get $9 + call $~lib/rt/pure/__retain + i32.store + local.get $5 + local.get $10 + i32.store offset=8 + local.get $5 + local.get $9 + i32.store offset=4 + local.get $5 + call $~lib/rt/pure/__retain + local.set $11 + local.get $3 + call $~lib/rt/pure/__release + local.get $11 + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Int16Array,i16> (; 212 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 6 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 5 + i32.const 5 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 38 + call $~lib/typedarray/Int16Array#filter + local.set $2 + local.get $2 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 390 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/typedarray/Int16Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 391 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 0 + call $~lib/typedarray/Int16Array#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 392 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Int16Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 393 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Int16Array#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 394 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 213 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 65535 + i32.and + i32.const 2 + i32.gt_u + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint16Array#filter (; 214 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Uint16Array#get:length + local.set $4 + i32.const 12 + i32.const 7 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $4 + i32.const 1 + i32.shl + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + i32.const 0 + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $7 + local.get $9 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.set $10 + i32.const 3 + global.set $~lib/argc + local.get $10 + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $6 + local.get $8 + local.tee $11 + i32.const 1 + i32.add + local.set $8 + local.get $11 + i32.const 1 + i32.shl + i32.add + local.get $10 + i32.store16 + end + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $8 + i32.const 1 + i32.shl + local.set $10 + local.get $6 + local.get $10 + call $~lib/rt/tlsf/__realloc + local.set $9 + local.get $5 + local.get $9 + call $~lib/rt/pure/__retain + i32.store + local.get $5 + local.get $10 + i32.store offset=8 + local.get $5 + local.get $9 + i32.store offset=4 + local.get $5 + call $~lib/rt/pure/__retain + local.set $11 + local.get $3 + call $~lib/rt/pure/__release + local.get $11 + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint16Array,u16> (; 215 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 6 + call $~lib/typedarray/Uint16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 5 + i32.const 5 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 39 + call $~lib/typedarray/Uint16Array#filter + local.set $2 + local.get $2 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 390 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/typedarray/Uint16Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 391 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 0 + call $~lib/typedarray/Uint16Array#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 392 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Uint16Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 393 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Uint16Array#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 394 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 216 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 2 + i32.gt_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int32Array#filter (; 217 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Int32Array#get:length + local.set $4 + i32.const 12 + i32.const 8 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $4 + i32.const 2 + i32.shl + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + i32.const 0 + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $7 + local.get $9 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $10 + i32.const 3 + global.set $~lib/argc + local.get $10 + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $6 + local.get $8 + local.tee $11 + i32.const 1 + i32.add + local.set $8 + local.get $11 + i32.const 2 + i32.shl + i32.add + local.get $10 + i32.store + end + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $8 + i32.const 2 + i32.shl + local.set $10 + local.get $6 + local.get $10 + call $~lib/rt/tlsf/__realloc + local.set $9 + local.get $5 + local.get $9 + call $~lib/rt/pure/__retain + i32.store + local.get $5 + local.get $10 + i32.store offset=8 + local.get $5 + local.get $9 + i32.store offset=4 + local.get $5 + call $~lib/rt/pure/__retain + local.set $11 + local.get $3 + call $~lib/rt/pure/__release + local.get $11 + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Int32Array,i32> (; 218 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 6 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 5 + i32.const 5 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 40 + call $~lib/typedarray/Int32Array#filter + local.set $2 + local.get $2 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 390 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/typedarray/Int32Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 391 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 0 + call $~lib/typedarray/Int32Array#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 392 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Int32Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 393 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Int32Array#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 394 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 219 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 2 + i32.gt_u + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint32Array#filter (; 220 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Uint32Array#get:length + local.set $4 + i32.const 12 + i32.const 9 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $4 + i32.const 2 + i32.shl + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + i32.const 0 + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $7 + local.get $9 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $10 + i32.const 3 + global.set $~lib/argc + local.get $10 + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $6 + local.get $8 + local.tee $11 + i32.const 1 + i32.add + local.set $8 + local.get $11 + i32.const 2 + i32.shl + i32.add + local.get $10 + i32.store + end + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $8 + i32.const 2 + i32.shl + local.set $10 + local.get $6 + local.get $10 + call $~lib/rt/tlsf/__realloc + local.set $9 + local.get $5 + local.get $9 + call $~lib/rt/pure/__retain + i32.store + local.get $5 + local.get $10 + i32.store offset=8 + local.get $5 + local.get $9 + i32.store offset=4 + local.get $5 + call $~lib/rt/pure/__retain + local.set $11 + local.get $3 + call $~lib/rt/pure/__release + local.get $11 + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint32Array,u32> (; 221 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 6 + call $~lib/typedarray/Uint32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 5 + i32.const 5 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 41 + call $~lib/typedarray/Uint32Array#filter + local.set $2 + local.get $2 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 390 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/typedarray/Uint32Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 391 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 0 + call $~lib/typedarray/Uint32Array#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 392 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Uint32Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 393 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Uint32Array#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 394 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 222 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 2 + i64.gt_s + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int64Array#filter (; 223 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i64) + (local $11 i32) + (local $12 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Int64Array#get:length + local.set $4 + i32.const 12 + i32.const 10 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $4 + i32.const 3 + i32.shl + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + i32.const 0 + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $7 + local.get $9 + i32.const 3 + i32.shl + i32.add + i64.load + local.set $10 + i32.const 3 + global.set $~lib/argc + local.get $10 + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ijii) + if + local.get $6 + local.get $8 + local.tee $11 + i32.const 1 + i32.add + local.set $8 + local.get $11 + i32.const 3 + i32.shl + i32.add + local.get $10 + i64.store + end + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $8 + i32.const 3 + i32.shl + local.set $9 + local.get $6 + local.get $9 + call $~lib/rt/tlsf/__realloc + local.set $11 + local.get $5 + local.get $11 + call $~lib/rt/pure/__retain + i32.store + local.get $5 + local.get $9 + i32.store offset=8 + local.get $5 + local.get $11 + i32.store offset=4 + local.get $5 + call $~lib/rt/pure/__retain + local.set $12 + local.get $3 + call $~lib/rt/pure/__release + local.get $12 + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Int64Array,i64> (; 224 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 6 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 1 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 1 + i64.const 2 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 2 + i64.const 3 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 3 + i64.const 4 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 5 + i64.const 5 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 42 + call $~lib/typedarray/Int64Array#filter + local.set $2 + local.get $2 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 390 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/typedarray/Int64Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 391 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 0 + call $~lib/typedarray/Int64Array#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 392 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Int64Array#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 393 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Int64Array#__get + i64.const 5 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 394 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 225 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 2 + i64.gt_u + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint64Array#filter (; 226 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i64) + (local $11 i32) + (local $12 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Uint64Array#get:length + local.set $4 + i32.const 12 + i32.const 11 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $4 + i32.const 3 + i32.shl + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + i32.const 0 + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $7 + local.get $9 + i32.const 3 + i32.shl + i32.add + i64.load + local.set $10 + i32.const 3 + global.set $~lib/argc + local.get $10 + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ijii) + if + local.get $6 + local.get $8 + local.tee $11 + i32.const 1 + i32.add + local.set $8 + local.get $11 + i32.const 3 + i32.shl + i32.add + local.get $10 + i64.store + end + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $8 + i32.const 3 + i32.shl + local.set $9 + local.get $6 + local.get $9 + call $~lib/rt/tlsf/__realloc + local.set $11 + local.get $5 + local.get $11 + call $~lib/rt/pure/__retain + i32.store + local.get $5 + local.get $9 + i32.store offset=8 + local.get $5 + local.get $11 + i32.store offset=4 + local.get $5 + call $~lib/rt/pure/__retain + local.set $12 + local.get $3 + call $~lib/rt/pure/__release + local.get $12 + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Uint64Array,u64> (; 227 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 6 + call $~lib/typedarray/Uint64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 1 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 1 + i64.const 2 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 2 + i64.const 3 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 3 + i64.const 4 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 5 + i64.const 5 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 43 + call $~lib/typedarray/Uint64Array#filter + local.set $2 + local.get $2 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 390 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/typedarray/Uint64Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 391 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 0 + call $~lib/typedarray/Uint64Array#__get + i64.const 3 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 392 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Uint64Array#__get + i64.const 4 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 393 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Uint64Array#__get + i64.const 5 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 394 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 228 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f32.const 2 + f32.gt + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Float32Array#filter (; 229 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 f32) + (local $11 i32) + (local $12 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Float32Array#get:length + local.set $4 + i32.const 12 + i32.const 12 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $4 + i32.const 2 + i32.shl + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + i32.const 0 + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $7 + local.get $9 + i32.const 2 + i32.shl + i32.add + f32.load + local.set $10 + i32.const 3 + global.set $~lib/argc + local.get $10 + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ifii) + if + local.get $6 + local.get $8 + local.tee $11 + i32.const 1 + i32.add + local.set $8 + local.get $11 + i32.const 2 + i32.shl + i32.add + local.get $10 + f32.store + end + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $8 + i32.const 2 + i32.shl + local.set $9 + local.get $6 + local.get $9 + call $~lib/rt/tlsf/__realloc + local.set $11 + local.get $5 + local.get $11 + call $~lib/rt/pure/__retain + i32.store + local.get $5 + local.get $9 + i32.store offset=8 + local.get $5 + local.get $11 + i32.store offset=4 + local.get $5 + call $~lib/rt/pure/__retain + local.set $12 + local.get $3 + call $~lib/rt/pure/__release + local.get $12 + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Float32Array,f32> (; 230 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 6 + call $~lib/typedarray/Float32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f32.const 1 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 1 + f32.const 2 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 2 + f32.const 3 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 3 + f32.const 4 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 5 + f32.const 5 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 44 + call $~lib/typedarray/Float32Array#filter + local.set $2 + local.get $2 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 390 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/typedarray/Float32Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 391 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 0 + call $~lib/typedarray/Float32Array#__get + f32.const 3 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 392 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Float32Array#__get + f32.const 4 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 393 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Float32Array#__get + f32.const 5 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 394 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 231 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f64.const 2 + f64.gt + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Float64Array#filter (; 232 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 f64) + (local $11 i32) + (local $12 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + call $~lib/typedarray/Float64Array#get:length + local.set $4 + i32.const 12 + i32.const 13 + call $~lib/rt/tlsf/__alloc + local.set $5 + local.get $4 + i32.const 3 + i32.shl + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $6 + local.get $3 + i32.load offset=4 + local.set $7 + i32.const 0 + local.set $8 + block $break|0 + i32.const 0 + local.set $9 + loop $loop|0 + local.get $9 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $7 + local.get $9 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $10 + i32.const 3 + global.set $~lib/argc + local.get $10 + local.get $9 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$idii) + if + local.get $6 + local.get $8 + local.tee $11 + i32.const 1 + i32.add + local.set $8 + local.get $11 + i32.const 3 + i32.shl + i32.add + local.get $10 + f64.store + end + local.get $9 + i32.const 1 + i32.add + local.set $9 + br $loop|0 + end + unreachable + end + local.get $8 + i32.const 3 + i32.shl + local.set $9 + local.get $6 + local.get $9 + call $~lib/rt/tlsf/__realloc + local.set $11 + local.get $5 + local.get $11 + call $~lib/rt/pure/__retain + i32.store + local.get $5 + local.get $9 + i32.store offset=8 + local.get $5 + local.get $11 + i32.store offset=4 + local.get $5 + call $~lib/rt/pure/__retain + local.set $12 + local.get $3 + call $~lib/rt/pure/__release + local.get $12 + ) + (func $std/typedarray/testArrayFilter<~lib/typedarray/Float64Array,f64> (; 233 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + i32.const 0 + i32.const 6 + call $~lib/typedarray/Float64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f64.const 1 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 1 + f64.const 2 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 2 + f64.const 3 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 3 + f64.const 4 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 5 + f64.const 5 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 45 + call $~lib/typedarray/Float64Array#filter + local.set $2 + local.get $2 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 390 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/typedarray/Float64Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 391 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 0 + call $~lib/typedarray/Float64Array#__get + f64.const 3 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 392 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 1 + call $~lib/typedarray/Float64Array#__get + f64.const 4 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 393 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + i32.const 2 + call $~lib/typedarray/Float64Array#__get + f64.const 5 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 394 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 234 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int8Array#some (; 235 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int8Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + i32.const 1 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/SOME<~lib/typedarray/Int8Array,i8>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 0 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Int8Array,i8>~anonymous|1 (; 236 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Int8Array,i8> (; 237 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 46 + call $~lib/typedarray/Int8Array#some + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 47 + call $~lib/typedarray/Int8Array#some + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 417 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 238 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint8Array#some (; 239 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + i32.const 1 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/SOME<~lib/typedarray/Uint8Array,u8>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 0 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint8Array,u8>~anonymous|1 (; 240 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint8Array,u8> (; 241 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 48 + call $~lib/typedarray/Uint8Array#some + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 49 + call $~lib/typedarray/Uint8Array#some + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 417 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 242 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint8ClampedArray#some (; 243 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/SOME<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + i32.const 1 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/SOME<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 0 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|1 (; 244 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint8ClampedArray,u8> (; 245 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 50 + call $~lib/typedarray/Uint8ClampedArray#some + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 51 + call $~lib/typedarray/Uint8ClampedArray#some + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 417 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 246 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int16Array#some (; 247 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int16Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.load16_s + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + i32.const 1 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/SOME<~lib/typedarray/Int16Array,i16>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 0 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Int16Array,i16>~anonymous|1 (; 248 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Int16Array,i16> (; 249 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 52 + call $~lib/typedarray/Int16Array#some + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 53 + call $~lib/typedarray/Int16Array#some + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 417 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 250 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 65535 + i32.and + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint16Array#some (; 251 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint16Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + i32.const 1 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/SOME<~lib/typedarray/Uint16Array,u16>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 0 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint16Array,u16>~anonymous|1 (; 252 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 65535 + i32.and + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint16Array,u16> (; 253 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 54 + call $~lib/typedarray/Uint16Array#some + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 55 + call $~lib/typedarray/Uint16Array#some + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 417 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 254 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int32Array#some (; 255 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int32Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + i32.const 1 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/SOME<~lib/typedarray/Int32Array,i32>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 0 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Int32Array,i32>~anonymous|1 (; 256 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Int32Array,i32> (; 257 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 56 + call $~lib/typedarray/Int32Array#some + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 57 + call $~lib/typedarray/Int32Array#some + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 417 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 258 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint32Array#some (; 259 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint32Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + i32.const 1 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/SOME<~lib/typedarray/Uint32Array,u32>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 0 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint32Array,u32>~anonymous|1 (; 260 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint32Array,u32> (; 261 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 58 + call $~lib/typedarray/Uint32Array#some + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 59 + call $~lib/typedarray/Uint32Array#some + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 417 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 262 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 2 + i64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int64Array#some (; 263 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int64Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ijii) + if + i32.const 1 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/SOME<~lib/typedarray/Int64Array,i64>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 0 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Int64Array,i64>~anonymous|1 (; 264 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 0 + i64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Int64Array,i64> (; 265 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 2 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 1 + i64.const 4 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 2 + i64.const 6 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 60 + call $~lib/typedarray/Int64Array#some + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 61 + call $~lib/typedarray/Int64Array#some + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 417 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 266 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 2 + i64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint64Array#some (; 267 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint64Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ijii) + if + i32.const 1 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/SOME<~lib/typedarray/Uint64Array,u64>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 0 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint64Array,u64>~anonymous|1 (; 268 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 0 + i64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Uint64Array,u64> (; 269 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 2 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 1 + i64.const 4 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 2 + i64.const 6 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 62 + call $~lib/typedarray/Uint64Array#some + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 63 + call $~lib/typedarray/Uint64Array#some + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 417 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 270 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f32.const 2 + f32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Float32Array#some (; 271 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Float32Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + f32.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ifii) + if + i32.const 1 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/SOME<~lib/typedarray/Float32Array,f32>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 0 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Float32Array,f32>~anonymous|1 (; 272 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f32.const 0 + f32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Float32Array,f32> (; 273 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f32.const 2 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 1 + f32.const 4 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 2 + f32.const 6 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 64 + call $~lib/typedarray/Float32Array#some + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 65 + call $~lib/typedarray/Float32Array#some + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 417 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 274 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f64.const 2 + f64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Float64Array#some (; 275 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Float64Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 3 + i32.shl + i32.add + f64.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$idii) + if + i32.const 1 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/SOME<~lib/typedarray/Float64Array,f64>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 0 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Float64Array,f64>~anonymous|1 (; 276 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f64.const 0 + f64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArraySome<~lib/typedarray/Float64Array,f64> (; 277 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f64.const 2 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 1 + f64.const 4 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 2 + f64.const 6 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 66 + call $~lib/typedarray/Float64Array#some + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 415 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 67 + call $~lib/typedarray/Float64Array#some + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 417 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 278 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int8Array#findIndex (; 279 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int8Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $5 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int8Array,i8>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const -1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int8Array,i8>~anonymous|1 (; 280 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 4 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int8Array,i8> (; 281 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 68 + call $~lib/typedarray/Int8Array#findIndex + local.set $2 + local.get $2 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 438 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 69 + call $~lib/typedarray/Int8Array#findIndex + local.set $3 + local.get $3 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 440 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 282 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint8Array#findIndex (; 283 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $5 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8Array,u8>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const -1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8Array,u8>~anonymous|1 (; 284 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 4 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8Array,u8> (; 285 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 70 + call $~lib/typedarray/Uint8Array#findIndex + local.set $2 + local.get $2 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 438 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 71 + call $~lib/typedarray/Uint8Array#findIndex + local.set $3 + local.get $3 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 440 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 286 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint8ClampedArray#findIndex (; 287 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $5 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const -1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|1 (; 288 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 4 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8ClampedArray,u8> (; 289 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 72 + call $~lib/typedarray/Uint8ClampedArray#findIndex + local.set $2 + local.get $2 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 438 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 73 + call $~lib/typedarray/Uint8ClampedArray#findIndex + local.set $3 + local.get $3 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 440 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 290 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int16Array#findIndex (; 291 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int16Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.load16_s + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $5 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int16Array,i16>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const -1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int16Array,i16>~anonymous|1 (; 292 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 4 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int16Array,i16> (; 293 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 74 + call $~lib/typedarray/Int16Array#findIndex + local.set $2 + local.get $2 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 438 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 75 + call $~lib/typedarray/Int16Array#findIndex + local.set $3 + local.get $3 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 440 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 294 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 65535 + i32.and + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint16Array#findIndex (; 295 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint16Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $5 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint16Array,u16>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const -1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint16Array,u16>~anonymous|1 (; 296 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 65535 + i32.and + i32.const 4 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint16Array,u16> (; 297 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 76 + call $~lib/typedarray/Uint16Array#findIndex + local.set $2 + local.get $2 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 438 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 77 + call $~lib/typedarray/Uint16Array#findIndex + local.set $3 + local.get $3 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 440 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 298 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int32Array#findIndex (; 299 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int32Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $5 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int32Array,i32>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const -1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int32Array,i32>~anonymous|1 (; 300 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 4 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int32Array,i32> (; 301 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 78 + call $~lib/typedarray/Int32Array#findIndex + local.set $2 + local.get $2 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 438 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 79 + call $~lib/typedarray/Int32Array#findIndex + local.set $3 + local.get $3 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 440 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 302 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint32Array#findIndex (; 303 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint32Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + local.get $5 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint32Array,u32>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const -1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint32Array,u32>~anonymous|1 (; 304 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 4 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint32Array,u32> (; 305 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 80 + call $~lib/typedarray/Uint32Array#findIndex + local.set $2 + local.get $2 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 438 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 81 + call $~lib/typedarray/Uint32Array#findIndex + local.set $3 + local.get $3 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 440 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 306 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 2 + i64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int64Array#findIndex (; 307 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int64Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ijii) + if + local.get $5 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Int64Array,i64>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const -1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int64Array,i64>~anonymous|1 (; 308 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 4 + i64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Int64Array,i64> (; 309 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 1 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 1 + i64.const 2 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 2 + i64.const 3 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 82 + call $~lib/typedarray/Int64Array#findIndex + local.set $2 + local.get $2 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 438 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 83 + call $~lib/typedarray/Int64Array#findIndex + local.set $3 + local.get $3 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 440 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 310 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 2 + i64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint64Array#findIndex (; 311 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint64Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ijii) + if + local.get $5 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Uint64Array,u64>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const -1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint64Array,u64>~anonymous|1 (; 312 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 4 + i64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint64Array,u64> (; 313 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 1 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 1 + i64.const 2 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 2 + i64.const 3 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 84 + call $~lib/typedarray/Uint64Array#findIndex + local.set $2 + local.get $2 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 438 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 85 + call $~lib/typedarray/Uint64Array#findIndex + local.set $3 + local.get $3 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 440 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 314 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f32.const 2 + f32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Float32Array#findIndex (; 315 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Float32Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + f32.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ifii) + if + local.get $5 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float32Array,f32>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const -1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Float32Array,f32>~anonymous|1 (; 316 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f32.const 4 + f32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Float32Array,f32> (; 317 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f32.const 1 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 1 + f32.const 2 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 2 + f32.const 3 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 86 + call $~lib/typedarray/Float32Array#findIndex + local.set $2 + local.get $2 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 438 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 87 + call $~lib/typedarray/Float32Array#findIndex + local.set $3 + local.get $3 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 440 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 318 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f64.const 2 + f64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Float64Array#findIndex (; 319 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Float64Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 3 + i32.shl + i32.add + f64.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$idii) + if + local.get $5 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/FIND_INDEX<~lib/typedarray/Float64Array,f64>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const -1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Float64Array,f64>~anonymous|1 (; 320 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f64.const 4 + f64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayFindIndex<~lib/typedarray/Float64Array,f64> (; 321 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f64.const 1 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 1 + f64.const 2 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 2 + f64.const 3 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 88 + call $~lib/typedarray/Float64Array#findIndex + local.set $2 + local.get $2 + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 438 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 89 + call $~lib/typedarray/Float64Array#findIndex + local.set $3 + local.get $3 + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 440 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 322 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 2 + i32.rem_s + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int8Array#every (; 323 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int8Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + br $continue|0 + end + i32.const 0 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/EVERY<~lib/typedarray/Int8Array,i8>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Int8Array,i8>~anonymous|1 (; 324 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Int8Array,i8> (; 325 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 90 + call $~lib/typedarray/Int8Array#every + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 461 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 91 + call $~lib/typedarray/Int8Array#every + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 463 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 326 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 2 + i32.rem_u + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint8Array#every (; 327 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + br $continue|0 + end + i32.const 0 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/EVERY<~lib/typedarray/Uint8Array,u8>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint8Array,u8>~anonymous|1 (; 328 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint8Array,u8> (; 329 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 92 + call $~lib/typedarray/Uint8Array#every + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 461 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 93 + call $~lib/typedarray/Uint8Array#every + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 463 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 330 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 2 + i32.rem_u + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint8ClampedArray#every (; 331 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + br $continue|0 + end + i32.const 0 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/EVERY<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|1 (; 332 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 255 + i32.and + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint8ClampedArray,u8> (; 333 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 94 + call $~lib/typedarray/Uint8ClampedArray#every + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 461 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 95 + call $~lib/typedarray/Uint8ClampedArray#every + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 463 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 334 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 2 + i32.rem_s + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int16Array#every (; 335 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int16Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.load16_s + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + br $continue|0 + end + i32.const 0 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/EVERY<~lib/typedarray/Int16Array,i16>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Int16Array,i16>~anonymous|1 (; 336 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Int16Array,i16> (; 337 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 96 + call $~lib/typedarray/Int16Array#every + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 461 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 97 + call $~lib/typedarray/Int16Array#every + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 463 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 338 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 65535 + i32.and + i32.const 2 + i32.rem_u + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint16Array#every (; 339 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint16Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + br $continue|0 + end + i32.const 0 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/EVERY<~lib/typedarray/Uint16Array,u16>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint16Array,u16>~anonymous|1 (; 340 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 65535 + i32.and + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint16Array,u16> (; 341 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 98 + call $~lib/typedarray/Uint16Array#every + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 461 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 99 + call $~lib/typedarray/Uint16Array#every + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 463 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 342 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 2 + i32.rem_s + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int32Array#every (; 343 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int32Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + br $continue|0 + end + i32.const 0 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/EVERY<~lib/typedarray/Int32Array,i32>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Int32Array,i32>~anonymous|1 (; 344 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Int32Array,i32> (; 345 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 100 + call $~lib/typedarray/Int32Array#every + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 461 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 101 + call $~lib/typedarray/Int32Array#every + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 463 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 346 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 2 + i32.rem_u + i32.const 0 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint32Array#every (; 347 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint32Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$iiii) + if + br $continue|0 + end + i32.const 0 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/EVERY<~lib/typedarray/Uint32Array,u32>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint32Array,u32>~anonymous|1 (; 348 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.const 2 + i32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint32Array,u32> (; 349 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 2 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 102 + call $~lib/typedarray/Uint32Array#every + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 461 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 103 + call $~lib/typedarray/Uint32Array#every + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 463 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 350 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 2 + i64.rem_s + i64.const 0 + i64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Int64Array#every (; 351 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int64Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ijii) + if + br $continue|0 + end + i32.const 0 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/EVERY<~lib/typedarray/Int64Array,i64>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Int64Array,i64>~anonymous|1 (; 352 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 2 + i64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Int64Array,i64> (; 353 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 2 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 1 + i64.const 4 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 2 + i64.const 6 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 104 + call $~lib/typedarray/Int64Array#every + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 461 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 105 + call $~lib/typedarray/Int64Array#every + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 463 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 354 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 2 + i64.rem_u + i64.const 0 + i64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Uint64Array#every (; 355 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint64Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ijii) + if + br $continue|0 + end + i32.const 0 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/EVERY<~lib/typedarray/Uint64Array,u64>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint64Array,u64>~anonymous|1 (; 356 ;) (type $FUNCSIG$ijii) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + i64.const 2 + i64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Uint64Array,u64> (; 357 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 2 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 1 + i64.const 4 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 2 + i64.const 6 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 106 + call $~lib/typedarray/Uint64Array#every + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 461 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 107 + call $~lib/typedarray/Uint64Array#every + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 463 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/number/isNaN (; 358 ;) (type $FUNCSIG$if) (param $0 f32) (result i32) + local.get $0 + local.get $0 + f32.ne + ) + (func $~lib/math/NativeMathf.mod (; 359 ;) (type $FUNCSIG$fff) (param $0 f32) (param $1 f32) (result f32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 f32) + (local $9 i32) + (local $10 i32) + local.get $0 + i32.reinterpret_f32 + local.set $2 + local.get $1 + i32.reinterpret_f32 + local.set $3 + local.get $2 + i32.const 23 + i32.shr_u + i32.const 255 + i32.and + local.set $4 + local.get $3 + i32.const 23 + i32.shr_u + i32.const 255 + i32.and + local.set $5 + local.get $2 + i32.const -2147483648 + i32.and + local.set $6 + local.get $3 + i32.const 1 + i32.shl + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $4 + i32.const 255 + i32.eq + end + if (result i32) + i32.const 1 + else + local.get $1 + call $~lib/number/isNaN + end + if + local.get $0 + local.get $1 + f32.mul + local.set $8 + local.get $8 + local.get $8 + f32.div + return + end + local.get $2 + i32.const 1 + i32.shl + local.set $9 + local.get $9 + local.get $7 + i32.le_u + if + local.get $9 + local.get $7 + i32.eq + if + f32.const 0 + local.get $0 + f32.mul + return + end + local.get $0 + return + end + local.get $4 + i32.eqz + if + local.get $4 + local.get $2 + i32.const 9 + i32.shl + i32.clz + i32.sub + local.set $4 + local.get $2 + i32.const 0 + local.get $4 + i32.sub + i32.const 1 + i32.add + i32.shl + local.set $2 + else + local.get $2 + i32.const -1 + i32.const 9 + i32.shr_u + i32.and + local.set $2 + local.get $2 + i32.const 1 + i32.const 23 + i32.shl + i32.or + local.set $2 + end + local.get $5 + i32.eqz + if + local.get $5 + local.get $3 + i32.const 9 + i32.shl + i32.clz + i32.sub + local.set $5 + local.get $3 + i32.const 0 + local.get $5 + i32.sub + i32.const 1 + i32.add + i32.shl + local.set $3 + else + local.get $3 + i32.const -1 + i32.const 9 + i32.shr_u + i32.and + local.set $3 + local.get $3 + i32.const 1 + i32.const 23 + i32.shl + i32.or + local.set $3 + end + block $break|0 + loop $continue|0 + local.get $4 + local.get $5 + i32.gt_s + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.ge_u + if + local.get $2 + local.get $3 + i32.eq + if + f32.const 0 + local.get $0 + f32.mul + return + end + local.get $2 + local.get $3 + i32.sub + local.set $2 + end + local.get $2 + i32.const 1 + i32.shl + local.set $2 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $continue|0 + end + unreachable + end + local.get $2 + local.get $3 + i32.ge_u + if + local.get $2 + local.get $3 + i32.eq + if + f32.const 0 + local.get $0 + f32.mul + return + end + local.get $2 + local.get $3 + i32.sub + local.set $2 + end + local.get $2 + i32.const 8 + i32.shl + i32.clz + local.set $10 + local.get $4 + local.get $10 + i32.sub + local.set $4 + local.get $2 + local.get $10 + i32.shl + local.set $2 + local.get $4 + i32.const 0 + i32.gt_s + if + local.get $2 + i32.const 1 + i32.const 23 + i32.shl + i32.sub + local.set $2 + local.get $2 + local.get $4 + i32.const 23 + i32.shl + i32.or + local.set $2 + else + local.get $2 + i32.const 0 + local.get $4 + i32.sub + i32.const 1 + i32.add + i32.shr_u + local.set $2 + end + local.get $2 + local.get $6 + i32.or + local.set $2 + local.get $2 + f32.reinterpret_i32 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 360 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f32.const 2 + call $~lib/math/NativeMathf.mod + f32.const 0 + f32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Float32Array#every (; 361 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Float32Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + f32.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$ifii) + if + br $continue|0 + end + i32.const 0 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/EVERY<~lib/typedarray/Float32Array,f32>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Float32Array,f32>~anonymous|1 (; 362 ;) (type $FUNCSIG$ifii) (param $0 f32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f32.const 2 + f32.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Float32Array,f32> (; 363 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f32.const 2 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 1 + f32.const 4 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 2 + f32.const 6 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 108 + call $~lib/typedarray/Float32Array#every + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 461 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 109 + call $~lib/typedarray/Float32Array#every + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 463 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/number/isNaN (; 364 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.ne + ) + (func $~lib/math/NativeMath.mod (; 365 ;) (type $FUNCSIG$ddd) (param $0 f64) (param $1 f64) (result f64) + (local $2 i64) + (local $3 i64) + (local $4 i64) + (local $5 i64) + (local $6 i64) + (local $7 i64) + (local $8 f64) + (local $9 i64) + (local $10 i64) + local.get $0 + i64.reinterpret_f64 + local.set $2 + local.get $1 + i64.reinterpret_f64 + local.set $3 + local.get $2 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $4 + local.get $3 + i64.const 52 + i64.shr_u + i64.const 2047 + i64.and + local.set $5 + local.get $2 + i64.const 63 + i64.shr_u + local.set $6 + local.get $3 + i64.const 1 + i64.shl + local.set $7 + local.get $7 + i64.const 0 + i64.eq + if (result i32) + i32.const 1 + else + local.get $4 + i64.const 2047 + i64.eq + end + if (result i32) + i32.const 1 + else + local.get $1 + call $~lib/number/isNaN + end + if + local.get $0 + local.get $1 + f64.mul + local.set $8 + local.get $8 + local.get $8 + f64.div + return + end + local.get $2 + i64.const 1 + i64.shl + local.set $9 + local.get $9 + local.get $7 + i64.le_u + if + local.get $9 + local.get $7 + i64.eq + if + f64.const 0 + local.get $0 + f64.mul + return + end + local.get $0 + return + end + local.get $4 + i64.eqz + if + local.get $4 + local.get $2 + i64.const 12 + i64.shl + i64.clz + i64.sub + local.set $4 + local.get $2 + i64.const 0 + local.get $4 + i64.sub + i64.const 1 + i64.add + i64.shl + local.set $2 + else + local.get $2 + i64.const -1 + i64.const 12 + i64.shr_u + i64.and + local.set $2 + local.get $2 + i64.const 1 + i64.const 52 + i64.shl + i64.or + local.set $2 + end + local.get $5 + i64.eqz + if + local.get $5 + local.get $3 + i64.const 12 + i64.shl + i64.clz + i64.sub + local.set $5 + local.get $3 + i64.const 0 + local.get $5 + i64.sub + i64.const 1 + i64.add + i64.shl + local.set $3 + else + local.get $3 + i64.const -1 + i64.const 12 + i64.shr_u + i64.and + local.set $3 + local.get $3 + i64.const 1 + i64.const 52 + i64.shl + i64.or + local.set $3 + end + block $break|0 + loop $continue|0 + local.get $4 + local.get $5 + i64.gt_s + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i64.ge_u + if + local.get $2 + local.get $3 + i64.eq + if + f64.const 0 + local.get $0 + f64.mul + return + end + local.get $2 + local.get $3 + i64.sub + local.set $2 + end + local.get $2 + i64.const 1 + i64.shl + local.set $2 + local.get $4 + i64.const 1 + i64.sub + local.set $4 + br $continue|0 + end + unreachable + end + local.get $2 + local.get $3 + i64.ge_u + if + local.get $2 + local.get $3 + i64.eq + if + f64.const 0 + local.get $0 + f64.mul + return + end + local.get $2 + local.get $3 + i64.sub + local.set $2 + end + local.get $2 + i64.const 11 + i64.shl + i64.clz + local.set $10 + local.get $4 + local.get $10 + i64.sub + local.set $4 + local.get $2 + local.get $10 + i64.shl + local.set $2 + local.get $4 + i64.const 0 + i64.gt_s + if + local.get $2 + i64.const 1 + i64.const 52 + i64.shl + i64.sub + local.set $2 + local.get $2 + local.get $4 + i64.const 52 + i64.shl + i64.or + local.set $2 + else + local.get $2 + i64.const 0 + local.get $4 + i64.sub + i64.const 1 + i64.add + i64.shr_u + local.set $2 + end + local.get $2 + local.get $6 + i64.const 63 + i64.shl + i64.or + local.set $2 + local.get $2 + f64.reinterpret_i64 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 366 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f64.const 2 + call $~lib/math/NativeMath.mod + f64.const 0 + f64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $~lib/typedarray/Float64Array#every (; 367 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + block $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Float64Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + block $continue|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 3 + i32.shl + i32.add + f64.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$idii) + if + br $continue|0 + end + i32.const 0 + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + br $~lib/typedarray/EVERY<~lib/typedarray/Float64Array,f64>|inlined.0 + end + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + i32.const 1 + local.set $6 + local.get $3 + call $~lib/rt/pure/__release + local.get $6 + end + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Float64Array,f64>~anonymous|1 (; 368 ;) (type $FUNCSIG$idii) (param $0 f64) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $0 + f64.const 2 + f64.eq + local.set $3 + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + ) + (func $std/typedarray/testArrayEvery<~lib/typedarray/Float64Array,f64> (; 369 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f64.const 2 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 1 + f64.const 4 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 2 + f64.const 6 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 110 + call $~lib/typedarray/Float64Array#every + local.set $2 + local.get $2 + i32.const 0 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 461 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 111 + call $~lib/typedarray/Float64Array#every + local.set $3 + local.get $3 + i32.const 0 + i32.ne + i32.eqz + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 463 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Int8Array,i8>~anonymous|0 (; 370 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/typedarray/forEachValues + local.get $1 + call $~lib/array/Array#__get + local.set $3 + local.get $0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.get $3 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 490 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.get $std/typedarray/forEachCallCount + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 491 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachSelf + local.get $2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 492 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachCallCount + i32.const 1 + i32.add + global.set $std/typedarray/forEachCallCount + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int8Array#forEach (; 371 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int8Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$viii) + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Int8Array,i8> (; 372 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + i32.const 0 + global.set $std/typedarray/forEachCallCount + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + global.set $std/typedarray/forEachSelf + local.get $1 + i32.const 0 + global.get $std/typedarray/forEachValues + i32.const 0 + call $~lib/array/Array#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 1 + global.get $std/typedarray/forEachValues + i32.const 1 + call $~lib/array/Array#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 2 + global.get $std/typedarray/forEachValues + i32.const 2 + call $~lib/array/Array#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 112 + call $~lib/typedarray/Int8Array#forEach + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 495 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint8Array,u8>~anonymous|0 (; 373 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/typedarray/forEachValues + local.get $1 + call $~lib/array/Array#__get + local.set $3 + local.get $0 + i32.const 255 + i32.and + local.get $3 + i32.const 255 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 490 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.get $std/typedarray/forEachCallCount + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 491 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachSelf + local.get $2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 492 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachCallCount + i32.const 1 + i32.add + global.set $std/typedarray/forEachCallCount + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint8Array#forEach (; 374 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$viii) + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint8Array,u8> (; 375 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + i32.const 0 + global.set $std/typedarray/forEachCallCount + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + global.set $std/typedarray/forEachSelf + local.get $1 + i32.const 0 + global.get $std/typedarray/forEachValues + i32.const 0 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 1 + global.get $std/typedarray/forEachValues + i32.const 1 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 2 + global.get $std/typedarray/forEachValues + i32.const 2 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 113 + call $~lib/typedarray/Uint8Array#forEach + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 495 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint8ClampedArray,u8>~anonymous|0 (; 376 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/typedarray/forEachValues + local.get $1 + call $~lib/array/Array#__get + local.set $3 + local.get $0 + i32.const 255 + i32.and + local.get $3 + i32.const 255 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 490 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.get $std/typedarray/forEachCallCount + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 491 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachSelf + local.get $2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 492 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachCallCount + i32.const 1 + i32.add + global.set $std/typedarray/forEachCallCount + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint8ClampedArray#forEach (; 377 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$viii) + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint8ClampedArray,u8> (; 378 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + i32.const 0 + global.set $std/typedarray/forEachCallCount + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + global.set $std/typedarray/forEachSelf + local.get $1 + i32.const 0 + global.get $std/typedarray/forEachValues + i32.const 0 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 1 + global.get $std/typedarray/forEachValues + i32.const 1 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 2 + global.get $std/typedarray/forEachValues + i32.const 2 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 114 + call $~lib/typedarray/Uint8ClampedArray#forEach + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 495 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Int16Array,i16>~anonymous|0 (; 379 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/typedarray/forEachValues + local.get $1 + call $~lib/array/Array#__get + local.set $3 + local.get $0 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + local.get $3 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 490 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.get $std/typedarray/forEachCallCount + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 491 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachSelf + local.get $2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 492 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachCallCount + i32.const 1 + i32.add + global.set $std/typedarray/forEachCallCount + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int16Array#forEach (; 380 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int16Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.load16_s + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$viii) + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Int16Array,i16> (; 381 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + i32.const 0 + global.set $std/typedarray/forEachCallCount + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + global.set $std/typedarray/forEachSelf + local.get $1 + i32.const 0 + global.get $std/typedarray/forEachValues + i32.const 0 + call $~lib/array/Array#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 1 + global.get $std/typedarray/forEachValues + i32.const 1 + call $~lib/array/Array#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 2 + global.get $std/typedarray/forEachValues + i32.const 2 + call $~lib/array/Array#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 115 + call $~lib/typedarray/Int16Array#forEach + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 495 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint16Array,u16>~anonymous|0 (; 382 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/typedarray/forEachValues + local.get $1 + call $~lib/array/Array#__get + local.set $3 + local.get $0 + i32.const 65535 + i32.and + local.get $3 + i32.const 65535 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 490 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.get $std/typedarray/forEachCallCount + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 491 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachSelf + local.get $2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 492 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachCallCount + i32.const 1 + i32.add + global.set $std/typedarray/forEachCallCount + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint16Array#forEach (; 383 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint16Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$viii) + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint16Array,u16> (; 384 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + i32.const 0 + global.set $std/typedarray/forEachCallCount + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + global.set $std/typedarray/forEachSelf + local.get $1 + i32.const 0 + global.get $std/typedarray/forEachValues + i32.const 0 + call $~lib/array/Array#__get + i32.const 65535 + i32.and + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 1 + global.get $std/typedarray/forEachValues + i32.const 1 + call $~lib/array/Array#__get + i32.const 65535 + i32.and + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 2 + global.get $std/typedarray/forEachValues + i32.const 2 + call $~lib/array/Array#__get + i32.const 65535 + i32.and + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 116 + call $~lib/typedarray/Uint16Array#forEach + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 495 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Int32Array,i32>~anonymous|0 (; 385 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/typedarray/forEachValues + local.get $1 + call $~lib/array/Array#__get + local.set $3 + local.get $0 + local.get $3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 490 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.get $std/typedarray/forEachCallCount + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 491 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachSelf + local.get $2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 492 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachCallCount + i32.const 1 + i32.add + global.set $std/typedarray/forEachCallCount + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int32Array#forEach (; 386 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int32Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$viii) + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Int32Array,i32> (; 387 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + i32.const 0 + global.set $std/typedarray/forEachCallCount + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + global.set $std/typedarray/forEachSelf + local.get $1 + i32.const 0 + global.get $std/typedarray/forEachValues + i32.const 0 + call $~lib/array/Array#__get + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 1 + global.get $std/typedarray/forEachValues + i32.const 1 + call $~lib/array/Array#__get + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 2 + global.get $std/typedarray/forEachValues + i32.const 2 + call $~lib/array/Array#__get + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 117 + call $~lib/typedarray/Int32Array#forEach + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 495 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint32Array,u32>~anonymous|0 (; 388 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/typedarray/forEachValues + local.get $1 + call $~lib/array/Array#__get + local.set $3 + local.get $0 + local.get $3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 490 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.get $std/typedarray/forEachCallCount + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 491 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachSelf + local.get $2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 492 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachCallCount + i32.const 1 + i32.add + global.set $std/typedarray/forEachCallCount + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint32Array#forEach (; 389 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint32Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$viii) + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint32Array,u32> (; 390 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + i32.const 0 + global.set $std/typedarray/forEachCallCount + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + global.set $std/typedarray/forEachSelf + local.get $1 + i32.const 0 + global.get $std/typedarray/forEachValues + i32.const 0 + call $~lib/array/Array#__get + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 1 + global.get $std/typedarray/forEachValues + i32.const 1 + call $~lib/array/Array#__get + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 2 + global.get $std/typedarray/forEachValues + i32.const 2 + call $~lib/array/Array#__get + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 118 + call $~lib/typedarray/Uint32Array#forEach + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 495 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Int64Array,i64>~anonymous|0 (; 391 ;) (type $FUNCSIG$vjii) (param $0 i64) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/typedarray/forEachValues + local.get $1 + call $~lib/array/Array#__get + local.set $3 + local.get $0 + local.get $3 + i64.extend_i32_s + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 490 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.get $std/typedarray/forEachCallCount + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 491 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachSelf + local.get $2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 492 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachCallCount + i32.const 1 + i32.add + global.set $std/typedarray/forEachCallCount + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int64Array#forEach (; 392 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Int64Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$vjii) + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Int64Array,i64> (; 393 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + i32.const 0 + global.set $std/typedarray/forEachCallCount + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + global.set $std/typedarray/forEachSelf + local.get $1 + i32.const 0 + global.get $std/typedarray/forEachValues + i32.const 0 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 1 + global.get $std/typedarray/forEachValues + i32.const 1 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 2 + global.get $std/typedarray/forEachValues + i32.const 2 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 119 + call $~lib/typedarray/Int64Array#forEach + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 495 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint64Array,u64>~anonymous|0 (; 394 ;) (type $FUNCSIG$vjii) (param $0 i64) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/typedarray/forEachValues + local.get $1 + call $~lib/array/Array#__get + local.set $3 + local.get $0 + local.get $3 + i64.extend_i32_s + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 490 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.get $std/typedarray/forEachCallCount + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 491 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachSelf + local.get $2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 492 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachCallCount + i32.const 1 + i32.add + global.set $std/typedarray/forEachCallCount + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint64Array#forEach (; 395 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Uint64Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$vjii) + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Uint64Array,u64> (; 396 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + i32.const 0 + global.set $std/typedarray/forEachCallCount + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + global.set $std/typedarray/forEachSelf + local.get $1 + i32.const 0 + global.get $std/typedarray/forEachValues + i32.const 0 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 1 + global.get $std/typedarray/forEachValues + i32.const 1 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 2 + global.get $std/typedarray/forEachValues + i32.const 2 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 120 + call $~lib/typedarray/Uint64Array#forEach + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 495 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Float32Array,f32>~anonymous|0 (; 397 ;) (type $FUNCSIG$vfii) (param $0 f32) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/typedarray/forEachValues + local.get $1 + call $~lib/array/Array#__get + local.set $3 + local.get $0 + local.get $3 + f32.convert_i32_s + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 490 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.get $std/typedarray/forEachCallCount + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 491 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachSelf + local.get $2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 492 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachCallCount + i32.const 1 + i32.add + global.set $std/typedarray/forEachCallCount + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Float32Array#forEach (; 398 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Float32Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 2 + i32.shl + i32.add + f32.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$vfii) + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Float32Array,f32> (; 399 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + i32.const 0 + global.set $std/typedarray/forEachCallCount + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + global.set $std/typedarray/forEachSelf + local.get $1 + i32.const 0 + global.get $std/typedarray/forEachValues + i32.const 0 + call $~lib/array/Array#__get + f32.convert_i32_s + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 1 + global.get $std/typedarray/forEachValues + i32.const 1 + call $~lib/array/Array#__get + f32.convert_i32_s + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 2 + global.get $std/typedarray/forEachValues + i32.const 2 + call $~lib/array/Array#__get + f32.convert_i32_s + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 121 + call $~lib/typedarray/Float32Array#forEach + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 495 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Float64Array,f64>~anonymous|0 (; 400 ;) (type $FUNCSIG$vdii) (param $0 f64) (param $1 i32) (param $2 i32) + (local $3 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + global.get $std/typedarray/forEachValues + local.get $1 + call $~lib/array/Array#__get + local.set $3 + local.get $0 + local.get $3 + f64.convert_i32_s + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 490 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + global.get $std/typedarray/forEachCallCount + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 491 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachSelf + local.get $2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 492 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + global.get $std/typedarray/forEachCallCount + i32.const 1 + i32.add + global.set $std/typedarray/forEachCallCount + local.get $2 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Float64Array#forEach (; 401 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $3 + local.get $1 + local.set $2 + local.get $3 + i32.load offset=4 + local.set $4 + block $break|0 + i32.const 0 + local.set $5 + local.get $3 + call $~lib/typedarray/Float64Array#get:length + local.set $6 + loop $loop|0 + local.get $5 + local.get $6 + i32.lt_s + i32.eqz + br_if $break|0 + i32.const 3 + global.set $~lib/argc + local.get $4 + local.get $5 + i32.const 3 + i32.shl + i32.add + f64.load + local.get $5 + local.get $3 + local.get $2 + call_indirect (type $FUNCSIG$vdii) + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/rt/pure/__release + ) + (func $std/typedarray/testArrayForEach<~lib/typedarray/Float64Array,f64> (; 402 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + i32.const 0 + global.set $std/typedarray/forEachCallCount + i32.const 0 + i32.const 3 + call $~lib/typedarray/Float64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + global.set $std/typedarray/forEachSelf + local.get $1 + i32.const 0 + global.get $std/typedarray/forEachValues + i32.const 0 + call $~lib/array/Array#__get + f64.convert_i32_s + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 1 + global.get $std/typedarray/forEachValues + i32.const 1 + call $~lib/array/Array#__get + f64.convert_i32_s + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 2 + global.get $std/typedarray/forEachValues + i32.const 2 + call $~lib/array/Array#__get + f64.convert_i32_s + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 122 + call $~lib/typedarray/Float64Array#forEach + global.get $std/typedarray/forEachCallCount + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 495 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int8Array#reverse (; 403 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.load offset=4 + local.set $2 + block $break|0 + i32.const 0 + local.set $3 + local.get $1 + call $~lib/typedarray/Int8Array#get:length + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $3 + local.get $4 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.const 0 + i32.shl + i32.add + local.set $5 + local.get $2 + local.get $4 + i32.const 0 + i32.shl + i32.add + local.set $6 + local.get $5 + i32.load8_s + local.set $7 + local.get $5 + local.get $6 + i32.load8_s + i32.store8 + local.get $6 + local.get $7 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $std/typedarray/testArrayReverse<~lib/typedarray/Int8Array,i8> (; 404 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $std/typedarray/testArrayReverseValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int8Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int8Array#constructor + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + block $break|0 + i32.const 0 + local.set $6 + loop $loop|0 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + call $~lib/typedarray/Int8Array#__set + local.get $5 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + call $~lib/typedarray/Int8Array#__set + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/typedarray/Int8Array#reverse + call $~lib/rt/pure/__release + block $break|1 + i32.const 0 + local.set $6 + loop $loop|1 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $6 + call $~lib/typedarray/Int8Array#__get + local.get $0 + local.get $1 + i32.const 1 + i32.sub + local.get $6 + i32.sub + call $~lib/array/Array#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 524 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Int8Array#subarray + local.tee $6 + call $~lib/typedarray/Int8Array#reverse + local.set $7 + local.get $7 + i32.const 0 + call $~lib/typedarray/Int8Array#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 529 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 1 + call $~lib/typedarray/Int8Array#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 530 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 2 + call $~lib/typedarray/Int8Array#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 531 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 3 + call $~lib/typedarray/Int8Array#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 532 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint8Array#reverse (; 405 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.load offset=4 + local.set $2 + block $break|0 + i32.const 0 + local.set $3 + local.get $1 + call $~lib/typedarray/Uint8Array#get:length + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $3 + local.get $4 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.const 0 + i32.shl + i32.add + local.set $5 + local.get $2 + local.get $4 + i32.const 0 + i32.shl + i32.add + local.set $6 + local.get $5 + i32.load8_u + local.set $7 + local.get $5 + local.get $6 + i32.load8_u + i32.store8 + local.get $6 + local.get $7 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $~lib/typedarray/Uint8Array#subarray (; 406 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/typedarray/Uint8Array#get:length + local.set $6 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $4 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $4 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $4 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $3 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $3 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $3 + local.get $3 + local.tee $7 + local.get $4 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + local.set $3 + i32.const 12 + i32.const 4 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $5 + i32.load + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 0 + i32.shl + i32.add + i32.store offset=4 + local.get $7 + local.get $3 + local.get $4 + i32.sub + i32.const 0 + i32.shl + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint8Array,u8> (; 407 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $std/typedarray/testArrayReverseValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint8Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint8Array#constructor + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + block $break|0 + i32.const 0 + local.set $6 + loop $loop|0 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8Array#__set + local.get $5 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8Array#__set + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/typedarray/Uint8Array#reverse + call $~lib/rt/pure/__release + block $break|1 + i32.const 0 + local.set $6 + loop $loop|1 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $6 + call $~lib/typedarray/Uint8Array#__get + local.get $0 + local.get $1 + i32.const 1 + i32.sub + local.get $6 + i32.sub + call $~lib/array/Array#__get + i32.const 255 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 524 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Uint8Array#subarray + local.tee $6 + call $~lib/typedarray/Uint8Array#reverse + local.set $7 + local.get $7 + i32.const 0 + call $~lib/typedarray/Uint8Array#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 529 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 1 + call $~lib/typedarray/Uint8Array#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 530 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 2 + call $~lib/typedarray/Uint8Array#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 531 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 3 + call $~lib/typedarray/Uint8Array#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 532 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint8ClampedArray#reverse (; 408 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.load offset=4 + local.set $2 + block $break|0 + i32.const 0 + local.set $3 + local.get $1 + call $~lib/typedarray/Uint8ClampedArray#get:length + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $3 + local.get $4 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.const 0 + i32.shl + i32.add + local.set $5 + local.get $2 + local.get $4 + i32.const 0 + i32.shl + i32.add + local.set $6 + local.get $5 + i32.load8_u + local.set $7 + local.get $5 + local.get $6 + i32.load8_u + i32.store8 + local.get $6 + local.get $7 + i32.store8 + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $~lib/typedarray/Uint8ClampedArray#subarray (; 409 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.set $6 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $4 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $4 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $4 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $3 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $3 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $3 + local.get $3 + local.tee $7 + local.get $4 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + local.set $3 + i32.const 12 + i32.const 5 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $5 + i32.load + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 0 + i32.shl + i32.add + i32.store offset=4 + local.get $7 + local.get $3 + local.get $4 + i32.sub + i32.const 0 + i32.shl + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint8ClampedArray,u8> (; 410 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $std/typedarray/testArrayReverseValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + block $break|0 + i32.const 0 + local.set $6 + loop $loop|0 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $5 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/typedarray/Uint8ClampedArray#reverse + call $~lib/rt/pure/__release + block $break|1 + i32.const 0 + local.set $6 + loop $loop|1 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $6 + call $~lib/typedarray/Uint8ClampedArray#__get + local.get $0 + local.get $1 + i32.const 1 + i32.sub + local.get $6 + i32.sub + call $~lib/array/Array#__get + i32.const 255 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 524 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Uint8ClampedArray#subarray + local.tee $6 + call $~lib/typedarray/Uint8ClampedArray#reverse + local.set $7 + local.get $7 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 529 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 530 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 531 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 532 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int16Array#reverse (; 411 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.load offset=4 + local.set $2 + block $break|0 + i32.const 0 + local.set $3 + local.get $1 + call $~lib/typedarray/Int16Array#get:length + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $3 + local.get $4 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $5 + local.get $2 + local.get $4 + i32.const 1 + i32.shl + i32.add + local.set $6 + local.get $5 + i32.load16_s + local.set $7 + local.get $5 + local.get $6 + i32.load16_s + i32.store16 + local.get $6 + local.get $7 + i32.store16 + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $~lib/typedarray/Int16Array#subarray (; 412 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/typedarray/Int16Array#get:length + local.set $6 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $4 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $4 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $4 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $3 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $3 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $3 + local.get $3 + local.tee $7 + local.get $4 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + local.set $3 + i32.const 12 + i32.const 6 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $5 + i32.load + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 1 + i32.shl + i32.add + i32.store offset=4 + local.get $7 + local.get $3 + local.get $4 + i32.sub + i32.const 1 + i32.shl + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testArrayReverse<~lib/typedarray/Int16Array,i16> (; 413 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $std/typedarray/testArrayReverseValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int16Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int16Array#constructor + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + block $break|0 + i32.const 0 + local.set $6 + loop $loop|0 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + call $~lib/typedarray/Int16Array#__set + local.get $5 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + call $~lib/typedarray/Int16Array#__set + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/typedarray/Int16Array#reverse + call $~lib/rt/pure/__release + block $break|1 + i32.const 0 + local.set $6 + loop $loop|1 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $6 + call $~lib/typedarray/Int16Array#__get + local.get $0 + local.get $1 + i32.const 1 + i32.sub + local.get $6 + i32.sub + call $~lib/array/Array#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 524 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Int16Array#subarray + local.tee $6 + call $~lib/typedarray/Int16Array#reverse + local.set $7 + local.get $7 + i32.const 0 + call $~lib/typedarray/Int16Array#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 529 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 1 + call $~lib/typedarray/Int16Array#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 530 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 2 + call $~lib/typedarray/Int16Array#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 531 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 3 + call $~lib/typedarray/Int16Array#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 532 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint16Array#reverse (; 414 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.load offset=4 + local.set $2 + block $break|0 + i32.const 0 + local.set $3 + local.get $1 + call $~lib/typedarray/Uint16Array#get:length + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $3 + local.get $4 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $5 + local.get $2 + local.get $4 + i32.const 1 + i32.shl + i32.add + local.set $6 + local.get $5 + i32.load16_u + local.set $7 + local.get $5 + local.get $6 + i32.load16_u + i32.store16 + local.get $6 + local.get $7 + i32.store16 + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $~lib/typedarray/Uint16Array#subarray (; 415 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + local.set $6 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $4 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $4 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $4 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $3 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $3 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $3 + local.get $3 + local.tee $7 + local.get $4 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + local.set $3 + i32.const 12 + i32.const 7 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $5 + i32.load + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 1 + i32.shl + i32.add + i32.store offset=4 + local.get $7 + local.get $3 + local.get $4 + i32.sub + i32.const 1 + i32.shl + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint16Array,u16> (; 416 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $std/typedarray/testArrayReverseValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint16Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint16Array#constructor + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + block $break|0 + i32.const 0 + local.set $6 + loop $loop|0 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i32.const 65535 + i32.and + call $~lib/typedarray/Uint16Array#__set + local.get $5 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i32.const 65535 + i32.and + call $~lib/typedarray/Uint16Array#__set + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/typedarray/Uint16Array#reverse + call $~lib/rt/pure/__release + block $break|1 + i32.const 0 + local.set $6 + loop $loop|1 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $6 + call $~lib/typedarray/Uint16Array#__get + local.get $0 + local.get $1 + i32.const 1 + i32.sub + local.get $6 + i32.sub + call $~lib/array/Array#__get + i32.const 65535 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 524 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Uint16Array#subarray + local.tee $6 + call $~lib/typedarray/Uint16Array#reverse + local.set $7 + local.get $7 + i32.const 0 + call $~lib/typedarray/Uint16Array#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 529 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 1 + call $~lib/typedarray/Uint16Array#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 530 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 2 + call $~lib/typedarray/Uint16Array#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 531 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 3 + call $~lib/typedarray/Uint16Array#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 532 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int32Array#reverse (; 417 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.load offset=4 + local.set $2 + block $break|0 + i32.const 0 + local.set $3 + local.get $1 + call $~lib/typedarray/Int32Array#get:length + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $3 + local.get $4 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.const 2 + i32.shl + i32.add + local.set $5 + local.get $2 + local.get $4 + i32.const 2 + i32.shl + i32.add + local.set $6 + local.get $5 + i32.load + local.set $7 + local.get $5 + local.get $6 + i32.load + i32.store + local.get $6 + local.get $7 + i32.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $std/typedarray/testArrayReverse<~lib/typedarray/Int32Array,i32> (; 418 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $std/typedarray/testArrayReverseValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int32Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int32Array#constructor + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + block $break|0 + i32.const 0 + local.set $6 + loop $loop|0 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + call $~lib/typedarray/Int32Array#__set + local.get $5 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + call $~lib/typedarray/Int32Array#__set + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/typedarray/Int32Array#reverse + call $~lib/rt/pure/__release + block $break|1 + i32.const 0 + local.set $6 + loop $loop|1 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $6 + call $~lib/typedarray/Int32Array#__get + local.get $0 + local.get $1 + i32.const 1 + i32.sub + local.get $6 + i32.sub + call $~lib/array/Array#__get + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 524 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Int32Array#subarray + local.tee $6 + call $~lib/typedarray/Int32Array#reverse + local.set $7 + local.get $7 + i32.const 0 + call $~lib/typedarray/Int32Array#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 529 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 1 + call $~lib/typedarray/Int32Array#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 530 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 2 + call $~lib/typedarray/Int32Array#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 531 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 3 + call $~lib/typedarray/Int32Array#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 532 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint32Array#reverse (; 419 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.load offset=4 + local.set $2 + block $break|0 + i32.const 0 + local.set $3 + local.get $1 + call $~lib/typedarray/Uint32Array#get:length + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $3 + local.get $4 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.const 2 + i32.shl + i32.add + local.set $5 + local.get $2 + local.get $4 + i32.const 2 + i32.shl + i32.add + local.set $6 + local.get $5 + i32.load + local.set $7 + local.get $5 + local.get $6 + i32.load + i32.store + local.get $6 + local.get $7 + i32.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $~lib/typedarray/Uint32Array#subarray (; 420 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/typedarray/Uint32Array#get:length + local.set $6 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $4 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $4 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $4 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $3 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $3 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $3 + local.get $3 + local.tee $7 + local.get $4 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + local.set $3 + i32.const 12 + i32.const 9 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $5 + i32.load + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $7 + local.get $3 + local.get $4 + i32.sub + i32.const 2 + i32.shl + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint32Array,u32> (; 421 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $std/typedarray/testArrayReverseValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint32Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint32Array#constructor + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + block $break|0 + i32.const 0 + local.set $6 + loop $loop|0 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + call $~lib/typedarray/Uint32Array#__set + local.get $5 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + call $~lib/typedarray/Uint32Array#__set + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/typedarray/Uint32Array#reverse + call $~lib/rt/pure/__release + block $break|1 + i32.const 0 + local.set $6 + loop $loop|1 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $6 + call $~lib/typedarray/Uint32Array#__get + local.get $0 + local.get $1 + i32.const 1 + i32.sub + local.get $6 + i32.sub + call $~lib/array/Array#__get + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 524 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Uint32Array#subarray + local.tee $6 + call $~lib/typedarray/Uint32Array#reverse + local.set $7 + local.get $7 + i32.const 0 + call $~lib/typedarray/Uint32Array#__get + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 529 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 1 + call $~lib/typedarray/Uint32Array#__get + i32.const 7 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 530 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 2 + call $~lib/typedarray/Uint32Array#__get + i32.const 6 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 531 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 3 + call $~lib/typedarray/Uint32Array#__get + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 532 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int64Array#reverse (; 422 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i64) + local.get $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.load offset=4 + local.set $2 + block $break|0 + i32.const 0 + local.set $3 + local.get $1 + call $~lib/typedarray/Int64Array#get:length + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $3 + local.get $4 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.const 3 + i32.shl + i32.add + local.set $5 + local.get $2 + local.get $4 + i32.const 3 + i32.shl + i32.add + local.set $6 + local.get $5 + i64.load + local.set $7 + local.get $5 + local.get $6 + i64.load + i64.store + local.get $6 + local.get $7 + i64.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $~lib/typedarray/Int64Array#subarray (; 423 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/typedarray/Int64Array#get:length + local.set $6 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $4 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $4 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $4 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $3 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $3 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $3 + local.get $3 + local.tee $7 + local.get $4 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + local.set $3 + i32.const 12 + i32.const 10 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $5 + i32.load + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 3 + i32.shl + i32.add + i32.store offset=4 + local.get $7 + local.get $3 + local.get $4 + i32.sub + i32.const 3 + i32.shl + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testArrayReverse<~lib/typedarray/Int64Array,i64> (; 424 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $std/typedarray/testArrayReverseValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int64Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int64Array#constructor + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + block $break|0 + i32.const 0 + local.set $6 + loop $loop|0 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Int64Array#__set + local.get $5 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Int64Array#__set + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/typedarray/Int64Array#reverse + call $~lib/rt/pure/__release + block $break|1 + i32.const 0 + local.set $6 + loop $loop|1 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $6 + call $~lib/typedarray/Int64Array#__get + local.get $0 + local.get $1 + i32.const 1 + i32.sub + local.get $6 + i32.sub + call $~lib/array/Array#__get + i64.extend_i32_s + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 524 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Int64Array#subarray + local.tee $6 + call $~lib/typedarray/Int64Array#reverse + local.set $7 + local.get $7 + i32.const 0 + call $~lib/typedarray/Int64Array#__get + i64.const 8 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 529 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 1 + call $~lib/typedarray/Int64Array#__get + i64.const 7 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 530 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 2 + call $~lib/typedarray/Int64Array#__get + i64.const 6 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 531 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 3 + call $~lib/typedarray/Int64Array#__get + i64.const 5 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 532 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint64Array#reverse (; 425 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i64) + local.get $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.load offset=4 + local.set $2 + block $break|0 + i32.const 0 + local.set $3 + local.get $1 + call $~lib/typedarray/Uint64Array#get:length + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $3 + local.get $4 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.const 3 + i32.shl + i32.add + local.set $5 + local.get $2 + local.get $4 + i32.const 3 + i32.shl + i32.add + local.set $6 + local.get $5 + i64.load + local.set $7 + local.get $5 + local.get $6 + i64.load + i64.store + local.get $6 + local.get $7 + i64.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $~lib/typedarray/Uint64Array#subarray (; 426 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/typedarray/Uint64Array#get:length + local.set $6 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $4 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $4 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $4 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $3 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $3 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $3 + local.get $3 + local.tee $7 + local.get $4 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + local.set $3 + i32.const 12 + i32.const 11 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $5 + i32.load + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 3 + i32.shl + i32.add + i32.store offset=4 + local.get $7 + local.get $3 + local.get $4 + i32.sub + i32.const 3 + i32.shl + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testArrayReverse<~lib/typedarray/Uint64Array,u64> (; 427 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $std/typedarray/testArrayReverseValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint64Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint64Array#constructor + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + block $break|0 + i32.const 0 + local.set $6 + loop $loop|0 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Uint64Array#__set + local.get $5 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Uint64Array#__set + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/typedarray/Uint64Array#reverse + call $~lib/rt/pure/__release + block $break|1 + i32.const 0 + local.set $6 + loop $loop|1 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $6 + call $~lib/typedarray/Uint64Array#__get + local.get $0 + local.get $1 + i32.const 1 + i32.sub + local.get $6 + i32.sub + call $~lib/array/Array#__get + i64.extend_i32_s + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 524 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Uint64Array#subarray + local.tee $6 + call $~lib/typedarray/Uint64Array#reverse + local.set $7 + local.get $7 + i32.const 0 + call $~lib/typedarray/Uint64Array#__get + i64.const 8 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 529 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 1 + call $~lib/typedarray/Uint64Array#__get + i64.const 7 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 530 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 2 + call $~lib/typedarray/Uint64Array#__get + i64.const 6 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 531 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 3 + call $~lib/typedarray/Uint64Array#__get + i64.const 5 + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 532 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Float32Array#reverse (; 428 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 f32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.load offset=4 + local.set $2 + block $break|0 + i32.const 0 + local.set $3 + local.get $1 + call $~lib/typedarray/Float32Array#get:length + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $3 + local.get $4 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.const 2 + i32.shl + i32.add + local.set $5 + local.get $2 + local.get $4 + i32.const 2 + i32.shl + i32.add + local.set $6 + local.get $5 + f32.load + local.set $7 + local.get $5 + local.get $6 + f32.load + f32.store + local.get $6 + local.get $7 + f32.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $~lib/typedarray/Float32Array#subarray (; 429 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/typedarray/Float32Array#get:length + local.set $6 + local.get $4 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $4 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $4 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $4 + local.get $3 + i32.const 0 + i32.lt_s + if (result i32) + local.get $6 + local.get $3 + i32.add + local.tee $7 + i32.const 0 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + else + local.get $3 + local.tee $7 + local.get $6 + local.tee $8 + local.get $7 + local.get $8 + i32.lt_s + select + end + local.set $3 + local.get $3 + local.tee $7 + local.get $4 + local.tee $8 + local.get $7 + local.get $8 + i32.gt_s + select + local.set $3 + i32.const 12 + i32.const 12 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $5 + i32.load + call $~lib/rt/pure/__retain + i32.store + local.get $7 + local.get $5 + i32.load offset=4 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.store offset=4 + local.get $7 + local.get $3 + local.get $4 + i32.sub + i32.const 2 + i32.shl + i32.store offset=8 + local.get $7 + call $~lib/rt/pure/__retain + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $std/typedarray/testArrayReverse<~lib/typedarray/Float32Array,f32> (; 430 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $std/typedarray/testArrayReverseValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Float32Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + i32.const 0 + local.get $1 + call $~lib/typedarray/Float32Array#constructor + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + block $break|0 + i32.const 0 + local.set $6 + loop $loop|0 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + f32.convert_i32_s + call $~lib/typedarray/Float32Array#__set + local.get $5 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + f32.convert_i32_s + call $~lib/typedarray/Float32Array#__set + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/typedarray/Float32Array#reverse + call $~lib/rt/pure/__release + block $break|1 + i32.const 0 + local.set $6 + loop $loop|1 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $6 + call $~lib/typedarray/Float32Array#__get + local.get $0 + local.get $1 + i32.const 1 + i32.sub + local.get $6 + i32.sub + call $~lib/array/Array#__get + f32.convert_i32_s + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 524 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Float32Array#subarray + local.tee $6 + call $~lib/typedarray/Float32Array#reverse + local.set $7 + local.get $7 + i32.const 0 + call $~lib/typedarray/Float32Array#__get + f32.const 8 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 529 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 1 + call $~lib/typedarray/Float32Array#__get + f32.const 7 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 530 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 2 + call $~lib/typedarray/Float32Array#__get + f32.const 6 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 531 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 3 + call $~lib/typedarray/Float32Array#__get + f32.const 5 + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 532 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Float64Array#reverse (; 431 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 f64) + local.get $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.load offset=4 + local.set $2 + block $break|0 + i32.const 0 + local.set $3 + local.get $1 + call $~lib/typedarray/Float64Array#get:length + i32.const 1 + i32.sub + local.set $4 + loop $loop|0 + local.get $3 + local.get $4 + i32.lt_u + i32.eqz + br_if $break|0 + local.get $2 + local.get $3 + i32.const 3 + i32.shl + i32.add + local.set $5 + local.get $2 + local.get $4 + i32.const 3 + i32.shl + i32.add + local.set $6 + local.get $5 + f64.load + local.set $7 + local.get $5 + local.get $6 + f64.load + f64.store + local.get $6 + local.get $7 + f64.store + local.get $3 + i32.const 1 + i32.add + local.set $3 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + br $loop|0 + end + unreachable + end + local.get $1 + ) + (func $std/typedarray/testArrayReverse<~lib/typedarray/Float64Array,f64> (; 432 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + global.get $std/typedarray/testArrayReverseValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Float64Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + i32.const 0 + local.get $1 + call $~lib/typedarray/Float64Array#constructor + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + block $break|0 + i32.const 0 + local.set $6 + loop $loop|0 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + f64.convert_i32_s + call $~lib/typedarray/Float64Array#__set + local.get $5 + local.get $6 + local.get $0 + local.get $6 + call $~lib/array/Array#__get + f64.convert_i32_s + call $~lib/typedarray/Float64Array#__set + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|0 + end + unreachable + end + local.get $3 + call $~lib/typedarray/Float64Array#reverse + call $~lib/rt/pure/__release + block $break|1 + i32.const 0 + local.set $6 + loop $loop|1 + local.get $6 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $6 + call $~lib/typedarray/Float64Array#__get + local.get $0 + local.get $1 + i32.const 1 + i32.sub + local.get $6 + i32.sub + call $~lib/array/Array#__get + f64.convert_i32_s + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 524 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $loop|1 + end + unreachable + end + local.get $5 + i32.const 4 + i32.const 8 + call $~lib/typedarray/Float64Array#subarray + local.tee $6 + call $~lib/typedarray/Float64Array#reverse + local.set $7 + local.get $7 + i32.const 0 + call $~lib/typedarray/Float64Array#__get + f64.const 8 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 529 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 1 + call $~lib/typedarray/Float64Array#__get + f64.const 7 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 530 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 2 + call $~lib/typedarray/Float64Array#__get + f64.const 6 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 531 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + i32.const 3 + call $~lib/typedarray/Float64Array#__get + f64.const 5 + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 532 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int8Array#indexOf (; 433 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Int8Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $6 + local.get $7 + i32.ge_s + end + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.tee $8 + i32.const 0 + local.tee $9 + local.get $8 + local.get $9 + i32.gt_s + select + local.set $6 + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.get $4 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Int8Array#lastIndexOf (; 434 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Int8Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.set $6 + else + local.get $6 + local.get $7 + i32.ge_s + if + local.get $7 + i32.const 1 + i32.sub + local.set $6 + end + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.get $4 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int8Array,i8>|inlined.0 + end + local.get $6 + i32.const 1 + i32.sub + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Int8Array#lastIndexOf|trampoline (; 435 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + call $~lib/typedarray/Int8Array#get:length + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Int8Array#lastIndexOf + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int8Array,i8> (; 436 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int8Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + call $~lib/typedarray/Int8Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Int8Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 557 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Int8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 558 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Int8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 559 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Int8Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 560 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Int8Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 561 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Int8Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 562 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 10 + call $~lib/typedarray/Int8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 564 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -100 + call $~lib/typedarray/Int8Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 565 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Int8Array#lastIndexOf|trampoline + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 567 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Int8Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 568 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Int8Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 569 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Int8Array#lastIndexOf|trampoline + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 570 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int8Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 571 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Int8Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 572 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Int8Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 573 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 100 + call $~lib/typedarray/Int8Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 574 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -10 + call $~lib/typedarray/Int8Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 575 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -11 + call $~lib/typedarray/Int8Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 576 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 4 + i32.const 9 + call $~lib/typedarray/Int8Array#subarray + local.set $5 + local.get $5 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Int8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 580 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 4 + i32.const 0 + call $~lib/typedarray/Int8Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 581 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 0 + call $~lib/typedarray/Int8Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 582 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 9 + i32.const 0 + call $~lib/typedarray/Int8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 583 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 10 + i32.const 0 + call $~lib/typedarray/Int8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 584 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Int8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 585 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 1 + call $~lib/typedarray/Int8Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 2 + call $~lib/typedarray/Int8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 587 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint8Array#indexOf (; 437 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Uint8Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $6 + local.get $7 + i32.ge_s + end + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.tee $8 + i32.const 0 + local.tee $9 + local.get $8 + local.get $9 + i32.gt_s + select + local.set $6 + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $4 + i32.const 255 + i32.and + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Uint8Array#lastIndexOf (; 438 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Uint8Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.set $6 + else + local.get $6 + local.get $7 + i32.ge_s + if + local.get $7 + i32.const 1 + i32.sub + local.set $6 + end + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $4 + i32.const 255 + i32.and + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8Array,u8>|inlined.0 + end + local.get $6 + i32.const 1 + i32.sub + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Uint8Array#lastIndexOf|trampoline (; 439 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + call $~lib/typedarray/Uint8Array#get:length + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Uint8Array#lastIndexOf + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint8Array,u8> (; 440 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint8Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint8Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 557 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Uint8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 558 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Uint8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 559 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint8Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 560 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Uint8Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 561 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Uint8Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 562 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 10 + call $~lib/typedarray/Uint8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 564 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -100 + call $~lib/typedarray/Uint8Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 565 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint8Array#lastIndexOf|trampoline + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 567 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Uint8Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 568 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Uint8Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 569 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint8Array#lastIndexOf|trampoline + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 570 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint8Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 571 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Uint8Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 572 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Uint8Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 573 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 100 + call $~lib/typedarray/Uint8Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 574 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -10 + call $~lib/typedarray/Uint8Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 575 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -11 + call $~lib/typedarray/Uint8Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 576 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 4 + i32.const 9 + call $~lib/typedarray/Uint8Array#subarray + local.set $5 + local.get $5 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 580 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 4 + i32.const 0 + call $~lib/typedarray/Uint8Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 581 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 0 + call $~lib/typedarray/Uint8Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 582 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 9 + i32.const 0 + call $~lib/typedarray/Uint8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 583 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 10 + i32.const 0 + call $~lib/typedarray/Uint8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 584 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Uint8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 585 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 1 + call $~lib/typedarray/Uint8Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 2 + call $~lib/typedarray/Uint8Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 587 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint8ClampedArray#indexOf (; 441 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $6 + local.get $7 + i32.ge_s + end + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.tee $8 + i32.const 0 + local.tee $9 + local.get $8 + local.get $9 + i32.gt_s + select + local.set $6 + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $4 + i32.const 255 + i32.and + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Uint8ClampedArray#lastIndexOf (; 442 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.set $6 + else + local.get $6 + local.get $7 + i32.ge_s + if + local.get $7 + i32.const 1 + i32.sub + local.set $6 + end + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.get $4 + i32.const 255 + i32.and + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint8ClampedArray,u8>|inlined.0 + end + local.get $6 + i32.const 1 + i32.sub + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Uint8ClampedArray#lastIndexOf|trampoline (; 443 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Uint8ClampedArray#lastIndexOf + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint8ClampedArray,u8> (; 444 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 557 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 558 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 559 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 560 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 561 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 562 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 10 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 564 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -100 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 565 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#lastIndexOf|trampoline + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 567 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 568 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 569 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#lastIndexOf|trampoline + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 570 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint8ClampedArray#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 571 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 572 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 573 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 100 + call $~lib/typedarray/Uint8ClampedArray#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 574 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -10 + call $~lib/typedarray/Uint8ClampedArray#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 575 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -11 + call $~lib/typedarray/Uint8ClampedArray#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 576 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 4 + i32.const 9 + call $~lib/typedarray/Uint8ClampedArray#subarray + local.set $5 + local.get $5 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 580 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 4 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 581 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 582 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 9 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 583 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 10 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 584 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 585 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 587 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int16Array#indexOf (; 445 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Int16Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $6 + local.get $7 + i32.ge_s + end + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.tee $8 + i32.const 0 + local.tee $9 + local.get $8 + local.get $9 + i32.gt_s + select + local.set $6 + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 1 + i32.shl + i32.add + i32.load16_s + local.get $4 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Int16Array#lastIndexOf (; 446 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Int16Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.set $6 + else + local.get $6 + local.get $7 + i32.ge_s + if + local.get $7 + i32.const 1 + i32.sub + local.set $6 + end + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 1 + i32.shl + i32.add + i32.load16_s + local.get $4 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int16Array,i16>|inlined.0 + end + local.get $6 + i32.const 1 + i32.sub + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Int16Array#lastIndexOf|trampoline (; 447 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + call $~lib/typedarray/Int16Array#get:length + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Int16Array#lastIndexOf + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int16Array,i16> (; 448 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int16Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Int16Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 557 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Int16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 558 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Int16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 559 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Int16Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 560 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Int16Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 561 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Int16Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 562 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 10 + call $~lib/typedarray/Int16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 564 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -100 + call $~lib/typedarray/Int16Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 565 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Int16Array#lastIndexOf|trampoline + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 567 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Int16Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 568 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Int16Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 569 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Int16Array#lastIndexOf|trampoline + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 570 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int16Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 571 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Int16Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 572 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Int16Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 573 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 100 + call $~lib/typedarray/Int16Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 574 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -10 + call $~lib/typedarray/Int16Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 575 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -11 + call $~lib/typedarray/Int16Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 576 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 4 + i32.const 9 + call $~lib/typedarray/Int16Array#subarray + local.set $5 + local.get $5 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Int16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 580 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 4 + i32.const 0 + call $~lib/typedarray/Int16Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 581 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 0 + call $~lib/typedarray/Int16Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 582 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 9 + i32.const 0 + call $~lib/typedarray/Int16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 583 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 10 + i32.const 0 + call $~lib/typedarray/Int16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 584 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Int16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 585 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 1 + call $~lib/typedarray/Int16Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 2 + call $~lib/typedarray/Int16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 587 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint16Array#indexOf (; 449 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $6 + local.get $7 + i32.ge_s + end + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.tee $8 + i32.const 0 + local.tee $9 + local.get $8 + local.get $9 + i32.gt_s + select + local.set $6 + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.get $4 + i32.const 65535 + i32.and + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Uint16Array#lastIndexOf (; 450 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Uint16Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.set $6 + else + local.get $6 + local.get $7 + i32.ge_s + if + local.get $7 + i32.const 1 + i32.sub + local.set $6 + end + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.get $4 + i32.const 65535 + i32.and + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint16Array,u16>|inlined.0 + end + local.get $6 + i32.const 1 + i32.sub + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Uint16Array#lastIndexOf|trampoline (; 451 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + call $~lib/typedarray/Uint16Array#get:length + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Uint16Array#lastIndexOf + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint16Array,u16> (; 452 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint16Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i32.const 65535 + i32.and + call $~lib/typedarray/Uint16Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint16Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 557 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Uint16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 558 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Uint16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 559 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint16Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 560 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Uint16Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 561 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Uint16Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 562 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 10 + call $~lib/typedarray/Uint16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 564 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -100 + call $~lib/typedarray/Uint16Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 565 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint16Array#lastIndexOf|trampoline + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 567 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Uint16Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 568 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Uint16Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 569 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint16Array#lastIndexOf|trampoline + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 570 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint16Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 571 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Uint16Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 572 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Uint16Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 573 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 100 + call $~lib/typedarray/Uint16Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 574 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -10 + call $~lib/typedarray/Uint16Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 575 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -11 + call $~lib/typedarray/Uint16Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 576 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 4 + i32.const 9 + call $~lib/typedarray/Uint16Array#subarray + local.set $5 + local.get $5 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 580 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 4 + i32.const 0 + call $~lib/typedarray/Uint16Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 581 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 0 + call $~lib/typedarray/Uint16Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 582 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 9 + i32.const 0 + call $~lib/typedarray/Uint16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 583 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 10 + i32.const 0 + call $~lib/typedarray/Uint16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 584 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Uint16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 585 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 1 + call $~lib/typedarray/Uint16Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 2 + call $~lib/typedarray/Uint16Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 587 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int32Array#indexOf (; 453 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Int32Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $6 + local.get $7 + i32.ge_s + end + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.tee $8 + i32.const 0 + local.tee $9 + local.get $8 + local.get $9 + i32.gt_s + select + local.set $6 + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $4 + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Int32Array#lastIndexOf (; 454 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Int32Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.set $6 + else + local.get $6 + local.get $7 + i32.ge_s + if + local.get $7 + i32.const 1 + i32.sub + local.set $6 + end + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $4 + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int32Array,i32>|inlined.0 + end + local.get $6 + i32.const 1 + i32.sub + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Int32Array#lastIndexOf|trampoline (; 455 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + call $~lib/typedarray/Int32Array#get:length + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Int32Array#lastIndexOf + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int32Array,i32> (; 456 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int32Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + call $~lib/typedarray/Int32Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Int32Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 557 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Int32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 558 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Int32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 559 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Int32Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 560 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Int32Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 561 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Int32Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 562 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 10 + call $~lib/typedarray/Int32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 564 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -100 + call $~lib/typedarray/Int32Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 565 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Int32Array#lastIndexOf|trampoline + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 567 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Int32Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 568 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Int32Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 569 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Int32Array#lastIndexOf|trampoline + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 570 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 571 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Int32Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 572 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Int32Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 573 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 100 + call $~lib/typedarray/Int32Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 574 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -10 + call $~lib/typedarray/Int32Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 575 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -11 + call $~lib/typedarray/Int32Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 576 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 4 + i32.const 9 + call $~lib/typedarray/Int32Array#subarray + local.set $5 + local.get $5 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Int32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 580 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 4 + i32.const 0 + call $~lib/typedarray/Int32Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 581 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 0 + call $~lib/typedarray/Int32Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 582 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 9 + i32.const 0 + call $~lib/typedarray/Int32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 583 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 10 + i32.const 0 + call $~lib/typedarray/Int32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 584 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Int32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 585 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 1 + call $~lib/typedarray/Int32Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 2 + call $~lib/typedarray/Int32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 587 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint32Array#indexOf (; 457 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Uint32Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $6 + local.get $7 + i32.ge_s + end + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.tee $8 + i32.const 0 + local.tee $9 + local.get $8 + local.get $9 + i32.gt_s + select + local.set $6 + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $4 + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Uint32Array#lastIndexOf (; 458 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Uint32Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.set $6 + else + local.get $6 + local.get $7 + i32.ge_s + if + local.get $7 + i32.const 1 + i32.sub + local.set $6 + end + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.get $4 + i32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint32Array,u32>|inlined.0 + end + local.get $6 + i32.const 1 + i32.sub + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Uint32Array#lastIndexOf|trampoline (; 459 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + call $~lib/typedarray/Uint32Array#get:length + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Uint32Array#lastIndexOf + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint32Array,u32> (; 460 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint32Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + call $~lib/typedarray/Uint32Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint32Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 557 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Uint32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 558 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Uint32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 559 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint32Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 560 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Uint32Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 561 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Uint32Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 562 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 10 + call $~lib/typedarray/Uint32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 564 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -100 + call $~lib/typedarray/Uint32Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 565 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint32Array#lastIndexOf|trampoline + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 567 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Uint32Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 568 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const -1 + i32.const 0 + call $~lib/typedarray/Uint32Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 569 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint32Array#lastIndexOf|trampoline + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 570 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint32Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 571 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 3 + call $~lib/typedarray/Uint32Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 572 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 3 + i32.const 2 + call $~lib/typedarray/Uint32Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 573 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const 100 + call $~lib/typedarray/Uint32Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 574 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -10 + call $~lib/typedarray/Uint32Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 575 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 1 + i32.const -11 + call $~lib/typedarray/Uint32Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 576 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 4 + i32.const 9 + call $~lib/typedarray/Uint32Array#subarray + local.set $5 + local.get $5 + i32.const 3 + i32.const 0 + call $~lib/typedarray/Uint32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 580 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 4 + i32.const 0 + call $~lib/typedarray/Uint32Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 581 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 0 + call $~lib/typedarray/Uint32Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 582 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 9 + i32.const 0 + call $~lib/typedarray/Uint32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 583 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 10 + i32.const 0 + call $~lib/typedarray/Uint32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 584 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 11 + i32.const 0 + call $~lib/typedarray/Uint32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 585 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 1 + call $~lib/typedarray/Uint32Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i32.const 5 + i32.const 2 + call $~lib/typedarray/Uint32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 587 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int64Array#indexOf (; 461 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i64) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Int64Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $6 + local.get $7 + i32.ge_s + end + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.tee $8 + i32.const 0 + local.tee $9 + local.get $8 + local.get $9 + i32.gt_s + select + local.set $6 + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $4 + i64.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Int64Array#lastIndexOf (; 462 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i64) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Int64Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.set $6 + else + local.get $6 + local.get $7 + i32.ge_s + if + local.get $7 + i32.const 1 + i32.sub + local.set $6 + end + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $4 + i64.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Int64Array,i64>|inlined.0 + end + local.get $6 + i32.const 1 + i32.sub + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Int64Array#lastIndexOf|trampoline (; 463 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + call $~lib/typedarray/Int64Array#get:length + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Int64Array#lastIndexOf + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int64Array,i64> (; 464 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int64Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Int64Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i64.const 0 + i32.const 0 + call $~lib/typedarray/Int64Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 557 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 11 + i32.const 0 + call $~lib/typedarray/Int64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 558 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const -1 + i32.const 0 + call $~lib/typedarray/Int64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 559 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 0 + call $~lib/typedarray/Int64Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 560 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 2 + call $~lib/typedarray/Int64Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 561 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 3 + call $~lib/typedarray/Int64Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 562 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 4 + call $~lib/typedarray/Int64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 1 + i32.const 10 + call $~lib/typedarray/Int64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 564 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 1 + i32.const -100 + call $~lib/typedarray/Int64Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 565 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i64.const 0 + i32.const 0 + call $~lib/typedarray/Int64Array#lastIndexOf|trampoline + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 567 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i64.const 11 + i32.const 0 + call $~lib/typedarray/Int64Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 568 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i64.const -1 + i32.const 0 + call $~lib/typedarray/Int64Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 569 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i64.const 3 + i32.const 0 + call $~lib/typedarray/Int64Array#lastIndexOf|trampoline + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 570 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 4 + call $~lib/typedarray/Int64Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 571 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 3 + call $~lib/typedarray/Int64Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 572 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 2 + call $~lib/typedarray/Int64Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 573 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 1 + i32.const 100 + call $~lib/typedarray/Int64Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 574 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 1 + i32.const -10 + call $~lib/typedarray/Int64Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 575 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 1 + i32.const -11 + call $~lib/typedarray/Int64Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 576 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 4 + i32.const 9 + call $~lib/typedarray/Int64Array#subarray + local.set $5 + local.get $5 + i64.const 3 + i32.const 0 + call $~lib/typedarray/Int64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 580 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 4 + i32.const 0 + call $~lib/typedarray/Int64Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 581 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 5 + i32.const 0 + call $~lib/typedarray/Int64Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 582 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 9 + i32.const 0 + call $~lib/typedarray/Int64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 583 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 10 + i32.const 0 + call $~lib/typedarray/Int64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 584 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 11 + i32.const 0 + call $~lib/typedarray/Int64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 585 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 5 + i32.const 1 + call $~lib/typedarray/Int64Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 5 + i32.const 2 + call $~lib/typedarray/Int64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 587 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint64Array#indexOf (; 465 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i64) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Uint64Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $6 + local.get $7 + i32.ge_s + end + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.tee $8 + i32.const 0 + local.tee $9 + local.get $8 + local.get $9 + i32.gt_s + select + local.set $6 + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $4 + i64.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Uint64Array#lastIndexOf (; 466 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i64) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Uint64Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.set $6 + else + local.get $6 + local.get $7 + i32.ge_s + if + local.get $7 + i32.const 1 + i32.sub + local.set $6 + end + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 3 + i32.shl + i32.add + i64.load + local.get $4 + i64.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Uint64Array,u64>|inlined.0 + end + local.get $6 + i32.const 1 + i32.sub + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Uint64Array#lastIndexOf|trampoline (; 467 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + call $~lib/typedarray/Uint64Array#get:length + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Uint64Array#lastIndexOf + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint64Array,u64> (; 468 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint64Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Uint64Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i64.const 0 + i32.const 0 + call $~lib/typedarray/Uint64Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 557 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 11 + i32.const 0 + call $~lib/typedarray/Uint64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 558 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const -1 + i32.const 0 + call $~lib/typedarray/Uint64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 559 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 0 + call $~lib/typedarray/Uint64Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 560 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 2 + call $~lib/typedarray/Uint64Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 561 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 3 + call $~lib/typedarray/Uint64Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 562 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 4 + call $~lib/typedarray/Uint64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 1 + i32.const 10 + call $~lib/typedarray/Uint64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 564 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 1 + i32.const -100 + call $~lib/typedarray/Uint64Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 565 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i64.const 0 + i32.const 0 + call $~lib/typedarray/Uint64Array#lastIndexOf|trampoline + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 567 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i64.const 11 + i32.const 0 + call $~lib/typedarray/Uint64Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 568 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i64.const -1 + i32.const 0 + call $~lib/typedarray/Uint64Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 569 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + i64.const 3 + i32.const 0 + call $~lib/typedarray/Uint64Array#lastIndexOf|trampoline + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 570 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 4 + call $~lib/typedarray/Uint64Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 571 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 3 + call $~lib/typedarray/Uint64Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 572 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 3 + i32.const 2 + call $~lib/typedarray/Uint64Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 573 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 1 + i32.const 100 + call $~lib/typedarray/Uint64Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 574 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 1 + i32.const -10 + call $~lib/typedarray/Uint64Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 575 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i64.const 1 + i32.const -11 + call $~lib/typedarray/Uint64Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 576 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 4 + i32.const 9 + call $~lib/typedarray/Uint64Array#subarray + local.set $5 + local.get $5 + i64.const 3 + i32.const 0 + call $~lib/typedarray/Uint64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 580 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 4 + i32.const 0 + call $~lib/typedarray/Uint64Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 581 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 5 + i32.const 0 + call $~lib/typedarray/Uint64Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 582 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 9 + i32.const 0 + call $~lib/typedarray/Uint64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 583 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 10 + i32.const 0 + call $~lib/typedarray/Uint64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 584 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 11 + i32.const 0 + call $~lib/typedarray/Uint64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 585 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 5 + i32.const 1 + call $~lib/typedarray/Uint64Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + i64.const 5 + i32.const 2 + call $~lib/typedarray/Uint64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 587 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Float32Array#indexOf (; 469 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 f32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Float32Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $6 + local.get $7 + i32.ge_s + end + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.tee $8 + i32.const 0 + local.tee $9 + local.get $8 + local.get $9 + i32.gt_s + select + local.set $6 + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 2 + i32.shl + i32.add + f32.load + local.get $4 + f32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Float32Array#lastIndexOf (; 470 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 f32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Float32Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.set $6 + else + local.get $6 + local.get $7 + i32.ge_s + if + local.get $7 + i32.const 1 + i32.sub + local.set $6 + end + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 2 + i32.shl + i32.add + f32.load + local.get $4 + f32.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float32Array,f32>|inlined.0 + end + local.get $6 + i32.const 1 + i32.sub + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Float32Array#lastIndexOf|trampoline (; 471 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + call $~lib/typedarray/Float32Array#get:length + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Float32Array#lastIndexOf + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Float32Array,f32> (; 472 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Float32Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + f32.convert_i32_s + call $~lib/typedarray/Float32Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + f32.const 0 + i32.const 0 + call $~lib/typedarray/Float32Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 557 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 11 + i32.const 0 + call $~lib/typedarray/Float32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 558 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const -1 + i32.const 0 + call $~lib/typedarray/Float32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 559 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 3 + i32.const 0 + call $~lib/typedarray/Float32Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 560 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 3 + i32.const 2 + call $~lib/typedarray/Float32Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 561 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 3 + i32.const 3 + call $~lib/typedarray/Float32Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 562 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 3 + i32.const 4 + call $~lib/typedarray/Float32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 1 + i32.const 10 + call $~lib/typedarray/Float32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 564 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 1 + i32.const -100 + call $~lib/typedarray/Float32Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 565 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + f32.const 0 + i32.const 0 + call $~lib/typedarray/Float32Array#lastIndexOf|trampoline + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 567 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + f32.const 11 + i32.const 0 + call $~lib/typedarray/Float32Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 568 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + f32.const -1 + i32.const 0 + call $~lib/typedarray/Float32Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 569 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + f32.const 3 + i32.const 0 + call $~lib/typedarray/Float32Array#lastIndexOf|trampoline + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 570 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 3 + i32.const 4 + call $~lib/typedarray/Float32Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 571 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 3 + i32.const 3 + call $~lib/typedarray/Float32Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 572 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 3 + i32.const 2 + call $~lib/typedarray/Float32Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 573 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 1 + i32.const 100 + call $~lib/typedarray/Float32Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 574 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 1 + i32.const -10 + call $~lib/typedarray/Float32Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 575 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f32.const 1 + i32.const -11 + call $~lib/typedarray/Float32Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 576 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 4 + i32.const 9 + call $~lib/typedarray/Float32Array#subarray + local.set $5 + local.get $5 + f32.const 3 + i32.const 0 + call $~lib/typedarray/Float32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 580 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f32.const 4 + i32.const 0 + call $~lib/typedarray/Float32Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 581 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f32.const 5 + i32.const 0 + call $~lib/typedarray/Float32Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 582 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f32.const 9 + i32.const 0 + call $~lib/typedarray/Float32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 583 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f32.const 10 + i32.const 0 + call $~lib/typedarray/Float32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 584 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f32.const 11 + i32.const 0 + call $~lib/typedarray/Float32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 585 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f32.const 5 + i32.const 1 + call $~lib/typedarray/Float32Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f32.const 5 + i32.const 2 + call $~lib/typedarray/Float32Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 587 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Float64Array#indexOf (; 473 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32) + (local $3 i32) + (local $4 f64) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Float64Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $6 + local.get $7 + i32.ge_s + end + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.tee $8 + i32.const 0 + local.tee $9 + local.get $8 + local.get $9 + i32.gt_s + select + local.set $6 + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + local.get $7 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 3 + i32.shl + i32.add + f64.load + local.get $4 + f64.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 + end + local.get $6 + i32.const 1 + i32.add + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Float64Array#lastIndexOf (; 474 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32) + (local $3 i32) + (local $4 f64) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + block $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 (result i32) + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $3 + local.set $6 + local.get $5 + call $~lib/typedarray/Float64Array#get:length + local.set $7 + local.get $7 + i32.const 0 + i32.eq + if + i32.const -1 + local.set $8 + local.get $5 + call $~lib/rt/pure/__release + local.get $8 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 + end + local.get $6 + i32.const 0 + i32.lt_s + if + local.get $7 + local.get $6 + i32.add + local.set $6 + else + local.get $6 + local.get $7 + i32.ge_s + if + local.get $7 + i32.const 1 + i32.sub + local.set $6 + end + end + local.get $5 + i32.load offset=4 + local.set $8 + block $break|0 + loop $continue|0 + local.get $6 + i32.const 0 + i32.ge_s + i32.eqz + br_if $break|0 + local.get $8 + local.get $6 + i32.const 3 + i32.shl + i32.add + f64.load + local.get $4 + f64.eq + if + local.get $6 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + br $~lib/typedarray/LAST_INDEX_OF<~lib/typedarray/Float64Array,f64>|inlined.0 + end + local.get $6 + i32.const 1 + i32.sub + local.set $6 + br $continue|0 + end + unreachable + end + i32.const -1 + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + end + ) + (func $~lib/typedarray/Float64Array#lastIndexOf|trampoline (; 475 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32) + block $1of1 + block $0of1 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of1 $1of1 $outOfRange + end + unreachable + end + local.get $0 + call $~lib/typedarray/Float64Array#get:length + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Float64Array#lastIndexOf + ) + (func $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Float64Array,f64> (; 476 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + global.get $std/typedarray/testArrayIndexOfAndLastIndexOfValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Float64Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + f64.convert_i32_s + call $~lib/typedarray/Float64Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + f64.const 0 + i32.const 0 + call $~lib/typedarray/Float64Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 557 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 11 + i32.const 0 + call $~lib/typedarray/Float64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 558 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const -1 + i32.const 0 + call $~lib/typedarray/Float64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 559 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 3 + i32.const 0 + call $~lib/typedarray/Float64Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 560 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 3 + i32.const 2 + call $~lib/typedarray/Float64Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 561 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 3 + i32.const 3 + call $~lib/typedarray/Float64Array#indexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 562 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 3 + i32.const 4 + call $~lib/typedarray/Float64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 563 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 1 + i32.const 10 + call $~lib/typedarray/Float64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 564 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 1 + i32.const -100 + call $~lib/typedarray/Float64Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 565 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + f64.const 0 + i32.const 0 + call $~lib/typedarray/Float64Array#lastIndexOf|trampoline + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 567 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + f64.const 11 + i32.const 0 + call $~lib/typedarray/Float64Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 568 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + f64.const -1 + i32.const 0 + call $~lib/typedarray/Float64Array#lastIndexOf|trampoline + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 569 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 1 + global.set $~lib/argc + local.get $3 + f64.const 3 + i32.const 0 + call $~lib/typedarray/Float64Array#lastIndexOf|trampoline + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 570 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 3 + i32.const 4 + call $~lib/typedarray/Float64Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 571 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 3 + i32.const 3 + call $~lib/typedarray/Float64Array#lastIndexOf + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 572 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 3 + i32.const 2 + call $~lib/typedarray/Float64Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 573 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 1 + i32.const 100 + call $~lib/typedarray/Float64Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 574 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 1 + i32.const -10 + call $~lib/typedarray/Float64Array#lastIndexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 575 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + f64.const 1 + i32.const -11 + call $~lib/typedarray/Float64Array#lastIndexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 576 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 4 + i32.const 9 + call $~lib/typedarray/Float64Array#subarray + local.set $5 + local.get $5 + f64.const 3 + i32.const 0 + call $~lib/typedarray/Float64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 580 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f64.const 4 + i32.const 0 + call $~lib/typedarray/Float64Array#indexOf + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 581 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f64.const 5 + i32.const 0 + call $~lib/typedarray/Float64Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 582 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f64.const 9 + i32.const 0 + call $~lib/typedarray/Float64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 583 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f64.const 10 + i32.const 0 + call $~lib/typedarray/Float64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 584 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f64.const 11 + i32.const 0 + call $~lib/typedarray/Float64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 585 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f64.const 5 + i32.const 1 + call $~lib/typedarray/Float64Array#indexOf + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 586 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $5 + f64.const 5 + i32.const 2 + call $~lib/typedarray/Float64Array#indexOf + i32.const -1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 587 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + ) + (func $~lib/util/number/decimalCount32 (; 477 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + local.get $0 + i32.const 100000 + i32.lt_u + if + local.get $0 + i32.const 100 + i32.lt_u + if + i32.const 1 + i32.const 2 + local.get $0 + i32.const 10 + i32.lt_u + select + return + else + i32.const 4 + i32.const 5 + local.get $0 + i32.const 10000 + i32.lt_u + select + local.set $1 + i32.const 3 + local.get $1 + local.get $0 + i32.const 1000 + i32.lt_u + select + return + end + unreachable + else + local.get $0 + i32.const 10000000 + i32.lt_u + if + i32.const 6 + i32.const 7 + local.get $0 + i32.const 1000000 + i32.lt_u + select + return + else + i32.const 9 + i32.const 10 + local.get $0 + i32.const 1000000000 + i32.lt_u + select + local.set $1 + i32.const 8 + local.get $1 + local.get $0 + i32.const 100000000 + i32.lt_u + select + return + end + unreachable + end + unreachable + ) + (func $~lib/util/number/utoa32_lut (; 478 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + i32.const 2160 + i32.load offset=4 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i32.const 10000 + i32.ge_u + i32.eqz + br_if $break|0 + local.get $1 + i32.const 10000 + i32.div_u + local.set $4 + local.get $1 + i32.const 10000 + i32.rem_u + local.set $5 + local.get $4 + local.set $1 + local.get $5 + i32.const 100 + i32.div_u + local.set $6 + local.get $5 + i32.const 100 + i32.rem_u + local.set $7 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $8 + local.get $3 + local.get $7 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $9 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $8 + local.get $9 + i64.const 32 + i64.shl + i64.or + i64.store + br $continue|0 + end + unreachable + end + local.get $1 + i32.const 100 + i32.ge_u + if + local.get $1 + i32.const 100 + i32.div_u + local.set $7 + local.get $1 + i32.const 100 + i32.rem_u + local.set $6 + local.get $7 + local.set $1 + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $6 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + end + local.get $1 + i32.const 10 + i32.ge_u + if + local.get $2 + i32.const 2 + i32.sub + local.set $2 + local.get $3 + local.get $1 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store + else + local.get $2 + i32.const 1 + i32.sub + local.set $2 + i32.const 48 + local.get $1 + i32.add + local.set $5 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $5 + i32.store16 + end + ) + (func $~lib/util/number/itoa32 (; 479 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + i32.eqz + if + i32.const 1720 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i32.const 0 + i32.lt_s + local.set $1 + local.get $1 + if + i32.const 0 + local.get $0 + i32.sub + local.set $0 + end + local.get $0 + call $~lib/util/number/decimalCount32 + local.get $1 + i32.add + local.set $2 + local.get $2 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $3 + local.get $3 + local.set $6 + local.get $0 + local.set $5 + local.get $2 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + local.get $1 + if + local.get $3 + i32.const 45 + i32.store16 + end + local.get $3 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/itoa (; 480 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + call $~lib/util/number/itoa32 + return + ) + (func $~lib/string/String#get:length (; 481 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 16 + i32.sub + i32.load offset=12 + i32.const 1 + i32.shr_u + ) + (func $~lib/util/number/itoa_stream (; 482 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + i32.const 0 + i32.lt_s + local.set $4 + local.get $4 + if + i32.const 0 + local.get $2 + i32.sub + local.set $2 + end + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + call $~lib/util/number/decimalCount32 + local.get $4 + i32.add + local.set $3 + local.get $0 + local.set $7 + local.get $2 + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + local.set $6 + local.get $3 + local.set $5 + local.get $7 + local.get $6 + local.get $5 + call $~lib/util/number/utoa32_lut + local.get $4 + if + local.get $0 + i32.const 45 + i32.store16 + end + local.get $3 + ) + (func $~lib/string/String#substring (; 483 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $1 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $6 + local.get $2 + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + local.set $7 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + i32.const 1 + i32.shl + local.set $8 + local.get $6 + local.tee $4 + local.get $7 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + i32.const 1 + i32.shl + local.set $9 + local.get $9 + local.get $8 + i32.sub + local.set $3 + local.get $3 + i32.eqz + if + i32.const 1704 + call $~lib/rt/pure/__retain + return + end + local.get $8 + i32.eqz + if (result i32) + local.get $9 + local.get $0 + call $~lib/string/String#get:length + i32.const 1 + i32.shl + i32.eq + else + i32.const 0 + end + if + local.get $0 + call $~lib/rt/pure/__retain + return + end + local.get $3 + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $10 + local.get $10 + local.get $0 + local.get $8 + i32.add + local.get $3 + call $~lib/memory/memory.copy + local.get $10 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/string/joinIntegerArray (; 484 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 1704 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i32.load8_s + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 11 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 11 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 0 + i32.shl + i32.add + i32.load8_s + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Int8Array#join (; 485 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $0 + call $~lib/typedarray/Int8Array#get:length + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/util/string/compareImpl (; 486 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $2 + call $~lib/rt/pure/__retain + drop + i32.const 0 + local.set $5 + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $6 + local.get $2 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $7 + block $break|0 + loop $continue|0 + local.get $4 + if (result i32) + local.get $6 + i32.load16_u + local.get $7 + i32.load16_u + i32.sub + local.tee $5 + i32.eqz + else + i32.const 0 + end + i32.eqz + br_if $break|0 + local.get $4 + i32.const 1 + i32.sub + local.set $4 + local.get $6 + i32.const 2 + i32.add + local.set $6 + local.get $7 + i32.const 2 + i32.add + local.set $7 + br $continue|0 + end + unreachable + end + local.get $5 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/string/String.__eq (; 487 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + local.get $1 + i32.eq + if + i32.const 1 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + i32.eq + if (result i32) + i32.const 1 + else + local.get $1 + i32.const 0 + i32.eq + end + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + call $~lib/string/String#get:length + local.set $3 + local.get $3 + local.get $1 + call $~lib/string/String#get:length + i32.ne + if + i32.const 0 + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + return + end + local.get $0 + i32.const 0 + local.get $1 + i32.const 0 + local.get $3 + call $~lib/util/string/compareImpl + i32.eqz + local.set $2 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/typedarray/Int8Array#toString (; 488 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 2192 + call $~lib/typedarray/Int8Array#join + ) + (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int8Array,i8> (; 489 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 5 + call $~lib/typedarray/Int8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int8Array#__set + local.get $1 + i32.const 2192 + call $~lib/typedarray/Int8Array#join + local.tee $2 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 614 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/typedarray/Int8Array#toString + local.tee $3 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 615 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/util/number/utoa32 (; 490 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + local.get $0 + i32.eqz + if + i32.const 1720 + call $~lib/rt/pure/__retain + return + end + local.get $0 + call $~lib/util/number/decimalCount32 + local.set $1 + local.get $1 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $2 + local.get $2 + local.set $5 + local.get $0 + local.set $4 + local.get $1 + local.set $3 + local.get $5 + local.get $4 + local.get $3 + call $~lib/util/number/utoa32_lut + local.get $2 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/itoa (; 491 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 255 + i32.and + call $~lib/util/number/utoa32 + return + ) + (func $~lib/util/number/itoa_stream (; 492 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i32.const 255 + i32.and + i32.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i32.const 255 + i32.and + call $~lib/util/number/decimalCount32 + local.set $3 + local.get $0 + local.set $6 + local.get $2 + i32.const 255 + i32.and + local.set $5 + local.get $3 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 493 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 1704 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i32.load8_u + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 10 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 10 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 0 + i32.shl + i32.add + i32.load8_u + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint8Array#join (; 494 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $0 + call $~lib/typedarray/Uint8Array#get:length + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/typedarray/Uint8Array#toString (; 495 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 2192 + call $~lib/typedarray/Uint8Array#join + ) + (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint8Array,u8> (; 496 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 5 + call $~lib/typedarray/Uint8Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Uint8Array#__set + local.get $1 + i32.const 2192 + call $~lib/typedarray/Uint8Array#join + local.tee $2 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 614 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/typedarray/Uint8Array#toString + local.tee $3 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 615 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint8ClampedArray#join (; 497 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $0 + call $~lib/typedarray/Uint8ClampedArray#get:length + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/typedarray/Uint8ClampedArray#toString (; 498 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 2192 + call $~lib/typedarray/Uint8ClampedArray#join + ) + (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint8ClampedArray,u8> (; 499 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 5 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $1 + i32.const 2192 + call $~lib/typedarray/Uint8ClampedArray#join + local.tee $2 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 614 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/typedarray/Uint8ClampedArray#toString + local.tee $3 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 615 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/util/number/itoa (; 500 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + call $~lib/util/number/itoa32 + return + ) + (func $~lib/util/number/itoa_stream (; 501 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + i32.const 0 + i32.lt_s + local.set $4 + local.get $4 + if + i32.const 0 + local.get $2 + i32.sub + local.set $2 + end + local.get $2 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + call $~lib/util/number/decimalCount32 + local.get $4 + i32.add + local.set $3 + local.get $0 + local.set $7 + local.get $2 + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + local.set $6 + local.get $3 + local.set $5 + local.get $7 + local.get $6 + local.get $5 + call $~lib/util/number/utoa32_lut + local.get $4 + if + local.get $0 + i32.const 45 + i32.store16 + end + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 502 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 1704 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i32.load16_s + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 11 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 11 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + i32.load16_s + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.load16_s + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Int16Array#join (; 503 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $0 + call $~lib/typedarray/Int16Array#get:length + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/typedarray/Int16Array#toString (; 504 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 2192 + call $~lib/typedarray/Int16Array#join + ) + (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int16Array,i16> (; 505 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 5 + call $~lib/typedarray/Int16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int16Array#__set + local.get $1 + i32.const 2192 + call $~lib/typedarray/Int16Array#join + local.tee $2 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 614 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/typedarray/Int16Array#toString + local.tee $3 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 615 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/util/number/itoa (; 506 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 65535 + i32.and + call $~lib/util/number/utoa32 + return + ) + (func $~lib/util/number/itoa_stream (; 507 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i32.const 65535 + i32.and + i32.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i32.const 65535 + i32.and + call $~lib/util/number/decimalCount32 + local.set $3 + local.get $0 + local.set $6 + local.get $2 + i32.const 65535 + i32.and + local.set $5 + local.get $3 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 508 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 1704 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i32.load16_u + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 10 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 10 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.load16_u + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint16Array#join (; 509 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $0 + call $~lib/typedarray/Uint16Array#get:length + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/typedarray/Uint16Array#toString (; 510 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 2192 + call $~lib/typedarray/Uint16Array#join + ) + (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint16Array,u16> (; 511 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 5 + call $~lib/typedarray/Uint16Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Uint16Array#__set + local.get $1 + i32.const 2192 + call $~lib/typedarray/Uint16Array#join + local.tee $2 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 614 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/typedarray/Uint16Array#toString + local.tee $3 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 615 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/util/number/itoa (; 512 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/itoa32 + return + ) + (func $~lib/util/number/itoa_stream (; 513 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i32.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i32.const 0 + i32.lt_s + local.set $4 + local.get $4 + if + i32.const 0 + local.get $2 + i32.sub + local.set $2 + end + local.get $2 + call $~lib/util/number/decimalCount32 + local.get $4 + i32.add + local.set $3 + local.get $0 + local.set $7 + local.get $2 + local.set $6 + local.get $3 + local.set $5 + local.get $7 + local.get $6 + local.get $5 + call $~lib/util/number/utoa32_lut + local.get $4 + if + local.get $0 + i32.const 45 + i32.store16 + end + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 514 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 1704 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i32.load + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 11 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 11 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Int32Array#join (; 515 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $0 + call $~lib/typedarray/Int32Array#get:length + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/typedarray/Int32Array#toString (; 516 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 2192 + call $~lib/typedarray/Int32Array#join + ) + (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int32Array,i32> (; 517 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 5 + call $~lib/typedarray/Int32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int32Array#__set + local.get $1 + i32.const 2192 + call $~lib/typedarray/Int32Array#join + local.tee $2 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 614 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/typedarray/Int32Array#toString + local.tee $3 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 615 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/util/number/itoa (; 518 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + call $~lib/util/number/utoa32 + return + ) + (func $~lib/util/number/itoa_stream (; 519 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i32.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + call $~lib/util/number/decimalCount32 + local.set $3 + local.get $0 + local.set $6 + local.get $2 + local.set $5 + local.get $3 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 520 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 1704 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i32.load + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 10 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 10 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + i32.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint32Array#join (; 521 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $0 + call $~lib/typedarray/Uint32Array#get:length + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/typedarray/Uint32Array#toString (; 522 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 2192 + call $~lib/typedarray/Uint32Array#join + ) + (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint32Array,u32> (; 523 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 5 + call $~lib/typedarray/Uint32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Uint32Array#__set + local.get $1 + i32.const 2192 + call $~lib/typedarray/Uint32Array#join + local.tee $2 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 614 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/typedarray/Uint32Array#toString + local.tee $3 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 615 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/util/number/decimalCount64 (; 524 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (local $1 i32) + local.get $0 + i64.const 1000000000000000 + i64.lt_u + if + local.get $0 + i64.const 1000000000000 + i64.lt_u + if + i32.const 11 + i32.const 12 + local.get $0 + i64.const 100000000000 + i64.lt_u + select + local.set $1 + i32.const 10 + local.get $1 + local.get $0 + i64.const 10000000000 + i64.lt_u + select + return + else + i32.const 14 + i32.const 15 + local.get $0 + i64.const 100000000000000 + i64.lt_u + select + local.set $1 + i32.const 13 + local.get $1 + local.get $0 + i64.const 10000000000000 + i64.lt_u + select + return + end + unreachable + else + local.get $0 + i64.const 100000000000000000 + i64.lt_u + if + i32.const 16 + i32.const 17 + local.get $0 + i64.const 10000000000000000 + i64.lt_u + select + return + else + i32.const 19 + i32.const 20 + local.get $0 + i64.const -8446744073709551616 + i64.lt_u + select + local.set $1 + i32.const 18 + local.get $1 + local.get $0 + i64.const 1000000000000000000 + i64.lt_u + select + return + end + unreachable + end + unreachable + ) + (func $~lib/util/number/utoa64_lut (; 525 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) + (local $3 i32) + (local $4 i64) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i64) + (local $13 i64) + i32.const 2160 + i32.load offset=4 + local.set $3 + block $break|0 + loop $continue|0 + local.get $1 + i64.const 100000000 + i64.ge_u + i32.eqz + br_if $break|0 + local.get $1 + i64.const 100000000 + i64.div_u + local.set $4 + local.get $1 + local.get $4 + i64.const 100000000 + i64.mul + i64.sub + i32.wrap_i64 + local.set $5 + local.get $4 + local.set $1 + local.get $5 + i32.const 10000 + i32.div_u + local.set $6 + local.get $5 + i32.const 10000 + i32.rem_u + local.set $7 + local.get $6 + i32.const 100 + i32.div_u + local.set $8 + local.get $6 + i32.const 100 + i32.rem_u + local.set $9 + local.get $7 + i32.const 100 + i32.div_u + local.set $10 + local.get $7 + i32.const 100 + i32.rem_u + local.set $11 + local.get $3 + local.get $10 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $12 + local.get $3 + local.get $11 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $13 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $12 + local.get $13 + i64.const 32 + i64.shl + i64.or + i64.store + local.get $3 + local.get $8 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $12 + local.get $3 + local.get $9 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.set $13 + local.get $2 + i32.const 4 + i32.sub + local.set $2 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $12 + local.get $13 + i64.const 32 + i64.shl + i64.or + i64.store + br $continue|0 + end + unreachable + end + local.get $0 + local.get $1 + i32.wrap_i64 + local.get $2 + call $~lib/util/number/utoa32_lut + ) + (func $~lib/util/number/itoa64 (; 526 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + local.get $0 + i64.eqz + if + i32.const 1720 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i64.const 0 + i64.lt_s + local.set $1 + local.get $1 + if + i64.const 0 + local.get $0 + i64.sub + local.set $0 + end + local.get $0 + i64.const 4294967295 + i64.le_u + if + local.get $0 + i32.wrap_i64 + local.set $3 + local.get $3 + call $~lib/util/number/decimalCount32 + local.get $1 + i32.add + local.set $4 + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $2 + local.get $2 + local.set $7 + local.get $3 + local.set $6 + local.get $4 + local.set $5 + local.get $7 + local.get $6 + local.get $5 + call $~lib/util/number/utoa32_lut + else + local.get $0 + call $~lib/util/number/decimalCount64 + local.get $1 + i32.add + local.set $4 + local.get $4 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $2 + local.get $2 + local.set $6 + local.get $0 + local.set $8 + local.get $4 + local.set $5 + local.get $6 + local.get $8 + local.get $5 + call $~lib/util/number/utoa64_lut + end + local.get $1 + if + local.get $2 + i32.const 45 + i32.store16 + end + local.get $2 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/itoa (; 527 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + local.get $0 + call $~lib/util/number/itoa64 + return + ) + (func $~lib/util/number/itoa_stream (; 528 ;) (type $FUNCSIG$iiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i64) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i64.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i64.const 0 + i64.lt_s + local.set $4 + local.get $4 + if + i64.const 0 + local.get $2 + i64.sub + local.set $2 + end + local.get $2 + i64.const 4294967295 + i64.le_u + if + local.get $2 + i32.wrap_i64 + local.set $5 + local.get $5 + call $~lib/util/number/decimalCount32 + local.get $4 + i32.add + local.set $3 + local.get $0 + local.set $8 + local.get $5 + local.set $7 + local.get $3 + local.set $6 + local.get $8 + local.get $7 + local.get $6 + call $~lib/util/number/utoa32_lut + else + local.get $2 + call $~lib/util/number/decimalCount64 + local.get $4 + i32.add + local.set $3 + local.get $0 + local.set $7 + local.get $2 + local.set $9 + local.get $3 + local.set $6 + local.get $7 + local.get $9 + local.get $6 + call $~lib/util/number/utoa64_lut + end + local.get $4 + if + local.get $0 + i32.const 45 + i32.store16 + end + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 529 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i64) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 1704 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i64.load + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 21 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 21 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 3 + i32.shl + i32.add + i64.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 3 + i32.shl + i32.add + i64.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Int64Array#join (; 530 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $0 + call $~lib/typedarray/Int64Array#get:length + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/typedarray/Int64Array#toString (; 531 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 2192 + call $~lib/typedarray/Int64Array#join + ) + (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int64Array,i64> (; 532 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 5 + call $~lib/typedarray/Int64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 1 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 1 + i64.const 2 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 2 + i64.const 3 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 3 + i64.const 4 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 4 + i64.const 5 + call $~lib/typedarray/Int64Array#__set + local.get $1 + i32.const 2192 + call $~lib/typedarray/Int64Array#join + local.tee $2 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 614 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/typedarray/Int64Array#toString + local.tee $3 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 615 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/util/number/utoa64 (; 533 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i64) + local.get $0 + i64.eqz + if + i32.const 1720 + call $~lib/rt/pure/__retain + return + end + local.get $0 + i64.const 4294967295 + i64.le_u + if + local.get $0 + i32.wrap_i64 + local.set $2 + local.get $2 + call $~lib/util/number/decimalCount32 + local.set $3 + local.get $3 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $1 + local.get $1 + local.set $6 + local.get $2 + local.set $5 + local.get $3 + local.set $4 + local.get $6 + local.get $5 + local.get $4 + call $~lib/util/number/utoa32_lut + else + local.get $0 + call $~lib/util/number/decimalCount64 + local.set $3 + local.get $3 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $1 + local.get $1 + local.set $5 + local.get $0 + local.set $7 + local.get $3 + local.set $4 + local.get $5 + local.get $7 + local.get $4 + call $~lib/util/number/utoa64_lut + end + local.get $1 + call $~lib/rt/pure/__retain + ) + (func $~lib/util/number/itoa (; 534 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) + local.get $0 + call $~lib/util/number/utoa64 + return + ) + (func $~lib/util/number/itoa_stream (; 535 ;) (type $FUNCSIG$iiij) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i64) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + i64.eqz + if + local.get $0 + i32.const 48 + i32.store16 + i32.const 1 + return + end + i32.const 0 + local.set $3 + local.get $2 + i64.const 4294967295 + i64.le_u + if + local.get $2 + i32.wrap_i64 + local.set $4 + local.get $4 + call $~lib/util/number/decimalCount32 + local.set $3 + local.get $0 + local.set $7 + local.get $4 + local.set $6 + local.get $3 + local.set $5 + local.get $7 + local.get $6 + local.get $5 + call $~lib/util/number/utoa32_lut + else + local.get $2 + call $~lib/util/number/decimalCount64 + local.set $3 + local.get $0 + local.set $6 + local.get $2 + local.set $8 + local.get $3 + local.set $5 + local.get $6 + local.get $8 + local.get $5 + call $~lib/util/number/utoa64_lut + end + local.get $3 + ) + (func $~lib/util/string/joinIntegerArray (; 536 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i64) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 1704 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + i64.load + call $~lib/util/number/itoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 20 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 20 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 3 + i32.shl + i32.add + i64.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 3 + i32.shl + i32.add + i64.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/itoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Uint64Array#join (; 537 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $0 + call $~lib/typedarray/Uint64Array#get:length + local.get $1 + call $~lib/util/string/joinIntegerArray + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/typedarray/Uint64Array#toString (; 538 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 2192 + call $~lib/typedarray/Uint64Array#join + ) + (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint64Array,u64> (; 539 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 5 + call $~lib/typedarray/Uint64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + i64.const 1 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 1 + i64.const 2 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 2 + i64.const 3 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 3 + i64.const 4 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 4 + i64.const 5 + call $~lib/typedarray/Uint64Array#__set + local.get $1 + i32.const 2192 + call $~lib/typedarray/Uint64Array#join + local.tee $2 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 614 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/typedarray/Uint64Array#toString + local.tee $3 + i32.const 2216 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 615 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/number/isFinite (; 540 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + local.get $0 + local.get $0 + f64.sub + f64.const 0 + f64.eq + ) + (func $~lib/array/Array#__unchecked_get (; 541 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 3 + i32.shl + i32.add + i64.load + ) + (func $~lib/array/Array#__unchecked_get (; 542 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + local.get $0 + i32.load offset=4 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.load16_s + ) + (func $~lib/util/number/genDigits (; 543 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i64) + (local $11 i32) + (local $12 i32) + (local $13 i64) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i32) + (local $25 i32) + (local $26 i32) + i32.const 0 + local.get $4 + i32.sub + local.set $7 + i64.const 1 + local.get $7 + i64.extend_i32_s + i64.shl + local.set $8 + local.get $8 + i64.const 1 + i64.sub + local.set $9 + local.get $3 + local.get $1 + i64.sub + local.set $10 + local.get $4 + local.set $11 + local.get $3 + local.get $7 + i64.extend_i32_s + i64.shr_u + i32.wrap_i64 + local.set $12 + local.get $3 + local.get $9 + i64.and + local.set $13 + local.get $12 + call $~lib/util/number/decimalCount32 + local.set $14 + local.get $6 + local.set $15 + i32.const 3400 + i32.load offset=4 + local.set $16 + block $break|0 + loop $continue|0 + local.get $14 + i32.const 0 + i32.gt_s + i32.eqz + br_if $break|0 + block $break|1 + block $case10|1 + block $case9|1 + block $case8|1 + block $case7|1 + block $case6|1 + block $case5|1 + block $case4|1 + block $case3|1 + block $case2|1 + block $case1|1 + block $case0|1 + local.get $14 + local.set $18 + local.get $18 + i32.const 10 + i32.eq + br_if $case0|1 + local.get $18 + i32.const 9 + i32.eq + br_if $case1|1 + local.get $18 + i32.const 8 + i32.eq + br_if $case2|1 + local.get $18 + i32.const 7 + i32.eq + br_if $case3|1 + local.get $18 + i32.const 6 + i32.eq + br_if $case4|1 + local.get $18 + i32.const 5 + i32.eq + br_if $case5|1 + local.get $18 + i32.const 4 + i32.eq + br_if $case6|1 + local.get $18 + i32.const 3 + i32.eq + br_if $case7|1 + local.get $18 + i32.const 2 + i32.eq + br_if $case8|1 + local.get $18 + i32.const 1 + i32.eq + br_if $case9|1 + br $case10|1 + end + local.get $12 + i32.const 1000000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100000 + i32.div_u + local.set $17 + local.get $12 + i32.const 100000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10000 + i32.div_u + local.set $17 + local.get $12 + i32.const 10000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 1000 + i32.div_u + local.set $17 + local.get $12 + i32.const 1000 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 100 + i32.div_u + local.set $17 + local.get $12 + i32.const 100 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + i32.const 10 + i32.div_u + local.set $17 + local.get $12 + i32.const 10 + i32.rem_u + local.set $12 + br $break|1 + end + local.get $12 + local.set $17 + i32.const 0 + local.set $12 + br $break|1 + end + i32.const 0 + local.set $17 + br $break|1 + end + local.get $17 + local.get $15 + i32.or + if + local.get $0 + local.get $15 + local.tee $18 + i32.const 1 + i32.add + local.set $15 + local.get $18 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $17 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $12 + i64.extend_i32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.get $13 + i64.add + local.set $19 + local.get $19 + local.get $5 + i64.le_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $19 + local.set $22 + local.get $16 + local.get $14 + i32.const 2 + i32.shl + i32.add + i64.load32_u + local.get $7 + i64.extend_i32_s + i64.shl + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $25 + local.get $25 + i32.load16_u + local.set $26 + block $break|2 + loop $continue|2 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|2 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|2 + end + unreachable + end + local.get $25 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|0 + end + unreachable + end + loop $continue|3 + local.get $13 + i64.const 10 + i64.mul + local.set $13 + local.get $5 + i64.const 10 + i64.mul + local.set $5 + local.get $13 + local.get $7 + i64.extend_i32_s + i64.shr_u + local.set $19 + local.get $19 + local.get $15 + i64.extend_i32_s + i64.or + i64.const 0 + i64.ne + if + local.get $0 + local.get $15 + local.tee $17 + i32.const 1 + i32.add + local.set $15 + local.get $17 + i32.const 1 + i32.shl + i32.add + i32.const 48 + local.get $19 + i32.wrap_i64 + i32.const 65535 + i32.and + i32.add + i32.store16 + end + local.get $13 + local.get $9 + i64.and + local.set $13 + local.get $14 + i32.const 1 + i32.sub + local.set $14 + local.get $13 + local.get $5 + i64.lt_u + if + global.get $~lib/util/number/_K + local.get $14 + i32.add + global.set $~lib/util/number/_K + local.get $10 + local.get $16 + i32.const 0 + local.get $14 + i32.sub + i32.const 2 + i32.shl + i32.add + i64.load32_u + i64.mul + local.set $10 + local.get $0 + local.set $24 + local.get $15 + local.set $18 + local.get $5 + local.set $23 + local.get $13 + local.set $22 + local.get $8 + local.set $21 + local.get $10 + local.set $20 + local.get $24 + local.get $18 + i32.const 1 + i32.sub + i32.const 1 + i32.shl + i32.add + local.set $17 + local.get $17 + i32.load16_u + local.set $26 + block $break|4 + loop $continue|4 + local.get $22 + local.get $20 + i64.lt_u + if (result i32) + local.get $23 + local.get $22 + i64.sub + local.get $21 + i64.ge_u + else + i32.const 0 + end + if (result i32) + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.lt_u + if (result i32) + i32.const 1 + else + local.get $20 + local.get $22 + i64.sub + local.get $22 + local.get $21 + i64.add + local.get $20 + i64.sub + i64.gt_u + end + else + i32.const 0 + end + i32.eqz + br_if $break|4 + local.get $26 + i32.const 1 + i32.sub + local.set $26 + local.get $22 + local.get $21 + i64.add + local.set $22 + br $continue|4 + end + unreachable + end + local.get $17 + local.get $26 + i32.store16 + local.get $15 + return + end + br $continue|3 + end + unreachable + ) + (func $~lib/util/number/prettify (; 544 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + local.get $2 + i32.eqz + if + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $1 + i32.const 2 + i32.add + return + end + local.get $1 + local.get $2 + i32.add + local.set $3 + local.get $1 + local.get $3 + i32.le_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + block $break|0 + local.get $1 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.const 48 + i32.const 16 + i32.shl + i32.or + i32.store + local.get $3 + i32.const 2 + i32.add + return + else + local.get $3 + i32.const 0 + i32.gt_s + if (result i32) + local.get $3 + i32.const 21 + i32.le_s + else + i32.const 0 + end + if + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + local.set $4 + local.get $4 + i32.const 2 + i32.add + local.get $4 + i32.const 0 + local.get $2 + i32.sub + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + local.get $3 + i32.const 1 + i32.shl + i32.add + i32.const 46 + i32.store16 + local.get $1 + i32.const 1 + i32.add + return + else + i32.const -6 + local.get $3 + i32.lt_s + if (result i32) + local.get $3 + i32.const 0 + i32.le_s + else + i32.const 0 + end + if + i32.const 2 + local.get $3 + i32.sub + local.set $4 + local.get $0 + local.get $4 + i32.const 1 + i32.shl + i32.add + local.get $0 + local.get $1 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $0 + i32.const 48 + i32.const 46 + i32.const 16 + i32.shl + i32.or + i32.store + block $break|1 + i32.const 2 + local.set $5 + loop $loop|1 + local.get $5 + local.get $4 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $0 + local.get $5 + i32.const 1 + i32.shl + i32.add + i32.const 48 + i32.store16 + local.get $5 + i32.const 1 + i32.add + local.set $5 + br $loop|1 + end + unreachable + end + local.get $1 + local.get $4 + i32.add + return + else + local.get $1 + i32.const 1 + i32.eq + if + local.get $0 + i32.const 101 + i32.store16 offset=2 + local.get $0 + i32.const 4 + i32.add + local.set $4 + local.get $3 + i32.const 1 + i32.sub + local.set $5 + local.get $5 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $5 + i32.sub + local.set $5 + end + local.get $5 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $7 + local.get $4 + local.set $10 + local.get $5 + local.set $9 + local.get $7 + local.set $8 + local.get $10 + local.get $9 + local.get $8 + call $~lib/util/number/utoa32_lut + local.get $4 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $7 + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + else + local.get $1 + i32.const 1 + i32.shl + local.set $7 + local.get $0 + i32.const 4 + i32.add + local.get $0 + i32.const 2 + i32.add + local.get $7 + i32.const 2 + i32.sub + call $~lib/memory/memory.copy + local.get $0 + i32.const 46 + i32.store16 offset=2 + local.get $0 + local.get $7 + i32.add + i32.const 101 + i32.store16 offset=2 + local.get $1 + local.get $0 + local.get $7 + i32.add + i32.const 4 + i32.add + local.set $9 + local.get $3 + i32.const 1 + i32.sub + local.set $8 + local.get $8 + i32.const 0 + i32.lt_s + local.set $6 + local.get $6 + if + i32.const 0 + local.get $8 + i32.sub + local.set $8 + end + local.get $8 + call $~lib/util/number/decimalCount32 + i32.const 1 + i32.add + local.set $4 + local.get $9 + local.set $11 + local.get $8 + local.set $5 + local.get $4 + local.set $10 + local.get $11 + local.get $5 + local.get $10 + call $~lib/util/number/utoa32_lut + local.get $9 + i32.const 45 + i32.const 43 + local.get $6 + select + i32.store16 + local.get $4 + i32.add + local.set $1 + local.get $1 + i32.const 2 + i32.add + return + end + unreachable + end + unreachable + end + unreachable + end + unreachable + ) + (func $~lib/util/number/dtoa_core (; 545 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 i64) + (local $7 i32) + (local $8 i64) + (local $9 i64) + (local $10 i32) + (local $11 i64) + (local $12 i64) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 f64) + (local $17 i64) + (local $18 i64) + (local $19 i64) + (local $20 i64) + (local $21 i64) + (local $22 i64) + (local $23 i64) + (local $24 i64) + (local $25 i64) + (local $26 i32) + (local $27 i64) + (local $28 i32) + local.get $1 + f64.const 0 + f64.lt + local.set $2 + local.get $2 + if + local.get $1 + f64.neg + local.set $1 + local.get $0 + i32.const 45 + i32.store16 + end + local.get $1 + local.set $5 + local.get $0 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + i64.reinterpret_f64 + local.set $6 + local.get $6 + i64.const 9218868437227405312 + i64.and + i64.const 52 + i64.shr_u + i32.wrap_i64 + local.set $7 + local.get $6 + i64.const 4503599627370495 + i64.and + local.set $8 + local.get $7 + i32.const 0 + i32.ne + i64.extend_i32_u + i64.const 52 + i64.shl + local.get $8 + i64.add + local.set $9 + local.get $7 + i32.const 1 + local.get $7 + i32.const 0 + i32.ne + select + i32.const 1023 + i32.const 52 + i32.add + i32.sub + local.set $7 + local.get $9 + local.set $11 + local.get $7 + local.set $10 + local.get $11 + i64.const 1 + i64.shl + i64.const 1 + i64.add + local.set $12 + local.get $10 + i32.const 1 + i32.sub + local.set $13 + local.get $12 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $12 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $12 + local.get $13 + local.get $14 + i32.sub + local.set $13 + i32.const 1 + local.get $11 + i64.const 4503599627370496 + i64.eq + i32.add + local.set $15 + local.get $12 + global.set $~lib/util/number/_frc_plus + local.get $11 + local.get $15 + i64.extend_i32_s + i64.shl + i64.const 1 + i64.sub + local.get $10 + local.get $15 + i32.sub + local.get $13 + i32.sub + i64.extend_i32_s + i64.shl + global.set $~lib/util/number/_frc_minus + local.get $13 + global.set $~lib/util/number/_exp + global.get $~lib/util/number/_exp + local.set $10 + i32.const -61 + local.get $10 + i32.sub + f64.convert_i32_s + f64.const 0.30102999566398114 + f64.mul + f64.const 347 + f64.add + local.set $16 + local.get $16 + i32.trunc_f64_s + local.set $15 + local.get $15 + local.get $15 + f64.convert_i32_s + local.get $16 + f64.ne + i32.add + local.set $15 + local.get $15 + i32.const 3 + i32.shr_s + i32.const 1 + i32.add + local.set $14 + i32.const 348 + local.get $14 + i32.const 3 + i32.shl + i32.sub + global.set $~lib/util/number/_K + i32.const 3088 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_frc_pow + i32.const 3312 + local.get $14 + call $~lib/array/Array#__unchecked_get + global.set $~lib/util/number/_exp_pow + local.get $9 + i64.clz + i32.wrap_i64 + local.set $14 + local.get $9 + local.get $14 + i64.extend_i32_s + i64.shl + local.set $9 + local.get $7 + local.get $14 + i32.sub + local.set $7 + global.get $~lib/util/number/_frc_pow + local.set $12 + global.get $~lib/util/number/_exp_pow + local.set $15 + local.get $9 + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $24 + local.get $24 + i64.const 2147483647 + i64.add + local.set $24 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $24 + i64.const 32 + i64.shr_u + local.set $24 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $24 + i64.add + local.set $24 + local.get $7 + local.set $10 + local.get $15 + local.set $13 + local.get $10 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $10 + global.get $~lib/util/number/_frc_plus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $23 + local.get $11 + i64.const 4294967295 + i64.and + local.set $22 + local.get $17 + i64.const 32 + i64.shr_u + local.set $21 + local.get $11 + i64.const 32 + i64.shr_u + local.set $20 + local.get $23 + local.get $22 + i64.mul + local.set $19 + local.get $21 + local.get $22 + i64.mul + local.get $19 + i64.const 32 + i64.shr_u + i64.add + local.set $18 + local.get $23 + local.get $20 + i64.mul + local.get $18 + i64.const 4294967295 + i64.and + i64.add + local.set $25 + local.get $25 + i64.const 2147483647 + i64.add + local.set $25 + local.get $18 + i64.const 32 + i64.shr_u + local.set $18 + local.get $25 + i64.const 32 + i64.shr_u + local.set $25 + local.get $21 + local.get $20 + i64.mul + local.get $18 + i64.add + local.get $25 + i64.add + i64.const 1 + i64.sub + local.set $25 + global.get $~lib/util/number/_exp + local.set $26 + local.get $15 + local.set $13 + local.get $26 + local.get $13 + i32.add + i32.const 64 + i32.add + local.set $26 + global.get $~lib/util/number/_frc_minus + local.set $17 + local.get $12 + local.set $11 + local.get $17 + i64.const 4294967295 + i64.and + local.set $18 + local.get $11 + i64.const 4294967295 + i64.and + local.set $19 + local.get $17 + i64.const 32 + i64.shr_u + local.set $20 + local.get $11 + i64.const 32 + i64.shr_u + local.set $21 + local.get $18 + local.get $19 + i64.mul + local.set $22 + local.get $20 + local.get $19 + i64.mul + local.get $22 + i64.const 32 + i64.shr_u + i64.add + local.set $23 + local.get $18 + local.get $21 + i64.mul + local.get $23 + i64.const 4294967295 + i64.and + i64.add + local.set $27 + local.get $27 + i64.const 2147483647 + i64.add + local.set $27 + local.get $23 + i64.const 32 + i64.shr_u + local.set $23 + local.get $27 + i64.const 32 + i64.shr_u + local.set $27 + local.get $20 + local.get $21 + i64.mul + local.get $23 + i64.add + local.get $27 + i64.add + i64.const 1 + i64.add + local.set $27 + local.get $25 + local.get $27 + i64.sub + local.set $23 + local.get $4 + local.get $24 + local.get $10 + local.get $25 + local.get $26 + local.get $23 + local.get $3 + call $~lib/util/number/genDigits + local.set $28 + local.get $0 + local.get $2 + i32.const 1 + i32.shl + i32.add + local.get $28 + local.get $2 + i32.sub + global.get $~lib/util/number/_K + call $~lib/util/number/prettify + local.set $28 + local.get $28 + local.get $2 + i32.add + ) + (func $~lib/util/number/dtoa (; 546 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + f64.const 0 + f64.eq + if + i32.const 2256 + call $~lib/rt/pure/__retain + return + end + local.get $0 + call $~lib/number/isFinite + i32.eqz + if + local.get $0 + call $~lib/number/isNaN + if + i32.const 2280 + call $~lib/rt/pure/__retain + return + end + i32.const 2304 + i32.const 2344 + local.get $0 + f64.const 0 + f64.lt + select + call $~lib/rt/pure/__retain + return + end + i32.const 28 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + local.set $1 + local.get $1 + local.get $0 + call $~lib/util/number/dtoa_core + local.set $2 + local.get $2 + i32.const 28 + i32.eq + if + local.get $1 + call $~lib/rt/pure/__retain + return + end + local.get $1 + i32.const 0 + local.get $2 + call $~lib/string/String#substring + local.set $3 + local.get $1 + call $~lib/rt/tlsf/__free + local.get $3 + ) + (func $~lib/util/number/dtoa_stream (; 547 ;) (type $FUNCSIG$iiid) (param $0 i32) (param $1 i32) (param $2 f64) (result i32) + (local $3 i32) + (local $4 i32) + local.get $0 + local.get $1 + i32.const 1 + i32.shl + i32.add + local.set $0 + local.get $2 + f64.const 0 + f64.eq + if + local.get $0 + i32.const 48 + i32.store16 + local.get $0 + i32.const 46 + i32.store16 offset=2 + local.get $0 + i32.const 48 + i32.store16 offset=4 + i32.const 3 + return + end + local.get $2 + call $~lib/number/isFinite + i32.eqz + if + local.get $2 + call $~lib/number/isNaN + if + local.get $0 + i32.const 78 + i32.store16 + local.get $0 + i32.const 97 + i32.store16 offset=2 + local.get $0 + i32.const 78 + i32.store16 offset=4 + i32.const 3 + return + else + local.get $2 + f64.const 0 + f64.lt + local.set $3 + i32.const 8 + local.get $3 + i32.add + local.set $4 + local.get $0 + i32.const 2304 + i32.const 2344 + local.get $3 + select + local.get $4 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $4 + return + end + unreachable + end + local.get $0 + local.get $2 + call $~lib/util/number/dtoa_core + ) + (func $~lib/util/string/joinFloatArray (; 548 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 f32) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 1704 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + f32.load + f64.promote_f32 + call $~lib/util/number/dtoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 28 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 28 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 2 + i32.shl + i32.add + f32.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + f64.promote_f32 + call $~lib/util/number/dtoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 2 + i32.shl + i32.add + f32.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + f64.promote_f32 + call $~lib/util/number/dtoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Float32Array#join (; 549 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $0 + call $~lib/typedarray/Float32Array#get:length + local.get $1 + call $~lib/util/string/joinFloatArray + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/typedarray/Float32Array#toString (; 550 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 2192 + call $~lib/typedarray/Float32Array#join + ) + (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Float32Array,f32> (; 551 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 5 + call $~lib/typedarray/Float32Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f32.const 1 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 1 + f32.const 2 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 2 + f32.const 3 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 3 + f32.const 4 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 4 + f32.const 5 + call $~lib/typedarray/Float32Array#__set + local.get $1 + i32.const 2192 + call $~lib/typedarray/Float32Array#join + local.tee $2 + i32.const 3432 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 611 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/typedarray/Float32Array#toString + local.tee $3 + i32.const 3432 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 612 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/util/string/joinFloatArray (; 552 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 f64) + local.get $2 + call $~lib/rt/pure/__retain + drop + local.get $1 + i32.const 1 + i32.sub + local.set $3 + local.get $3 + i32.const 0 + i32.lt_s + if + i32.const 1704 + call $~lib/rt/pure/__retain + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $3 + i32.eqz + if + local.get $0 + f64.load + call $~lib/util/number/dtoa + local.tee $4 + call $~lib/rt/pure/__retain + local.set $5 + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + return + end + local.get $2 + call $~lib/string/String#get:length + local.set $6 + i32.const 28 + local.get $6 + i32.add + local.get $3 + i32.mul + i32.const 28 + i32.add + local.set $7 + local.get $7 + i32.const 1 + i32.shl + i32.const 1 + call $~lib/rt/tlsf/__alloc + call $~lib/rt/pure/__retain + local.set $8 + i32.const 0 + local.set $9 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $3 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $0 + local.get $4 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/dtoa_stream + i32.add + local.set $9 + local.get $6 + if + local.get $8 + local.get $9 + i32.const 1 + i32.shl + i32.add + local.get $2 + local.get $6 + i32.const 1 + i32.shl + call $~lib/memory/memory.copy + local.get $9 + local.get $6 + i32.add + local.set $9 + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $0 + local.get $3 + i32.const 3 + i32.shl + i32.add + f64.load + local.set $10 + local.get $9 + local.get $8 + local.get $9 + local.get $10 + call $~lib/util/number/dtoa_stream + i32.add + local.set $9 + local.get $7 + local.get $9 + i32.gt_s + if + local.get $8 + i32.const 0 + local.get $9 + call $~lib/string/String#substring + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $4 + return + end + local.get $8 + local.set $4 + local.get $2 + call $~lib/rt/pure/__release + local.get $4 + ) + (func $~lib/typedarray/Float64Array#join (; 553 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + local.get $1 + call $~lib/rt/pure/__retain + drop + local.get $0 + i32.load offset=4 + local.get $0 + call $~lib/typedarray/Float64Array#get:length + local.get $1 + call $~lib/util/string/joinFloatArray + local.set $2 + local.get $1 + call $~lib/rt/pure/__release + local.get $2 + ) + (func $~lib/typedarray/Float64Array#toString (; 554 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 2192 + call $~lib/typedarray/Float64Array#join + ) + (func $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Float64Array,f64> (; 555 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + i32.const 0 + i32.const 5 + call $~lib/typedarray/Float64Array#constructor + local.tee $0 + call $~lib/rt/pure/__retain + local.set $1 + local.get $1 + i32.const 0 + f64.const 1 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 1 + f64.const 2 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 2 + f64.const 3 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 3 + f64.const 4 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 4 + f64.const 5 + call $~lib/typedarray/Float64Array#__set + local.get $1 + i32.const 2192 + call $~lib/typedarray/Float64Array#join + local.tee $2 + i32.const 3432 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 611 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/typedarray/Float64Array#toString + local.tee $3 + i32.const 3432 + call $~lib/string/String.__eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 612 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + ) + (func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 556 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + local.get $0 + i32.const 16 + i32.sub + i32.load offset=12 + ) + (func $~lib/arraybuffer/ArrayBuffer#slice (; 557 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + local.get $0 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $3 + local.get $1 + i32.const 0 + i32.lt_s + if (result i32) + local.get $3 + local.get $1 + i32.add + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + else + local.get $1 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + end + local.set $1 + local.get $2 + i32.const 0 + i32.lt_s + if (result i32) + local.get $3 + local.get $2 + i32.add + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + else + local.get $2 + local.tee $4 + local.get $3 + local.tee $5 + local.get $4 + local.get $5 + i32.lt_s + select + end + local.set $2 + local.get $2 + local.get $1 + i32.sub + local.tee $4 + i32.const 0 + local.tee $5 + local.get $4 + local.get $5 + i32.gt_s + select + local.set $6 + local.get $6 + i32.const 0 + call $~lib/rt/tlsf/__alloc + local.set $7 + local.get $7 + local.get $0 + local.get $1 + i32.add + local.get $6 + call $~lib/memory/memory.copy + local.get $7 + call $~lib/rt/pure/__retain + ) + (func $~lib/typedarray/Int8Array.wrap (; 558 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $6 + local.get $4 + local.get $6 + i32.ge_u + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 280 + i32.const 432 + i32.const 1680 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $3 + i32.const -1 + i32.eq + if + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const -2147483648 + i32.and + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1687 + i32.const 8 + call $~lib/builtins/abort + unreachable + else + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $7 + end + else + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1692 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + else + local.get $3 + i32.const 0 + i32.shl + local.set $7 + end + local.get $4 + local.get $7 + i32.add + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.gt_s + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1698 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + i32.const 12 + i32.const 3 + call $~lib/rt/tlsf/__alloc + local.set $8 + local.get $8 + local.get $5 + call $~lib/rt/pure/__retain + i32.store + local.get $8 + local.get $7 + i32.store offset=8 + local.get $8 + local.get $5 + local.get $4 + i32.add + i32.store offset=4 + local.get $8 + call $~lib/rt/pure/__retain + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Int8Array.wrap|trampoline (; 559 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $2of2 + block $1of2 + block $0of2 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of2 $1of2 $2of2 $outOfRange + end + unreachable + end + i32.const 0 + local.set $1 + end + i32.const -1 + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Int8Array.wrap + ) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Int8Array,i8> (; 560 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $std/typedarray/testArrayWrapValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int8Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i32.const 24 + i32.shl + i32.const 24 + i32.shr_s + call $~lib/typedarray/Int8Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.load + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + i32.load offset=8 + i32.add + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $5 + i32.const 0 + local.set $6 + i32.const 1 + global.set $~lib/argc + local.get $5 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Int8Array.wrap|trampoline + local.set $4 + local.get $6 + call $~lib/rt/pure/__release + local.get $4 + local.set $6 + block $break|1 + i32.const 0 + local.set $4 + loop $loop|1 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $4 + call $~lib/typedarray/Int8Array#__get + local.get $6 + local.get $4 + call $~lib/typedarray/Int8Array#__get + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 666 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|1 + end + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint8Array.wrap (; 561 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $6 + local.get $4 + local.get $6 + i32.ge_u + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 280 + i32.const 432 + i32.const 1680 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $3 + i32.const -1 + i32.eq + if + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const -2147483648 + i32.and + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1687 + i32.const 8 + call $~lib/builtins/abort + unreachable + else + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $7 + end + else + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1692 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + else + local.get $3 + i32.const 0 + i32.shl + local.set $7 + end + local.get $4 + local.get $7 + i32.add + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.gt_s + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1698 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + i32.const 12 + i32.const 4 + call $~lib/rt/tlsf/__alloc + local.set $8 + local.get $8 + local.get $5 + call $~lib/rt/pure/__retain + i32.store + local.get $8 + local.get $7 + i32.store offset=8 + local.get $8 + local.get $5 + local.get $4 + i32.add + i32.store offset=4 + local.get $8 + call $~lib/rt/pure/__retain + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Uint8Array.wrap|trampoline (; 562 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $2of2 + block $1of2 + block $0of2 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of2 $1of2 $2of2 $outOfRange + end + unreachable + end + i32.const 0 + local.set $1 + end + i32.const -1 + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Uint8Array.wrap + ) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint8Array,u8> (; 563 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $std/typedarray/testArrayWrapValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint8Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.load + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + i32.load offset=8 + i32.add + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $5 + i32.const 0 + local.set $6 + i32.const 1 + global.set $~lib/argc + local.get $5 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint8Array.wrap|trampoline + local.set $4 + local.get $6 + call $~lib/rt/pure/__release + local.get $4 + local.set $6 + block $break|1 + i32.const 0 + local.set $4 + loop $loop|1 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $4 + call $~lib/typedarray/Uint8Array#__get + local.get $6 + local.get $4 + call $~lib/typedarray/Uint8Array#__get + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 666 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|1 + end + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint8ClampedArray.wrap (; 564 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $6 + local.get $4 + local.get $6 + i32.ge_u + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 280 + i32.const 432 + i32.const 1680 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $3 + i32.const -1 + i32.eq + if + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const -2147483648 + i32.and + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1687 + i32.const 8 + call $~lib/builtins/abort + unreachable + else + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $7 + end + else + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1692 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + else + local.get $3 + i32.const 0 + i32.shl + local.set $7 + end + local.get $4 + local.get $7 + i32.add + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.gt_s + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1698 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + i32.const 12 + i32.const 5 + call $~lib/rt/tlsf/__alloc + local.set $8 + local.get $8 + local.get $5 + call $~lib/rt/pure/__retain + i32.store + local.get $8 + local.get $7 + i32.store offset=8 + local.get $8 + local.get $5 + local.get $4 + i32.add + i32.store offset=4 + local.get $8 + call $~lib/rt/pure/__retain + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Uint8ClampedArray.wrap|trampoline (; 565 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $2of2 + block $1of2 + block $0of2 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of2 $1of2 $2of2 $outOfRange + end + unreachable + end + i32.const 0 + local.set $1 + end + i32.const -1 + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Uint8ClampedArray.wrap + ) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint8ClampedArray,u8> (; 566 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $std/typedarray/testArrayWrapValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i32.const 255 + i32.and + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.load + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + i32.load offset=8 + i32.add + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $5 + i32.const 0 + local.set $6 + i32.const 1 + global.set $~lib/argc + local.get $5 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray.wrap|trampoline + local.set $4 + local.get $6 + call $~lib/rt/pure/__release + local.get $4 + local.set $6 + block $break|1 + i32.const 0 + local.set $4 + loop $loop|1 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $4 + call $~lib/typedarray/Uint8ClampedArray#__get + local.get $6 + local.get $4 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 666 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|1 + end + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int16Array.wrap (; 567 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $6 + local.get $4 + local.get $6 + i32.ge_u + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 280 + i32.const 432 + i32.const 1680 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $3 + i32.const -1 + i32.eq + if + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 1 + i32.and + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1687 + i32.const 8 + call $~lib/builtins/abort + unreachable + else + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $7 + end + else + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1692 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + else + local.get $3 + i32.const 1 + i32.shl + local.set $7 + end + local.get $4 + local.get $7 + i32.add + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.gt_s + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1698 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + i32.const 12 + i32.const 6 + call $~lib/rt/tlsf/__alloc + local.set $8 + local.get $8 + local.get $5 + call $~lib/rt/pure/__retain + i32.store + local.get $8 + local.get $7 + i32.store offset=8 + local.get $8 + local.get $5 + local.get $4 + i32.add + i32.store offset=4 + local.get $8 + call $~lib/rt/pure/__retain + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Int16Array.wrap|trampoline (; 568 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $2of2 + block $1of2 + block $0of2 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of2 $1of2 $2of2 $outOfRange + end + unreachable + end + i32.const 0 + local.set $1 + end + i32.const -1 + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Int16Array.wrap + ) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Int16Array,i16> (; 569 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $std/typedarray/testArrayWrapValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int16Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i32.const 16 + i32.shl + i32.const 16 + i32.shr_s + call $~lib/typedarray/Int16Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.load + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + i32.load offset=8 + i32.add + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $5 + i32.const 0 + local.set $6 + i32.const 1 + global.set $~lib/argc + local.get $5 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Int16Array.wrap|trampoline + local.set $4 + local.get $6 + call $~lib/rt/pure/__release + local.get $4 + local.set $6 + block $break|1 + i32.const 0 + local.set $4 + loop $loop|1 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $4 + call $~lib/typedarray/Int16Array#__get + local.get $6 + local.get $4 + call $~lib/typedarray/Int16Array#__get + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 666 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|1 + end + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint16Array.wrap (; 570 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $6 + local.get $4 + local.get $6 + i32.ge_u + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 280 + i32.const 432 + i32.const 1680 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $3 + i32.const -1 + i32.eq + if + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 1 + i32.and + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1687 + i32.const 8 + call $~lib/builtins/abort + unreachable + else + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $7 + end + else + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1692 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + else + local.get $3 + i32.const 1 + i32.shl + local.set $7 + end + local.get $4 + local.get $7 + i32.add + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.gt_s + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1698 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + i32.const 12 + i32.const 7 + call $~lib/rt/tlsf/__alloc + local.set $8 + local.get $8 + local.get $5 + call $~lib/rt/pure/__retain + i32.store + local.get $8 + local.get $7 + i32.store offset=8 + local.get $8 + local.get $5 + local.get $4 + i32.add + i32.store offset=4 + local.get $8 + call $~lib/rt/pure/__retain + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Uint16Array.wrap|trampoline (; 571 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $2of2 + block $1of2 + block $0of2 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of2 $1of2 $2of2 $outOfRange + end + unreachable + end + i32.const 0 + local.set $1 + end + i32.const -1 + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Uint16Array.wrap + ) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint16Array,u16> (; 572 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $std/typedarray/testArrayWrapValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint16Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i32.const 65535 + i32.and + call $~lib/typedarray/Uint16Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.load + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + i32.load offset=8 + i32.add + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $5 + i32.const 0 + local.set $6 + i32.const 1 + global.set $~lib/argc + local.get $5 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint16Array.wrap|trampoline + local.set $4 + local.get $6 + call $~lib/rt/pure/__release + local.get $4 + local.set $6 + block $break|1 + i32.const 0 + local.set $4 + loop $loop|1 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $4 + call $~lib/typedarray/Uint16Array#__get + local.get $6 + local.get $4 + call $~lib/typedarray/Uint16Array#__get + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 666 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|1 + end + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int32Array.wrap (; 573 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $6 + local.get $4 + local.get $6 + i32.ge_u + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 280 + i32.const 432 + i32.const 1680 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $3 + i32.const -1 + i32.eq + if + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 2 + i32.and + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1687 + i32.const 8 + call $~lib/builtins/abort + unreachable + else + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $7 + end + else + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1692 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + else + local.get $3 + i32.const 2 + i32.shl + local.set $7 + end + local.get $4 + local.get $7 + i32.add + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.gt_s + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1698 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + i32.const 12 + i32.const 8 + call $~lib/rt/tlsf/__alloc + local.set $8 + local.get $8 + local.get $5 + call $~lib/rt/pure/__retain + i32.store + local.get $8 + local.get $7 + i32.store offset=8 + local.get $8 + local.get $5 + local.get $4 + i32.add + i32.store offset=4 + local.get $8 + call $~lib/rt/pure/__retain + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Int32Array.wrap|trampoline (; 574 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $2of2 + block $1of2 + block $0of2 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of2 $1of2 $2of2 $outOfRange + end + unreachable + end + i32.const 0 + local.set $1 + end + i32.const -1 + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Int32Array.wrap + ) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Int32Array,i32> (; 575 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $std/typedarray/testArrayWrapValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int32Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + call $~lib/typedarray/Int32Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.load + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + i32.load offset=8 + i32.add + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $5 + i32.const 0 + local.set $6 + i32.const 1 + global.set $~lib/argc + local.get $5 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Int32Array.wrap|trampoline + local.set $4 + local.get $6 + call $~lib/rt/pure/__release + local.get $4 + local.set $6 + block $break|1 + i32.const 0 + local.set $4 + loop $loop|1 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $4 + call $~lib/typedarray/Int32Array#__get + local.get $6 + local.get $4 + call $~lib/typedarray/Int32Array#__get + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 666 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|1 + end + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint32Array.wrap (; 576 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $6 + local.get $4 + local.get $6 + i32.ge_u + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 280 + i32.const 432 + i32.const 1680 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $3 + i32.const -1 + i32.eq + if + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 2 + i32.and + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1687 + i32.const 8 + call $~lib/builtins/abort + unreachable + else + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $7 + end + else + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1692 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + else + local.get $3 + i32.const 2 + i32.shl + local.set $7 + end + local.get $4 + local.get $7 + i32.add + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.gt_s + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1698 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + i32.const 12 + i32.const 9 + call $~lib/rt/tlsf/__alloc + local.set $8 + local.get $8 + local.get $5 + call $~lib/rt/pure/__retain + i32.store + local.get $8 + local.get $7 + i32.store offset=8 + local.get $8 + local.get $5 + local.get $4 + i32.add + i32.store offset=4 + local.get $8 + call $~lib/rt/pure/__retain + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Uint32Array.wrap|trampoline (; 577 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $2of2 + block $1of2 + block $0of2 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of2 $1of2 $2of2 $outOfRange + end + unreachable + end + i32.const 0 + local.set $1 + end + i32.const -1 + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Uint32Array.wrap + ) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint32Array,u32> (; 578 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $std/typedarray/testArrayWrapValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint32Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + call $~lib/typedarray/Uint32Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.load + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + i32.load offset=8 + i32.add + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $5 + i32.const 0 + local.set $6 + i32.const 1 + global.set $~lib/argc + local.get $5 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint32Array.wrap|trampoline + local.set $4 + local.get $6 + call $~lib/rt/pure/__release + local.get $4 + local.set $6 + block $break|1 + i32.const 0 + local.set $4 + loop $loop|1 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $4 + call $~lib/typedarray/Uint32Array#__get + local.get $6 + local.get $4 + call $~lib/typedarray/Uint32Array#__get + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 666 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|1 + end + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Int64Array.wrap (; 579 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $6 + local.get $4 + local.get $6 + i32.ge_u + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 280 + i32.const 432 + i32.const 1680 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $3 + i32.const -1 + i32.eq + if + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 4 + i32.and + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1687 + i32.const 8 + call $~lib/builtins/abort + unreachable + else + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $7 + end + else + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1692 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + else + local.get $3 + i32.const 3 + i32.shl + local.set $7 + end + local.get $4 + local.get $7 + i32.add + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.gt_s + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1698 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + i32.const 12 + i32.const 10 + call $~lib/rt/tlsf/__alloc + local.set $8 + local.get $8 + local.get $5 + call $~lib/rt/pure/__retain + i32.store + local.get $8 + local.get $7 + i32.store offset=8 + local.get $8 + local.get $5 + local.get $4 + i32.add + i32.store offset=4 + local.get $8 + call $~lib/rt/pure/__retain + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Int64Array.wrap|trampoline (; 580 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $2of2 + block $1of2 + block $0of2 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of2 $1of2 $2of2 $outOfRange + end + unreachable + end + i32.const 0 + local.set $1 + end + i32.const -1 + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Int64Array.wrap + ) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Int64Array,i64> (; 581 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $std/typedarray/testArrayWrapValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Int64Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Int64Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.load + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + i32.load offset=8 + i32.add + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $5 + i32.const 0 + local.set $6 + i32.const 1 + global.set $~lib/argc + local.get $5 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Int64Array.wrap|trampoline + local.set $4 + local.get $6 + call $~lib/rt/pure/__release + local.get $4 + local.set $6 + block $break|1 + i32.const 0 + local.set $4 + loop $loop|1 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $4 + call $~lib/typedarray/Int64Array#__get + local.get $6 + local.get $4 + call $~lib/typedarray/Int64Array#__get + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 666 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|1 + end + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Uint64Array.wrap (; 582 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $6 + local.get $4 + local.get $6 + i32.ge_u + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 280 + i32.const 432 + i32.const 1680 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $3 + i32.const -1 + i32.eq + if + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 4 + i32.and + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1687 + i32.const 8 + call $~lib/builtins/abort + unreachable + else + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $7 + end + else + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1692 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + else + local.get $3 + i32.const 3 + i32.shl + local.set $7 + end + local.get $4 + local.get $7 + i32.add + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.gt_s + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1698 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + i32.const 12 + i32.const 11 + call $~lib/rt/tlsf/__alloc + local.set $8 + local.get $8 + local.get $5 + call $~lib/rt/pure/__retain + i32.store + local.get $8 + local.get $7 + i32.store offset=8 + local.get $8 + local.get $5 + local.get $4 + i32.add + i32.store offset=4 + local.get $8 + call $~lib/rt/pure/__retain + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Uint64Array.wrap|trampoline (; 583 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $2of2 + block $1of2 + block $0of2 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of2 $1of2 $2of2 $outOfRange + end + unreachable + end + i32.const 0 + local.set $1 + end + i32.const -1 + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Uint64Array.wrap + ) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Uint64Array,u64> (; 584 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $std/typedarray/testArrayWrapValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Uint64Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + i64.extend_i32_s + call $~lib/typedarray/Uint64Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.load + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + i32.load offset=8 + i32.add + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $5 + i32.const 0 + local.set $6 + i32.const 1 + global.set $~lib/argc + local.get $5 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Uint64Array.wrap|trampoline + local.set $4 + local.get $6 + call $~lib/rt/pure/__release + local.get $4 + local.set $6 + block $break|1 + i32.const 0 + local.set $4 + loop $loop|1 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $4 + call $~lib/typedarray/Uint64Array#__get + local.get $6 + local.get $4 + call $~lib/typedarray/Uint64Array#__get + i64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 666 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|1 + end + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Float32Array.wrap (; 585 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $6 + local.get $4 + local.get $6 + i32.ge_u + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 280 + i32.const 432 + i32.const 1680 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $3 + i32.const -1 + i32.eq + if + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 2 + i32.and + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1687 + i32.const 8 + call $~lib/builtins/abort + unreachable + else + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $7 + end + else + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1692 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + else + local.get $3 + i32.const 2 + i32.shl + local.set $7 + end + local.get $4 + local.get $7 + i32.add + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.gt_s + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1698 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + i32.const 12 + i32.const 12 + call $~lib/rt/tlsf/__alloc + local.set $8 + local.get $8 + local.get $5 + call $~lib/rt/pure/__retain + i32.store + local.get $8 + local.get $7 + i32.store offset=8 + local.get $8 + local.get $5 + local.get $4 + i32.add + i32.store offset=4 + local.get $8 + call $~lib/rt/pure/__retain + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Float32Array.wrap|trampoline (; 586 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $2of2 + block $1of2 + block $0of2 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of2 $1of2 $2of2 $outOfRange + end + unreachable + end + i32.const 0 + local.set $1 + end + i32.const -1 + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Float32Array.wrap + ) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Float32Array,f32> (; 587 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $std/typedarray/testArrayWrapValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Float32Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + f32.convert_i32_s + call $~lib/typedarray/Float32Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.load + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + i32.load offset=8 + i32.add + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $5 + i32.const 0 + local.set $6 + i32.const 1 + global.set $~lib/argc + local.get $5 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Float32Array.wrap|trampoline + local.set $4 + local.get $6 + call $~lib/rt/pure/__release + local.get $4 + local.set $6 + block $break|1 + i32.const 0 + local.set $4 + loop $loop|1 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $4 + call $~lib/typedarray/Float32Array#__get + local.get $6 + local.get $4 + call $~lib/typedarray/Float32Array#__get + f32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 666 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|1 + end + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + ) + (func $~lib/typedarray/Float64Array.wrap (; 588 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + local.get $0 + call $~lib/rt/pure/__retain + drop + local.get $0 + call $~lib/rt/pure/__retain + local.set $5 + local.get $1 + local.set $4 + local.get $2 + local.set $3 + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $6 + local.get $4 + local.get $6 + i32.ge_u + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 280 + i32.const 432 + i32.const 1680 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.const 0 + i32.lt_s + if + local.get $3 + i32.const -1 + i32.eq + if + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.const 4 + i32.and + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1687 + i32.const 8 + call $~lib/builtins/abort + unreachable + else + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + local.set $7 + end + else + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1692 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + else + local.get $3 + i32.const 3 + i32.shl + local.set $7 + end + local.get $4 + local.get $7 + i32.add + local.get $5 + call $~lib/arraybuffer/ArrayBuffer#get:byteLength + i32.gt_s + if + local.get $5 + call $~lib/rt/pure/__release + i32.const 24 + i32.const 432 + i32.const 1698 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + i32.const 12 + i32.const 13 + call $~lib/rt/tlsf/__alloc + local.set $8 + local.get $8 + local.get $5 + call $~lib/rt/pure/__retain + i32.store + local.get $8 + local.get $7 + i32.store offset=8 + local.get $8 + local.get $5 + local.get $4 + i32.add + i32.store offset=4 + local.get $8 + call $~lib/rt/pure/__retain + local.set $9 + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + local.set $8 + local.get $0 + call $~lib/rt/pure/__release + local.get $8 + ) + (func $~lib/typedarray/Float64Array.wrap|trampoline (; 589 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + block $2of2 + block $1of2 + block $0of2 + block $outOfRange + global.get $~lib/argc + i32.const 1 + i32.sub + br_table $0of2 $1of2 $2of2 $outOfRange + end + unreachable + end + i32.const 0 + local.set $1 + end + i32.const -1 + local.set $2 + end + local.get $0 + local.get $1 + local.get $2 + call $~lib/typedarray/Float64Array.wrap + ) + (func $std/typedarray/testArrayWrap<~lib/typedarray/Float64Array,f64> (; 590 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + global.get $std/typedarray/testArrayWrapValues + call $~lib/rt/pure/__retain + local.set $0 + local.get $0 + call $~lib/array/Array#get:length + local.set $1 + i32.const 0 + local.get $1 + call $~lib/typedarray/Float64Array#constructor + local.tee $2 + call $~lib/rt/pure/__retain + local.set $3 + block $break|0 + i32.const 0 + local.set $4 + loop $loop|0 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|0 + local.get $3 + local.get $4 + local.get $0 + local.get $4 + call $~lib/array/Array#__get + f64.convert_i32_s + call $~lib/typedarray/Float64Array#__set + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|0 + end + unreachable + end + local.get $3 + i32.load + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $3 + i32.load offset=8 + i32.add + call $~lib/arraybuffer/ArrayBuffer#slice + local.set $5 + i32.const 0 + local.set $6 + i32.const 1 + global.set $~lib/argc + local.get $5 + i32.const 0 + i32.const 0 + call $~lib/typedarray/Float64Array.wrap|trampoline + local.set $4 + local.get $6 + call $~lib/rt/pure/__release + local.get $4 + local.set $6 + block $break|1 + i32.const 0 + local.set $4 + loop $loop|1 + local.get $4 + local.get $1 + i32.lt_s + i32.eqz + br_if $break|1 + local.get $3 + local.get $4 + call $~lib/typedarray/Float64Array#__get + local.get $6 + local.get $4 + call $~lib/typedarray/Float64Array#__get + f64.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 666 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + local.get $4 + i32.const 1 + i32.add + local.set $4 + br $loop|1 + end + unreachable + end + local.get $2 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + ) + (func $start:std/typedarray (; 591 ;) (type $FUNCSIG$v) + (local $0 i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (local $15 i32) + (local $16 i32) + (local $17 i32) + (local $18 i32) + (local $19 i32) + (local $20 i32) + (local $21 i32) + (local $22 i32) + (local $23 i32) + (local $24 i32) + (local $25 i32) + (local $26 i32) + i32.const 0 + call $std/typedarray/testInstantiate + i32.const 5 + call $std/typedarray/testInstantiate + i32.const 0 + i32.const 3 + call $~lib/typedarray/Int32Array#constructor + local.set $0 + local.get $0 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $0 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $0 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $0 + call $~lib/typedarray/Int32Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 95 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 96 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=8 + i32.const 12 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 97 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + call $~lib/typedarray/Int32Array#__get + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 98 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/typedarray/Int32Array#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 99 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/typedarray/Int32Array#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 100 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#subarray + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + local.set $0 + local.get $0 + call $~lib/typedarray/Int32Array#get:length + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 103 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 104 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=8 + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 105 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + call $~lib/typedarray/Int32Array#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 106 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + i32.const 0 + i32.const 8 + call $~lib/typedarray/Float64Array#constructor + local.set $0 + local.get $0 + i32.const 0 + f64.const 1 + call $~lib/typedarray/Float64Array#__set + local.get $0 + i32.const 1 + f64.const 2 + call $~lib/typedarray/Float64Array#__set + local.get $0 + i32.const 2 + f64.const 7 + call $~lib/typedarray/Float64Array#__set + local.get $0 + i32.const 3 + f64.const 6 + call $~lib/typedarray/Float64Array#__set + local.get $0 + i32.const 4 + f64.const 5 + call $~lib/typedarray/Float64Array#__set + local.get $0 + i32.const 5 + f64.const 4 + call $~lib/typedarray/Float64Array#__set + local.get $0 + i32.const 6 + f64.const 3 + call $~lib/typedarray/Float64Array#__set + local.get $0 + i32.const 7 + f64.const 8 + call $~lib/typedarray/Float64Array#__set + local.get $0 + i32.const 2 + i32.const 6 + call $~lib/typedarray/Float64Array#subarray + local.set $1 + local.get $0 + call $~lib/rt/pure/__release + local.get $1 + local.set $0 + local.get $0 + call $~lib/typedarray/Float64Array#get:length + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 122 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 16 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 123 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=8 + i32.const 32 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 124 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + i32.const 0 + global.set $~lib/argc + local.get $0 + i32.const 0 + call $~lib/typedarray/Float64Array#sort|trampoline + call $~lib/rt/pure/__release + local.get $0 + i32.const 0 + call $~lib/typedarray/Float64Array#__get + f64.const 4 + f64.eq + if (result i32) + local.get $0 + i32.const 1 + call $~lib/typedarray/Float64Array#__get + f64.const 5 + f64.eq + else + i32.const 0 + end + if (result i32) + local.get $0 + i32.const 2 + call $~lib/typedarray/Float64Array#__get + f64.const 6 + f64.eq + else + i32.const 0 + end + if (result i32) + local.get $0 + i32.const 3 + call $~lib/typedarray/Float64Array#__get + f64.const 7 + f64.eq + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 126 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + i32.const 0 + i32.const 3 + call $~lib/typedarray/Uint8ClampedArray#constructor + local.set $0 + local.get $0 + i32.const 0 + i32.const -32 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $0 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $0 + i32.const 2 + i32.const 256 + call $~lib/typedarray/Uint8ClampedArray#__set + local.get $0 + i32.const 0 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 135 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 136 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 2 + call $~lib/typedarray/Uint8ClampedArray#__get + i32.const 255 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 137 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + i32.const 0 + i32.const 5 + call $~lib/typedarray/Int8Array#constructor + local.set $0 + local.get $0 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int8Array#__set + local.get $0 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $0 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int8Array#__set + local.get $0 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int8Array#__set + local.get $0 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int8Array#__set + local.get $0 + i32.const 1 + i32.const 1 + i32.const 3 + call $~lib/typedarray/Int8Array#fill + call $~lib/rt/pure/__release + local.get $0 + i32.const 5 + i32.const 0 + i32.const 14 + i32.const 488 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $2 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 149 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int8Array#fill + call $~lib/rt/pure/__release + local.get $0 + i32.const 5 + i32.const 0 + i32.const 14 + i32.const 560 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $3 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 152 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + i32.const 0 + i32.const -3 + call $~lib/typedarray/Int8Array#fill + call $~lib/rt/pure/__release + local.get $0 + i32.const 5 + i32.const 0 + i32.const 14 + i32.const 584 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $4 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 155 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 2 + i32.const -2 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int8Array#fill + call $~lib/rt/pure/__release + local.get $0 + i32.const 5 + i32.const 0 + i32.const 14 + i32.const 608 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $5 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 158 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 0 + i32.const 1 + i32.const 0 + call $~lib/typedarray/Int8Array#fill + call $~lib/rt/pure/__release + local.get $0 + i32.const 5 + i32.const 0 + i32.const 14 + i32.const 632 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $6 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 161 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int8Array#subarray + local.set $1 + local.get $1 + i32.const 0 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int8Array#fill + call $~lib/rt/pure/__release + local.get $1 + call $~lib/typedarray/Int8Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 165 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 166 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.load offset=8 + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 167 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $1 + i32.const 3 + i32.const 0 + i32.const 14 + i32.const 656 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $8 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 168 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 5 + i32.const 0 + i32.const 14 + i32.const 680 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $9 + call $std/typedarray/isInt8ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 169 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + i32.const 0 + i32.const 5 + call $~lib/typedarray/Int32Array#constructor + local.set $9 + local.get $9 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $9 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $9 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $9 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#__set + local.get $9 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int32Array#__set + local.get $9 + i32.const 1 + i32.const 1 + i32.const 3 + call $~lib/typedarray/Int32Array#fill + call $~lib/rt/pure/__release + local.get $9 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 704 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $1 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 181 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $9 + i32.const 0 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#fill + call $~lib/rt/pure/__release + local.get $9 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 744 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $6 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 184 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $9 + i32.const 1 + i32.const 0 + i32.const -3 + call $~lib/typedarray/Int32Array#fill + call $~lib/rt/pure/__release + local.get $9 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 784 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $5 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 187 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $9 + i32.const 2 + i32.const -2 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#fill + call $~lib/rt/pure/__release + local.get $9 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 824 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $4 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 190 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $9 + i32.const 0 + i32.const 1 + i32.const 0 + call $~lib/typedarray/Int32Array#fill + call $~lib/rt/pure/__release + local.get $9 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 864 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $3 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 193 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $9 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int32Array#subarray + local.set $8 + local.get $8 + i32.const 0 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#fill + call $~lib/rt/pure/__release + local.get $8 + call $~lib/typedarray/Int32Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 197 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 198 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.load offset=8 + i32.const 12 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 199 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 3 + i32.const 2 + i32.const 15 + i32.const 904 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $0 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 200 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $9 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 936 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $7 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 201 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $9 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + i32.const 0 + i32.const 6 + call $~lib/typedarray/Int8Array#constructor + local.set $7 + local.get $7 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int8Array#__set + local.get $7 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int8Array#__set + local.get $7 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int8Array#__set + local.get $7 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int8Array#__set + local.get $7 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int8Array#__set + local.get $7 + i32.const 5 + i32.const 6 + call $~lib/typedarray/Int8Array#__set + local.get $7 + i32.const 1 + i32.const 6 + call $~lib/typedarray/Int8Array#subarray + local.set $0 + local.get $0 + i32.const 0 + call $~lib/typedarray/Int8Array#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 222 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/typedarray/Int8Array#get:length + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 223 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 224 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.load offset=8 + i32.const 5 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 225 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i32.const 1 + i32.const 5 + call $~lib/typedarray/Int8Array#subarray + local.set $8 + local.get $8 + i32.const 0 + call $~lib/typedarray/Int8Array#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 228 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + call $~lib/typedarray/Int8Array#get:length + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 229 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 230 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.load offset=8 + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 231 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int8Array#subarray + local.set $3 + local.get $3 + i32.const 0 + call $~lib/typedarray/Int8Array#__get + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 234 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + call $~lib/typedarray/Int8Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 235 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 236 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + i32.load offset=8 + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 237 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $7 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $3 + call $~lib/rt/pure/__release + i32.const 0 + i32.const 5 + call $~lib/typedarray/Int32Array#constructor + local.set $3 + local.get $3 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $3 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $3 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $3 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#__set + local.get $3 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int32Array#__set + local.get $3 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $8 + local.get $3 + i32.const 0 + i32.const 3 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#copyWithin + local.tee $0 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 976 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $4 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 248 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $2 + local.get $3 + call $~lib/rt/pure/__release + local.get $2 + local.set $3 + local.get $3 + i32.const 1 + i32.const 3 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#copyWithin + local.tee $2 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 1016 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $5 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 250 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $9 + local.get $3 + call $~lib/rt/pure/__release + local.get $9 + local.set $3 + local.get $3 + i32.const 1 + i32.const 2 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#copyWithin + local.tee $9 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 1056 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $6 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 252 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $1 + local.get $3 + call $~lib/rt/pure/__release + local.get $1 + local.set $3 + local.get $3 + i32.const 2 + i32.const 2 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#copyWithin + local.tee $1 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 1096 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $10 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 254 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $7 + local.get $3 + call $~lib/rt/pure/__release + local.get $7 + local.set $3 + local.get $3 + i32.const 0 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#copyWithin + local.tee $7 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 1136 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $12 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 256 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $11 + local.get $3 + call $~lib/rt/pure/__release + local.get $11 + local.set $3 + local.get $3 + i32.const 1 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#copyWithin + local.tee $11 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 1176 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $14 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 258 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $13 + local.get $3 + call $~lib/rt/pure/__release + local.get $13 + local.set $3 + local.get $3 + i32.const 1 + i32.const 2 + i32.const 4 + call $~lib/typedarray/Int32Array#copyWithin + local.tee $13 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 1216 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $16 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 260 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $15 + local.get $3 + call $~lib/rt/pure/__release + local.get $15 + local.set $3 + local.get $3 + i32.const 0 + i32.const -2 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#copyWithin + local.tee $15 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 1256 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $18 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 262 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $17 + local.get $3 + call $~lib/rt/pure/__release + local.get $17 + local.set $3 + local.get $3 + i32.const 0 + i32.const -2 + i32.const -1 + call $~lib/typedarray/Int32Array#copyWithin + local.tee $17 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 1296 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $20 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 264 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $19 + local.get $3 + call $~lib/rt/pure/__release + local.get $19 + local.set $3 + local.get $3 + i32.const -4 + i32.const -3 + i32.const -2 + call $~lib/typedarray/Int32Array#copyWithin + local.tee $19 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 1336 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $22 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 266 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $21 + local.get $3 + call $~lib/rt/pure/__release + local.get $21 + local.set $3 + local.get $3 + i32.const -4 + i32.const -3 + i32.const -1 + call $~lib/typedarray/Int32Array#copyWithin + local.tee $21 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 1376 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $24 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 268 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $8 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $23 + local.get $3 + call $~lib/rt/pure/__release + local.get $23 + local.set $3 + local.get $3 + i32.const -4 + i32.const -3 + i32.const 2147483647 + call $~lib/typedarray/Int32Array#copyWithin + local.tee $23 + i32.const 5 + i32.const 2 + i32.const 15 + i32.const 1416 + call $~lib/rt/__allocArray + call $~lib/rt/pure/__retain + local.tee $26 + call $std/typedarray/isInt32ArrayEqual + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 270 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $3 + call $~lib/rt/pure/__release + local.get $8 + call $~lib/rt/pure/__release + local.get $0 + call $~lib/rt/pure/__release + local.get $4 + call $~lib/rt/pure/__release + local.get $2 + call $~lib/rt/pure/__release + local.get $5 + call $~lib/rt/pure/__release + local.get $9 + call $~lib/rt/pure/__release + local.get $6 + call $~lib/rt/pure/__release + local.get $1 + call $~lib/rt/pure/__release + local.get $10 + call $~lib/rt/pure/__release + local.get $7 + call $~lib/rt/pure/__release + local.get $12 + call $~lib/rt/pure/__release + local.get $11 + call $~lib/rt/pure/__release + local.get $14 + call $~lib/rt/pure/__release + local.get $13 + call $~lib/rt/pure/__release + local.get $16 + call $~lib/rt/pure/__release + local.get $15 + call $~lib/rt/pure/__release + local.get $18 + call $~lib/rt/pure/__release + local.get $17 + call $~lib/rt/pure/__release + local.get $20 + call $~lib/rt/pure/__release + local.get $19 + call $~lib/rt/pure/__release + local.get $22 + call $~lib/rt/pure/__release + local.get $21 + call $~lib/rt/pure/__release + local.get $24 + call $~lib/rt/pure/__release + local.get $23 + call $~lib/rt/pure/__release + local.get $26 + call $~lib/rt/pure/__release + i32.const 0 + i32.const 5 + call $~lib/typedarray/Int32Array#constructor + local.set $26 + local.get $26 + i32.const 0 + i32.const 1 + call $~lib/typedarray/Int32Array#__set + local.get $26 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#__set + local.get $26 + i32.const 2 + i32.const 3 + call $~lib/typedarray/Int32Array#__set + local.get $26 + i32.const 3 + i32.const 4 + call $~lib/typedarray/Int32Array#__set + local.get $26 + i32.const 4 + i32.const 5 + call $~lib/typedarray/Int32Array#__set + local.get $26 + i32.const 1 + i32.const 4 + call $~lib/typedarray/Int32Array#subarray + local.set $23 + local.get $23 + call $~lib/typedarray/Int32Array#get:length + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 282 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $23 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 283 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $23 + i32.load offset=8 + i32.const 12 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 284 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $26 + i32.const 1 + i32.const 3 + call $~lib/typedarray/Int32Array#slice + local.set $24 + local.get $24 + i32.const 0 + call $~lib/typedarray/Int32Array#__get + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 287 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $24 + i32.const 1 + call $~lib/typedarray/Int32Array#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 288 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $24 + call $~lib/typedarray/Int32Array#get:length + i32.const 2 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 289 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $24 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 290 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $24 + i32.load offset=8 + i32.const 8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 291 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $23 + i32.const 1 + i32.const 2 + call $~lib/typedarray/Int32Array#slice + local.set $21 + local.get $21 + i32.const 0 + call $~lib/typedarray/Int32Array#__get + i32.const 3 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 294 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $21 + call $~lib/typedarray/Int32Array#get:length + i32.const 1 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 295 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $21 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 296 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $21 + i32.load offset=8 + i32.const 4 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 297 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $26 + i32.const 0 + global.get $~lib/builtins/i32.MAX_VALUE + call $~lib/typedarray/Int32Array#slice + local.set $22 + local.get $22 + local.get $26 + i32.ne + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 300 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $22 + call $~lib/typedarray/Int32Array#get:length + local.get $26 + call $~lib/typedarray/Int32Array#get:length + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 301 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $22 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + local.get $26 + call $~lib/arraybuffer/ArrayBufferView#get:byteOffset + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 302 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $22 + i32.load offset=8 + local.get $26 + i32.load offset=8 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 376 + i32.const 303 + i32.const 2 + call $~lib/builtins/abort + unreachable + end + local.get $26 + call $~lib/rt/pure/__release + local.get $23 + call $~lib/rt/pure/__release + local.get $24 + call $~lib/rt/pure/__release + local.get $21 + call $~lib/rt/pure/__release + local.get $22 + call $~lib/rt/pure/__release + call $std/typedarray/testReduce<~lib/typedarray/Int8Array,i8> + call $std/typedarray/testReduce<~lib/typedarray/Uint8Array,u8> + call $std/typedarray/testReduce<~lib/typedarray/Uint8ClampedArray,u8> + call $std/typedarray/testReduce<~lib/typedarray/Int16Array,i16> + call $std/typedarray/testReduce<~lib/typedarray/Uint16Array,u16> + call $std/typedarray/testReduce<~lib/typedarray/Int32Array,i32> + call $std/typedarray/testReduce<~lib/typedarray/Uint32Array,u32> + call $std/typedarray/testReduce<~lib/typedarray/Int64Array,i64> + call $std/typedarray/testReduce<~lib/typedarray/Uint64Array,u64> + call $std/typedarray/testReduce<~lib/typedarray/Float32Array,f32> + call $std/typedarray/testReduce<~lib/typedarray/Float64Array,f64> + call $std/typedarray/testReduceRight<~lib/typedarray/Int8Array,i8> + call $std/typedarray/testReduceRight<~lib/typedarray/Uint8Array,u8> + call $std/typedarray/testReduceRight<~lib/typedarray/Uint8ClampedArray,u8> + call $std/typedarray/testReduceRight<~lib/typedarray/Int16Array,i16> + call $std/typedarray/testReduceRight<~lib/typedarray/Uint16Array,u16> + call $std/typedarray/testReduceRight<~lib/typedarray/Int32Array,i32> + call $std/typedarray/testReduceRight<~lib/typedarray/Uint32Array,u32> + call $std/typedarray/testReduceRight<~lib/typedarray/Int64Array,i64> + call $std/typedarray/testReduceRight<~lib/typedarray/Uint64Array,u64> + call $std/typedarray/testReduceRight<~lib/typedarray/Float32Array,f32> + call $std/typedarray/testReduceRight<~lib/typedarray/Float64Array,f64> + call $std/typedarray/testArrayMap<~lib/typedarray/Int8Array,i8> + call $std/typedarray/testArrayMap<~lib/typedarray/Uint8Array,u8> + call $std/typedarray/testArrayMap<~lib/typedarray/Uint8ClampedArray,u8> + call $std/typedarray/testArrayMap<~lib/typedarray/Int16Array,i16> + call $std/typedarray/testArrayMap<~lib/typedarray/Uint16Array,u16> + call $std/typedarray/testArrayMap<~lib/typedarray/Int32Array,i32> + call $std/typedarray/testArrayMap<~lib/typedarray/Uint32Array,u32> + call $std/typedarray/testArrayMap<~lib/typedarray/Int64Array,i64> + call $std/typedarray/testArrayMap<~lib/typedarray/Uint64Array,u64> + call $std/typedarray/testArrayMap<~lib/typedarray/Float32Array,f32> + call $std/typedarray/testArrayMap<~lib/typedarray/Float64Array,f64> + call $std/typedarray/testArrayFilter<~lib/typedarray/Int8Array,i8> + call $std/typedarray/testArrayFilter<~lib/typedarray/Uint8Array,u8> + call $std/typedarray/testArrayFilter<~lib/typedarray/Uint8ClampedArray,u8> + call $std/typedarray/testArrayFilter<~lib/typedarray/Int16Array,i16> + call $std/typedarray/testArrayFilter<~lib/typedarray/Uint16Array,u16> + call $std/typedarray/testArrayFilter<~lib/typedarray/Int32Array,i32> + call $std/typedarray/testArrayFilter<~lib/typedarray/Uint32Array,u32> + call $std/typedarray/testArrayFilter<~lib/typedarray/Int64Array,i64> + call $std/typedarray/testArrayFilter<~lib/typedarray/Uint64Array,u64> + call $std/typedarray/testArrayFilter<~lib/typedarray/Float32Array,f32> + call $std/typedarray/testArrayFilter<~lib/typedarray/Float64Array,f64> + call $std/typedarray/testArraySome<~lib/typedarray/Int8Array,i8> + call $std/typedarray/testArraySome<~lib/typedarray/Uint8Array,u8> + call $std/typedarray/testArraySome<~lib/typedarray/Uint8ClampedArray,u8> + call $std/typedarray/testArraySome<~lib/typedarray/Int16Array,i16> + call $std/typedarray/testArraySome<~lib/typedarray/Uint16Array,u16> + call $std/typedarray/testArraySome<~lib/typedarray/Int32Array,i32> + call $std/typedarray/testArraySome<~lib/typedarray/Uint32Array,u32> + call $std/typedarray/testArraySome<~lib/typedarray/Int64Array,i64> + call $std/typedarray/testArraySome<~lib/typedarray/Uint64Array,u64> + call $std/typedarray/testArraySome<~lib/typedarray/Float32Array,f32> + call $std/typedarray/testArraySome<~lib/typedarray/Float64Array,f64> + call $std/typedarray/testArrayFindIndex<~lib/typedarray/Int8Array,i8> + call $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8Array,u8> + call $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint8ClampedArray,u8> + call $std/typedarray/testArrayFindIndex<~lib/typedarray/Int16Array,i16> + call $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint16Array,u16> + call $std/typedarray/testArrayFindIndex<~lib/typedarray/Int32Array,i32> + call $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint32Array,u32> + call $std/typedarray/testArrayFindIndex<~lib/typedarray/Int64Array,i64> + call $std/typedarray/testArrayFindIndex<~lib/typedarray/Uint64Array,u64> + call $std/typedarray/testArrayFindIndex<~lib/typedarray/Float32Array,f32> + call $std/typedarray/testArrayFindIndex<~lib/typedarray/Float64Array,f64> + call $std/typedarray/testArrayEvery<~lib/typedarray/Int8Array,i8> + call $std/typedarray/testArrayEvery<~lib/typedarray/Uint8Array,u8> + call $std/typedarray/testArrayEvery<~lib/typedarray/Uint8ClampedArray,u8> + call $std/typedarray/testArrayEvery<~lib/typedarray/Int16Array,i16> + call $std/typedarray/testArrayEvery<~lib/typedarray/Uint16Array,u16> + call $std/typedarray/testArrayEvery<~lib/typedarray/Int32Array,i32> + call $std/typedarray/testArrayEvery<~lib/typedarray/Uint32Array,u32> + call $std/typedarray/testArrayEvery<~lib/typedarray/Int64Array,i64> + call $std/typedarray/testArrayEvery<~lib/typedarray/Uint64Array,u64> + call $std/typedarray/testArrayEvery<~lib/typedarray/Float32Array,f32> + call $std/typedarray/testArrayEvery<~lib/typedarray/Float64Array,f64> + call $std/typedarray/testArrayForEach<~lib/typedarray/Int8Array,i8> + call $std/typedarray/testArrayForEach<~lib/typedarray/Uint8Array,u8> + call $std/typedarray/testArrayForEach<~lib/typedarray/Uint8ClampedArray,u8> + call $std/typedarray/testArrayForEach<~lib/typedarray/Int16Array,i16> + call $std/typedarray/testArrayForEach<~lib/typedarray/Uint16Array,u16> + call $std/typedarray/testArrayForEach<~lib/typedarray/Int32Array,i32> + call $std/typedarray/testArrayForEach<~lib/typedarray/Uint32Array,u32> + call $std/typedarray/testArrayForEach<~lib/typedarray/Int64Array,i64> + call $std/typedarray/testArrayForEach<~lib/typedarray/Uint64Array,u64> + call $std/typedarray/testArrayForEach<~lib/typedarray/Float32Array,f32> + call $std/typedarray/testArrayForEach<~lib/typedarray/Float64Array,f64> + call $std/typedarray/testArrayReverse<~lib/typedarray/Int8Array,i8> + call $std/typedarray/testArrayReverse<~lib/typedarray/Uint8Array,u8> + call $std/typedarray/testArrayReverse<~lib/typedarray/Uint8ClampedArray,u8> + call $std/typedarray/testArrayReverse<~lib/typedarray/Int16Array,i16> + call $std/typedarray/testArrayReverse<~lib/typedarray/Uint16Array,u16> + call $std/typedarray/testArrayReverse<~lib/typedarray/Int32Array,i32> + call $std/typedarray/testArrayReverse<~lib/typedarray/Uint32Array,u32> + call $std/typedarray/testArrayReverse<~lib/typedarray/Int64Array,i64> + call $std/typedarray/testArrayReverse<~lib/typedarray/Uint64Array,u64> + call $std/typedarray/testArrayReverse<~lib/typedarray/Float32Array,f32> + call $std/typedarray/testArrayReverse<~lib/typedarray/Float64Array,f64> + call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int8Array,i8> + call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint8Array,u8> + call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint8ClampedArray,u8> + call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int16Array,i16> + call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint16Array,u16> + call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int32Array,i32> + call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint32Array,u32> + call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Int64Array,i64> + call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Uint64Array,u64> + call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Float32Array,f32> + call $std/typedarray/testArrayIndexOfAndLastIndexOf<~lib/typedarray/Float64Array,f64> + call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int8Array,i8> + call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint8Array,u8> + call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint8ClampedArray,u8> + call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int16Array,i16> + call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint16Array,u16> + call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int32Array,i32> + call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint32Array,u32> + call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Int64Array,i64> + call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Uint64Array,u64> + call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Float32Array,f32> + call $std/typedarray/testArrayJoinAndToString<~lib/typedarray/Float64Array,f64> + call $std/typedarray/testArrayWrap<~lib/typedarray/Int8Array,i8> + call $std/typedarray/testArrayWrap<~lib/typedarray/Uint8Array,u8> + call $std/typedarray/testArrayWrap<~lib/typedarray/Uint8ClampedArray,u8> + call $std/typedarray/testArrayWrap<~lib/typedarray/Int16Array,i16> + call $std/typedarray/testArrayWrap<~lib/typedarray/Uint16Array,u16> + call $std/typedarray/testArrayWrap<~lib/typedarray/Int32Array,i32> + call $std/typedarray/testArrayWrap<~lib/typedarray/Uint32Array,u32> + call $std/typedarray/testArrayWrap<~lib/typedarray/Int64Array,i64> + call $std/typedarray/testArrayWrap<~lib/typedarray/Uint64Array,u64> + call $std/typedarray/testArrayWrap<~lib/typedarray/Float32Array,f32> + call $std/typedarray/testArrayWrap<~lib/typedarray/Float64Array,f64> + ) + (func $start (; 592 ;) (type $FUNCSIG$v) + global.get $~lib/started + if + return + else + i32.const 1 + global.set $~lib/started + end + call $start:std/typedarray + ) + (func $~lib/array/Array#__visit_impl (; 593 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 594 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 595 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 596 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/array/Array#__visit_impl (; 597 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + nop + ) + (func $~lib/rt/pure/__visit (; 598 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (local $3 i32) + local.get $0 + global.get $~lib/heap/__heap_base + i32.lt_u + if + return + end + local.get $0 + i32.const 16 + i32.sub + local.set $2 + block $break|0 + block $case5|0 + block $case4|0 + block $case3|0 + block $case2|0 + block $case1|0 + block $case0|0 + local.get $1 + local.set $3 + local.get $3 + i32.const 1 + i32.eq + br_if $case0|0 + local.get $3 + i32.const 2 + i32.eq + br_if $case1|0 + local.get $3 + i32.const 3 + i32.eq + br_if $case2|0 + local.get $3 + i32.const 4 + i32.eq + br_if $case3|0 + local.get $3 + i32.const 5 + i32.eq + br_if $case4|0 + br $case5|0 + end + local.get $2 + call $~lib/rt/pure/decrement + br $break|0 + end + local.get $2 + i32.load offset=4 + i32.const 268435455 + i32.and + i32.const 0 + i32.gt_u + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 75 + i32.const 17 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $2 + i32.load offset=4 + i32.const 1 + i32.sub + i32.store offset=4 + local.get $2 + call $~lib/rt/pure/markGray + br $break|0 + end + local.get $2 + call $~lib/rt/pure/scan + br $break|0 + end + local.get $2 + i32.load offset=4 + local.set $3 + local.get $3 + i32.const -268435456 + i32.and + local.get $3 + i32.const 1 + i32.add + i32.const -268435456 + i32.and + i32.eq + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 86 + i32.const 6 + call $~lib/builtins/abort + unreachable + end + local.get $2 + local.get $3 + i32.const 1 + i32.add + i32.store offset=4 + local.get $3 + i32.const 1879048192 + i32.and + i32.const 0 + i32.ne + if + local.get $2 + call $~lib/rt/pure/scanBlack + end + br $break|0 + end + local.get $2 + call $~lib/rt/pure/collectWhite + br $break|0 + end + i32.const 0 + i32.eqz + if + i32.const 0 + i32.const 232 + i32.const 97 + i32.const 24 + call $~lib/builtins/abort + unreachable + end + end + ) + (func $~lib/rt/__visit_members (; 599 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + block $block$4$break + block $switch$1$default + block $switch$1$case$20 + block $switch$1$case$19 + block $switch$1$case$18 + block $switch$1$case$17 + block $switch$1$case$16 + block $switch$1$case$4 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$4 $switch$1$case$16 $switch$1$case$17 $switch$1$case$18 $switch$1$case$19 $switch$1$case$20 $switch$1$default + end + return + end + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl + br $block$4$break + end + unreachable + end + local.get $0 + i32.load + local.tee $2 + if + local.get $2 + local.get $1 + call $~lib/rt/pure/__visit + end + return + ) + (func $null (; 600 ;) (type $FUNCSIG$v) + ) +) From 91e9649c8b196ef658c6d3625e377ffdff745658 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 24 Sep 2019 10:26:34 +0300 Subject: [PATCH 05/12] refactor dataview --- std/assembly/dataview.ts | 60 ++++++++++------------- tests/compiler/std/array.optimized.wat | 28 +++++++---- tests/compiler/std/array.ts | 2 +- tests/compiler/std/array.untouched.wat | 26 ++++++---- tests/compiler/std/dataview.optimized.wat | 40 +++++++-------- tests/compiler/std/dataview.untouched.wat | 56 ++++++++++----------- 6 files changed, 107 insertions(+), 105 deletions(-) diff --git a/std/assembly/dataview.ts b/std/assembly/dataview.ts index 48e1ed8079..286ad47e4b 100644 --- a/std/assembly/dataview.ts +++ b/std/assembly/dataview.ts @@ -6,9 +6,9 @@ import { E_INDEXOUTOFRANGE, E_INVALIDLENGTH } from "./util/error"; export class DataView { - private data: ArrayBuffer; - private dataStart: usize; - private dataLength: i32; + readonly buffer: ArrayBuffer; + readonly dataStart: usize; + readonly byteLength: i32; constructor( buffer: ArrayBuffer, @@ -19,28 +19,20 @@ export class DataView { i32(byteLength > BLOCK_MAXSIZE) | i32(byteOffset + byteLength > buffer.byteLength) ) throw new RangeError(E_INVALIDLENGTH); - this.data = buffer; // retains + this.buffer = buffer; // retains var dataStart = changetype(buffer) + byteOffset; this.dataStart = dataStart; - this.dataLength = byteLength; - } - - get buffer(): ArrayBuffer { - return this.data; + this.byteLength = byteLength; } get byteOffset(): i32 { - return (this.dataStart - changetype(this.data)); - } - - get byteLength(): i32 { - return this.dataLength; + return (this.dataStart - changetype(this.buffer)); } getFloat32(byteOffset: i32, littleEndian: boolean = false): f32 { if ( i32(byteOffset < 0) | - i32(byteOffset + 4 > this.dataLength) + i32(byteOffset + 4 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); return littleEndian ? load(this.dataStart + byteOffset) @@ -54,7 +46,7 @@ export class DataView { getFloat64(byteOffset: i32, littleEndian: boolean = false): f64 { if ( i32(byteOffset < 0) | - i32(byteOffset + 8 > this.dataLength) + i32(byteOffset + 8 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); return littleEndian ? load(this.dataStart + byteOffset) @@ -66,14 +58,14 @@ export class DataView { } getInt8(byteOffset: i32): i8 { - if (byteOffset >= this.dataLength) throw new RangeError(E_INDEXOUTOFRANGE); + if (byteOffset >= this.byteLength) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + byteOffset); } getInt16(byteOffset: i32, littleEndian: boolean = false): i16 { if ( i32(byteOffset < 0) | - i32(byteOffset + 2 > this.dataLength) + i32(byteOffset + 2 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); var result: i16 = load(this.dataStart + byteOffset); return littleEndian ? result : bswap(result); @@ -82,21 +74,21 @@ export class DataView { getInt32(byteOffset: i32, littleEndian: boolean = false): i32 { if ( i32(byteOffset < 0) | - i32(byteOffset + 4 > this.dataLength) + i32(byteOffset + 4 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); var result: i32 = load(this.dataStart + byteOffset); return littleEndian ? result : bswap(result); } getUint8(byteOffset: i32): u8 { - if (byteOffset >= this.dataLength) throw new RangeError(E_INDEXOUTOFRANGE); + if (byteOffset >= this.byteLength) throw new RangeError(E_INDEXOUTOFRANGE); return load(this.dataStart + byteOffset); } getUint16(byteOffset: i32, littleEndian: boolean = false): u16 { if ( i32(byteOffset < 0) | - i32(byteOffset + 2 > this.dataLength) + i32(byteOffset + 2 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); var result: u16 = load(this.dataStart + byteOffset); return littleEndian ? result : bswap(result); @@ -105,7 +97,7 @@ export class DataView { getUint32(byteOffset: i32, littleEndian: boolean = false): u32 { if ( i32(byteOffset < 0) | - i32(byteOffset + 4 > this.dataLength) + i32(byteOffset + 4 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); var result: u32 = load(this.dataStart + byteOffset); return littleEndian ? result : bswap(result); @@ -114,7 +106,7 @@ export class DataView { setFloat32(byteOffset: i32, value: f32, littleEndian: boolean = false): void { if ( i32(byteOffset < 0) | - i32(byteOffset + 4 > this.dataLength) + i32(byteOffset + 4 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); if (littleEndian) store(this.dataStart + byteOffset, value); else store(this.dataStart + byteOffset, bswap(reinterpret(value))); @@ -123,21 +115,21 @@ export class DataView { setFloat64(byteOffset: i32, value: f64, littleEndian: boolean = false): void { if ( i32(byteOffset < 0) | - i32(byteOffset + 8 > this.dataLength) + i32(byteOffset + 8 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); if (littleEndian) store(this.dataStart + byteOffset, value); else store(this.dataStart + byteOffset, bswap(reinterpret(value))); } setInt8(byteOffset: i32, value: i8): void { - if (byteOffset >= this.dataLength) throw new RangeError(E_INDEXOUTOFRANGE); + if (byteOffset >= this.byteLength) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, value); } setInt16(byteOffset: i32, value: i16, littleEndian: boolean = false): void { if ( i32(byteOffset < 0) | - i32(byteOffset + 2 > this.dataLength) + i32(byteOffset + 2 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, littleEndian ? value : bswap(value)); } @@ -145,20 +137,20 @@ export class DataView { setInt32(byteOffset: i32, value: i32, littleEndian: boolean = false): void { if ( i32(byteOffset < 0) | - i32(byteOffset + 4 > this.dataLength) + i32(byteOffset + 4 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, littleEndian ? value : bswap(value)); } setUint8(byteOffset: i32, value: u8): void { - if (byteOffset >= this.dataLength) throw new RangeError(E_INDEXOUTOFRANGE); + if (byteOffset >= this.byteLength) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, value); } setUint16(byteOffset: i32, value: u16, littleEndian: boolean = false): void { if ( i32(byteOffset < 0) | - i32(byteOffset + 2 > this.dataLength) + i32(byteOffset + 2 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, littleEndian ? value : bswap(value)); } @@ -166,7 +158,7 @@ export class DataView { setUint32(byteOffset: i32, value: u32, littleEndian: boolean = false): void { if ( i32(byteOffset < 0) | - i32(byteOffset + 4 > this.dataLength) + i32(byteOffset + 4 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, littleEndian ? value : bswap(value)); } @@ -176,7 +168,7 @@ export class DataView { getInt64(byteOffset: i32, littleEndian: boolean = false): i64 { if ( i32(byteOffset < 0) | - i32(byteOffset + 8 > this.dataLength) + i32(byteOffset + 8 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); var result: i64 = load(this.dataStart + byteOffset); return littleEndian ? result : bswap(result); @@ -185,7 +177,7 @@ export class DataView { getUint64(byteOffset: i32, littleEndian: boolean = false): u64 { if ( i32(byteOffset < 0) | - i32(byteOffset + 8 > this.dataLength) + i32(byteOffset + 8 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); var result = load(this.dataStart + byteOffset); return littleEndian ? result : bswap(result); @@ -194,7 +186,7 @@ export class DataView { setInt64(byteOffset: i32, value: i64, littleEndian: boolean = false): void { if ( i32(byteOffset < 0) | - i32(byteOffset + 8 > this.dataLength) + i32(byteOffset + 8 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, littleEndian ? value : bswap(value)); } @@ -202,7 +194,7 @@ export class DataView { setUint64(byteOffset: i32, value: u64, littleEndian: boolean = false): void { if ( i32(byteOffset < 0) | - i32(byteOffset + 8 > this.dataLength) + i32(byteOffset + 8 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, littleEndian ? value : bswap(value)); } diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 0605ab2113..e8fc417c68 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -4910,11 +4910,15 @@ local.get $2 call $~lib/array/Array#__get call $~lib/number/isNaN - local.get $1 - local.get $2 - call $~lib/array/Array#__get - call $~lib/number/isNaN - i32.ne + if (result i32) + local.get $1 + local.get $2 + call $~lib/array/Array#__get + call $~lib/number/isNaN + else + i32.const 0 + end + i32.eqz if local.get $0 local.get $2 @@ -5441,11 +5445,15 @@ local.get $2 call $~lib/array/Array#__get call $~lib/number/isNaN - local.get $1 - local.get $2 - call $~lib/array/Array#__get - call $~lib/number/isNaN - i32.ne + if (result i32) + local.get $1 + local.get $2 + call $~lib/array/Array#__get + call $~lib/number/isNaN + else + i32.const 0 + end + i32.eqz if local.get $0 local.get $2 diff --git a/tests/compiler/std/array.ts b/tests/compiler/std/array.ts index b4dc0e812a..9862498137 100644 --- a/tests/compiler/std/array.ts +++ b/tests/compiler/std/array.ts @@ -18,7 +18,7 @@ function isArraysEqual(a: Array, b: Array, len: i32 = 0): bool { } for (let i = 0; i < len; i++) { if (isFloat()) { - if (isNaN(a[i]) == isNaN(b[i])) continue; + if (isNaN(a[i]) && isNaN(b[i])) continue; } if (a[i] != b[i]) return false; } diff --git a/tests/compiler/std/array.untouched.wat b/tests/compiler/std/array.untouched.wat index 4095a701b1..b5c3fbfff4 100644 --- a/tests/compiler/std/array.untouched.wat +++ b/tests/compiler/std/array.untouched.wat @@ -7459,11 +7459,14 @@ local.get $3 call $~lib/array/Array#__get call $~lib/number/isNaN - local.get $1 - local.get $3 - call $~lib/array/Array#__get - call $~lib/number/isNaN - i32.eq + if (result i32) + local.get $1 + local.get $3 + call $~lib/array/Array#__get + call $~lib/number/isNaN + else + i32.const 0 + end if br $continue|0 end @@ -8103,11 +8106,14 @@ local.get $3 call $~lib/array/Array#__get call $~lib/number/isNaN - local.get $1 - local.get $3 - call $~lib/array/Array#__get - call $~lib/number/isNaN - i32.eq + if (result i32) + local.get $1 + local.get $3 + call $~lib/array/Array#__get + call $~lib/number/isNaN + else + i32.const 0 + end if br $continue|0 end diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index ec98fa824c..a046cfb98d 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -2002,7 +2002,7 @@ if i32.const 280 i32.const 432 - i32.const 44 + i32.const 36 i32.const 6 call $~lib/builtins/abort unreachable @@ -2058,7 +2058,7 @@ if i32.const 280 i32.const 432 - i32.const 58 + i32.const 50 i32.const 7 call $~lib/builtins/abort unreachable @@ -2084,7 +2084,7 @@ if i32.const 280 i32.const 432 - i32.const 69 + i32.const 61 i32.const 49 call $~lib/builtins/abort unreachable @@ -2122,7 +2122,7 @@ if i32.const 280 i32.const 432 - i32.const 77 + i32.const 69 i32.const 7 call $~lib/builtins/abort unreachable @@ -2156,7 +2156,7 @@ if i32.const 280 i32.const 432 - i32.const 86 + i32.const 78 i32.const 7 call $~lib/builtins/abort unreachable @@ -2185,7 +2185,7 @@ if i32.const 280 i32.const 432 - i32.const 180 + i32.const 172 i32.const 6 call $~lib/builtins/abort unreachable @@ -2210,7 +2210,7 @@ if i32.const 280 i32.const 432 - i32.const 92 + i32.const 84 i32.const 49 call $~lib/builtins/abort unreachable @@ -2246,7 +2246,7 @@ if i32.const 280 i32.const 432 - i32.const 100 + i32.const 92 i32.const 6 call $~lib/builtins/abort unreachable @@ -2280,7 +2280,7 @@ if i32.const 280 i32.const 432 - i32.const 109 + i32.const 101 i32.const 6 call $~lib/builtins/abort unreachable @@ -2309,7 +2309,7 @@ if i32.const 280 i32.const 432 - i32.const 189 + i32.const 181 i32.const 6 call $~lib/builtins/abort unreachable @@ -2334,7 +2334,7 @@ if i32.const 280 i32.const 432 - i32.const 118 + i32.const 110 i32.const 6 call $~lib/builtins/abort unreachable @@ -2362,7 +2362,7 @@ if i32.const 280 i32.const 432 - i32.const 127 + i32.const 119 i32.const 6 call $~lib/builtins/abort unreachable @@ -2390,7 +2390,7 @@ if i32.const 280 i32.const 432 - i32.const 133 + i32.const 125 i32.const 49 call $~lib/builtins/abort unreachable @@ -2408,7 +2408,7 @@ if i32.const 280 i32.const 432 - i32.const 141 + i32.const 133 i32.const 6 call $~lib/builtins/abort unreachable @@ -2432,7 +2432,7 @@ if i32.const 280 i32.const 432 - i32.const 149 + i32.const 141 i32.const 6 call $~lib/builtins/abort unreachable @@ -2456,7 +2456,7 @@ if i32.const 280 i32.const 432 - i32.const 198 + i32.const 190 i32.const 6 call $~lib/builtins/abort unreachable @@ -2480,7 +2480,7 @@ if i32.const 280 i32.const 432 - i32.const 154 + i32.const 146 i32.const 49 call $~lib/builtins/abort unreachable @@ -2498,7 +2498,7 @@ if i32.const 280 i32.const 432 - i32.const 162 + i32.const 154 i32.const 6 call $~lib/builtins/abort unreachable @@ -2522,7 +2522,7 @@ if i32.const 280 i32.const 432 - i32.const 170 + i32.const 162 i32.const 6 call $~lib/builtins/abort unreachable @@ -2546,7 +2546,7 @@ if i32.const 280 i32.const 432 - i32.const 206 + i32.const 198 i32.const 6 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/dataview.untouched.wat b/tests/compiler/std/dataview.untouched.wat index a25802bfde..ba6ffef52b 100644 --- a/tests/compiler/std/dataview.untouched.wat +++ b/tests/compiler/std/dataview.untouched.wat @@ -3765,7 +3765,7 @@ if i32.const 280 i32.const 432 - i32.const 44 + i32.const 36 i32.const 6 call $~lib/builtins/abort unreachable @@ -3840,7 +3840,7 @@ if i32.const 280 i32.const 432 - i32.const 58 + i32.const 50 i32.const 7 call $~lib/builtins/abort unreachable @@ -3870,7 +3870,7 @@ if i32.const 280 i32.const 432 - i32.const 69 + i32.const 61 i32.const 49 call $~lib/builtins/abort unreachable @@ -3912,7 +3912,7 @@ if i32.const 280 i32.const 432 - i32.const 77 + i32.const 69 i32.const 7 call $~lib/builtins/abort unreachable @@ -3960,7 +3960,7 @@ if i32.const 280 i32.const 432 - i32.const 86 + i32.const 78 i32.const 7 call $~lib/builtins/abort unreachable @@ -4033,7 +4033,7 @@ if i32.const 280 i32.const 432 - i32.const 180 + i32.const 172 i32.const 6 call $~lib/builtins/abort unreachable @@ -4060,7 +4060,7 @@ if i32.const 280 i32.const 432 - i32.const 92 + i32.const 84 i32.const 49 call $~lib/builtins/abort unreachable @@ -4100,7 +4100,7 @@ if i32.const 280 i32.const 432 - i32.const 100 + i32.const 92 i32.const 6 call $~lib/builtins/abort unreachable @@ -4134,7 +4134,7 @@ if i32.const 280 i32.const 432 - i32.const 109 + i32.const 101 i32.const 6 call $~lib/builtins/abort unreachable @@ -4168,7 +4168,7 @@ if i32.const 280 i32.const 432 - i32.const 189 + i32.const 181 i32.const 6 call $~lib/builtins/abort unreachable @@ -4201,7 +4201,7 @@ if i32.const 280 i32.const 432 - i32.const 118 + i32.const 110 i32.const 6 call $~lib/builtins/abort unreachable @@ -4239,7 +4239,7 @@ if i32.const 280 i32.const 432 - i32.const 127 + i32.const 119 i32.const 6 call $~lib/builtins/abort unreachable @@ -4271,7 +4271,7 @@ if i32.const 280 i32.const 432 - i32.const 133 + i32.const 125 i32.const 49 call $~lib/builtins/abort unreachable @@ -4297,7 +4297,7 @@ if i32.const 280 i32.const 432 - i32.const 141 + i32.const 133 i32.const 6 call $~lib/builtins/abort unreachable @@ -4329,7 +4329,7 @@ if i32.const 280 i32.const 432 - i32.const 149 + i32.const 141 i32.const 6 call $~lib/builtins/abort unreachable @@ -4361,7 +4361,7 @@ if i32.const 280 i32.const 432 - i32.const 198 + i32.const 190 i32.const 6 call $~lib/builtins/abort unreachable @@ -4387,7 +4387,7 @@ if i32.const 280 i32.const 432 - i32.const 154 + i32.const 146 i32.const 49 call $~lib/builtins/abort unreachable @@ -4413,7 +4413,7 @@ if i32.const 280 i32.const 432 - i32.const 162 + i32.const 154 i32.const 6 call $~lib/builtins/abort unreachable @@ -4445,7 +4445,7 @@ if i32.const 280 i32.const 432 - i32.const 170 + i32.const 162 i32.const 6 call $~lib/builtins/abort unreachable @@ -4477,7 +4477,7 @@ if i32.const 280 i32.const 432 - i32.const 206 + i32.const 198 i32.const 6 call $~lib/builtins/abort unreachable @@ -4527,11 +4527,7 @@ i32.load i32.sub ) - (func $~lib/dataview/DataView#get:byteLength (; 66 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=8 - ) - (func $start:std/dataview (; 67 ;) (type $FUNCSIG$v) + (func $start:std/dataview (; 66 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 i32) @@ -6243,7 +6239,7 @@ unreachable end local.get $1 - call $~lib/dataview/DataView#get:byteLength + i32.load offset=8 i32.const 8 i32.eq i32.eqz @@ -6260,10 +6256,10 @@ local.get $1 call $~lib/rt/pure/__release ) - (func $start (; 68 ;) (type $FUNCSIG$v) + (func $start (; 67 ;) (type $FUNCSIG$v) call $start:std/dataview ) - (func $~lib/rt/pure/__visit (; 69 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/rt/pure/__visit (; 68 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) local.get $0 @@ -6393,7 +6389,7 @@ end end ) - (func $~lib/rt/__visit_members (; 70 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (func $~lib/rt/__visit_members (; 69 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (local $2 i32) block $switch$1$default block $switch$1$case$4 @@ -6418,6 +6414,6 @@ end unreachable ) - (func $null (; 71 ;) (type $FUNCSIG$v) + (func $null (; 70 ;) (type $FUNCSIG$v) ) ) From 2387e481885fe6c3a1af436cd06a760156d5159c Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 24 Sep 2019 10:49:28 +0300 Subject: [PATCH 06/12] mark dataStart as unsafe --- std/assembly/arraybuffer.ts | 4 +- std/assembly/dataview.ts | 11 +- tests/compiler/assert-nonnull.optimized.wat | 2 +- tests/compiler/assert-nonnull.untouched.wat | 4 +- tests/compiler/infer-generic.optimized.wat | 2 +- tests/compiler/infer-generic.untouched.wat | 2 +- tests/compiler/number.optimized.wat | 6 +- tests/compiler/number.untouched.wat | 8 +- tests/compiler/rc/global-init.optimized.wat | 2 +- tests/compiler/rc/global-init.untouched.wat | 2 +- tests/compiler/rc/local-init.optimized.wat | 2 +- tests/compiler/rc/local-init.untouched.wat | 2 +- .../rc/logical-and-mismatch.optimized.wat | 2 +- .../rc/logical-and-mismatch.untouched.wat | 2 +- .../rc/logical-or-mismatch.optimized.wat | 2 +- .../rc/logical-or-mismatch.untouched.wat | 2 +- tests/compiler/rc/rereturn.optimized.wat | 2 +- tests/compiler/rc/rereturn.untouched.wat | 2 +- .../rc/ternary-mismatch.optimized.wat | 2 +- .../rc/ternary-mismatch.untouched.wat | 2 +- tests/compiler/resolve-access.optimized.wat | 6 +- tests/compiler/resolve-access.untouched.wat | 10 +- tests/compiler/resolve-binary.optimized.wat | 6 +- tests/compiler/resolve-binary.untouched.wat | 8 +- .../resolve-elementaccess.optimized.wat | 16 +- .../resolve-elementaccess.untouched.wat | 20 +- .../resolve-function-expression.untouched.wat | 2 +- tests/compiler/resolve-ternary.optimized.wat | 8 +- tests/compiler/resolve-ternary.untouched.wat | 10 +- tests/compiler/resolve-unary.untouched.wat | 2 +- .../retain-release-sanity.optimized.wat | 59 +- .../retain-release-sanity.untouched.wat | 69 +- tests/compiler/runtime-full.optimized.wat | 2 +- tests/compiler/runtime-full.untouched.wat | 2 +- tests/compiler/std/array-access.optimized.wat | 4 +- tests/compiler/std/array-access.untouched.wat | 8 +- .../compiler/std/array-literal.optimized.wat | 20 +- .../compiler/std/array-literal.untouched.wat | 22 +- tests/compiler/std/array.optimized.wat | 144 ++--- tests/compiler/std/array.untouched.wat | 186 +++--- tests/compiler/std/arraybuffer.optimized.wat | 24 +- tests/compiler/std/arraybuffer.untouched.wat | 26 +- tests/compiler/std/dataview.optimized.wat | 114 ++-- tests/compiler/std/dataview.untouched.wat | 120 ++-- tests/compiler/std/libm.optimized.wat | 8 +- tests/compiler/std/libm.untouched.wat | 8 +- tests/compiler/std/map.optimized.wat | 4 +- tests/compiler/std/map.untouched.wat | 4 +- tests/compiler/std/math.optimized.wat | 8 +- tests/compiler/std/math.untouched.wat | 8 +- tests/compiler/std/set.optimized.wat | 4 +- tests/compiler/std/set.untouched.wat | 4 +- tests/compiler/std/static-array.optimized.wat | 22 +- tests/compiler/std/static-array.untouched.wat | 22 +- .../std/string-encoding.optimized.wat | 2 +- .../std/string-encoding.untouched.wat | 2 +- tests/compiler/std/string.optimized.wat | 34 +- tests/compiler/std/string.untouched.wat | 38 +- tests/compiler/std/symbol.optimized.wat | 2 +- tests/compiler/std/symbol.untouched.wat | 2 +- tests/compiler/std/typedarray.optimized.wat | 526 ++++++++-------- tests/compiler/std/typedarray.untouched.wat | 594 +++++++++--------- 62 files changed, 1134 insertions(+), 1109 deletions(-) diff --git a/std/assembly/arraybuffer.ts b/std/assembly/arraybuffer.ts index 5a6e8fc9d6..301d36343c 100644 --- a/std/assembly/arraybuffer.ts +++ b/std/assembly/arraybuffer.ts @@ -5,8 +5,10 @@ import { idof } from "./builtins"; import { E_INVALIDLENGTH } from "./util/error"; export abstract class ArrayBufferView { + + @unsafe readonly dataStart: usize; + readonly buffer: ArrayBuffer; - readonly dataStart: usize; readonly byteLength: i32; get byteOffset(): i32 { diff --git a/std/assembly/dataview.ts b/std/assembly/dataview.ts index 286ad47e4b..1cf67eeb94 100644 --- a/std/assembly/dataview.ts +++ b/std/assembly/dataview.ts @@ -6,10 +6,15 @@ import { E_INDEXOUTOFRANGE, E_INVALIDLENGTH } from "./util/error"; export class DataView { + @unsafe readonly dataStart: usize; + readonly buffer: ArrayBuffer; - readonly dataStart: usize; readonly byteLength: i32; + get byteOffset(): i32 { + return (this.dataStart - changetype(this.buffer)); + } + constructor( buffer: ArrayBuffer, byteOffset: i32 = 0, @@ -25,10 +30,6 @@ export class DataView { this.byteLength = byteLength; } - get byteOffset(): i32 { - return (this.dataStart - changetype(this.buffer)); - } - getFloat32(byteOffset: i32, littleEndian: boolean = false): f32 { if ( i32(byteOffset < 0) | diff --git a/tests/compiler/assert-nonnull.optimized.wat b/tests/compiler/assert-nonnull.optimized.wat index 2149cccbed..258f9bd28f 100644 --- a/tests/compiler/assert-nonnull.optimized.wat +++ b/tests/compiler/assert-nonnull.optimized.wat @@ -53,7 +53,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load i32.load ) (func $~lib/array/Array#__get (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) diff --git a/tests/compiler/assert-nonnull.untouched.wat b/tests/compiler/assert-nonnull.untouched.wat index 6b4be00840..0ee1f1fd84 100644 --- a/tests/compiler/assert-nonnull.untouched.wat +++ b/tests/compiler/assert-nonnull.untouched.wat @@ -90,7 +90,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -151,7 +151,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index 8da77f7349..d0378755e4 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -47,7 +47,7 @@ i32.const 4 global.set $~lib/argc local.get $3 - i32.const 108 + i32.const 104 i32.load local.get $0 i32.const 2 diff --git a/tests/compiler/infer-generic.untouched.wat b/tests/compiler/infer-generic.untouched.wat index 296df99d33..9192675306 100644 --- a/tests/compiler/infer-generic.untouched.wat +++ b/tests/compiler/infer-generic.untouched.wat @@ -83,7 +83,7 @@ global.set $~lib/argc local.get $3 local.get $0 - i32.load offset=4 + i32.load local.get $4 i32.const 2 i32.shl diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index d53876ae0e..b24f34a78c 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -370,7 +370,7 @@ local.tee $6 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 1260 + i32.const 1256 i32.load local.set $12 loop $continue|0 @@ -1186,7 +1186,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 948 + i32.const 944 i32.load local.get $4 i32.const 3 @@ -1194,7 +1194,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 1172 + i32.const 1168 i32.load local.get $4 i32.const 1 diff --git a/tests/compiler/number.untouched.wat b/tests/compiler/number.untouched.wat index 826eba3516..cd543841c6 100644 --- a/tests/compiler/number.untouched.wat +++ b/tests/compiler/number.untouched.wat @@ -247,7 +247,7 @@ (local $8 i64) (local $9 i64) i32.const 464 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 @@ -607,7 +607,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 15 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -616,7 +616,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -679,7 +679,7 @@ local.get $6 local.set $15 i32.const 1704 - i32.load offset=4 + i32.load local.set $16 block $break|0 loop $continue|0 diff --git a/tests/compiler/rc/global-init.optimized.wat b/tests/compiler/rc/global-init.optimized.wat index c171eea177..d64dcf9a0e 100644 --- a/tests/compiler/rc/global-init.optimized.wat +++ b/tests/compiler/rc/global-init.optimized.wat @@ -1929,7 +1929,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/global-init.untouched.wat b/tests/compiler/rc/global-init.untouched.wat index 7c7b8830b8..ed2accb8f4 100644 --- a/tests/compiler/rc/global-init.untouched.wat +++ b/tests/compiler/rc/global-init.untouched.wat @@ -3454,7 +3454,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/local-init.optimized.wat b/tests/compiler/rc/local-init.optimized.wat index 02eee80e8e..09cd6f2405 100644 --- a/tests/compiler/rc/local-init.optimized.wat +++ b/tests/compiler/rc/local-init.optimized.wat @@ -1906,7 +1906,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/local-init.untouched.wat b/tests/compiler/rc/local-init.untouched.wat index 9157c0e601..7699774ba5 100644 --- a/tests/compiler/rc/local-init.untouched.wat +++ b/tests/compiler/rc/local-init.untouched.wat @@ -3445,7 +3445,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/logical-and-mismatch.optimized.wat b/tests/compiler/rc/logical-and-mismatch.optimized.wat index 6772fcfa31..6daef5ea2c 100644 --- a/tests/compiler/rc/logical-and-mismatch.optimized.wat +++ b/tests/compiler/rc/logical-and-mismatch.optimized.wat @@ -1949,7 +1949,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/logical-and-mismatch.untouched.wat b/tests/compiler/rc/logical-and-mismatch.untouched.wat index b3ca3f728d..d2e0b00136 100644 --- a/tests/compiler/rc/logical-and-mismatch.untouched.wat +++ b/tests/compiler/rc/logical-and-mismatch.untouched.wat @@ -3483,7 +3483,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/logical-or-mismatch.optimized.wat b/tests/compiler/rc/logical-or-mismatch.optimized.wat index a8fee64286..3286ffe51f 100644 --- a/tests/compiler/rc/logical-or-mismatch.optimized.wat +++ b/tests/compiler/rc/logical-or-mismatch.optimized.wat @@ -1949,7 +1949,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/logical-or-mismatch.untouched.wat b/tests/compiler/rc/logical-or-mismatch.untouched.wat index c28a4e768a..90b3e310d9 100644 --- a/tests/compiler/rc/logical-or-mismatch.untouched.wat +++ b/tests/compiler/rc/logical-or-mismatch.untouched.wat @@ -3483,7 +3483,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/rereturn.optimized.wat b/tests/compiler/rc/rereturn.optimized.wat index 52e8d2592b..b221b210e4 100644 --- a/tests/compiler/rc/rereturn.optimized.wat +++ b/tests/compiler/rc/rereturn.optimized.wat @@ -1885,7 +1885,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/rereturn.untouched.wat b/tests/compiler/rc/rereturn.untouched.wat index e0b5fa9f29..64666083f6 100644 --- a/tests/compiler/rc/rereturn.untouched.wat +++ b/tests/compiler/rc/rereturn.untouched.wat @@ -3419,7 +3419,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/ternary-mismatch.optimized.wat b/tests/compiler/rc/ternary-mismatch.optimized.wat index 08ab899cf5..d092a8cc85 100644 --- a/tests/compiler/rc/ternary-mismatch.optimized.wat +++ b/tests/compiler/rc/ternary-mismatch.optimized.wat @@ -1941,7 +1941,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/ternary-mismatch.untouched.wat b/tests/compiler/rc/ternary-mismatch.untouched.wat index 7f526cb5af..de62690bf3 100644 --- a/tests/compiler/rc/ternary-mismatch.untouched.wat +++ b/tests/compiler/rc/ternary-mismatch.untouched.wat @@ -3467,7 +3467,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index d7ea06f1cc..b7bd452371 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -291,10 +291,10 @@ i32.const 0 call $~lib/rt/stub/__alloc local.tee $1 - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 i32.const 8 i32.store offset=8 @@ -319,7 +319,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load i64.load ) (func $~lib/util/number/decimalCount32 (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) diff --git a/tests/compiler/resolve-access.untouched.wat b/tests/compiler/resolve-access.untouched.wat index 2a3adb026a..b25f74807f 100644 --- a/tests/compiler/resolve-access.untouched.wat +++ b/tests/compiler/resolve-access.untouched.wat @@ -1412,10 +1412,10 @@ local.get $4 local.get $6 call $~lib/rt/stub/__retain - i32.store + i32.store offset=4 local.get $4 local.get $6 - i32.store offset=4 + i32.store local.get $4 local.get $5 i32.store offset=8 @@ -1433,7 +1433,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 7 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -1535,7 +1535,7 @@ (local $8 i64) (local $9 i64) i32.const 592 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 @@ -1754,7 +1754,7 @@ (local $12 i64) (local $13 i64) i32.const 592 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index 62b6c94c0d..2e76e5a93b 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -422,7 +422,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 1380 + i32.const 1376 i32.load local.set $13 loop $continue|0 @@ -1324,7 +1324,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 1068 + i32.const 1064 i32.load local.get $3 i32.const 3 @@ -1332,7 +1332,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 1292 + i32.const 1288 i32.load local.get $3 i32.const 1 diff --git a/tests/compiler/resolve-binary.untouched.wat b/tests/compiler/resolve-binary.untouched.wat index b3292d57da..e3923f97f9 100644 --- a/tests/compiler/resolve-binary.untouched.wat +++ b/tests/compiler/resolve-binary.untouched.wat @@ -421,7 +421,7 @@ (local $8 i64) (local $9 i64) i32.const 600 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 @@ -1803,7 +1803,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 18 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -1812,7 +1812,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -1875,7 +1875,7 @@ local.get $6 local.set $15 i32.const 1824 - i32.load offset=4 + i32.load local.set $16 block $break|0 loop $continue|0 diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 0885bda4bc..350475eacd 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -201,14 +201,14 @@ i32.const 0 i32.store offset=8 local.get $0 - i32.load + i32.load offset=4 drop local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 i32.const 8 i32.store offset=8 @@ -230,7 +230,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -254,7 +254,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -344,7 +344,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 1388 + i32.const 1384 i32.load local.set $13 loop $continue|0 @@ -1273,7 +1273,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 1076 + i32.const 1072 i32.load local.get $3 i32.const 3 @@ -1281,7 +1281,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 1300 + i32.const 1296 i32.load local.get $3 i32.const 1 diff --git a/tests/compiler/resolve-elementaccess.untouched.wat b/tests/compiler/resolve-elementaccess.untouched.wat index ea13d8f935..41eec887f4 100644 --- a/tests/compiler/resolve-elementaccess.untouched.wat +++ b/tests/compiler/resolve-elementaccess.untouched.wat @@ -442,7 +442,7 @@ if i32.const 24 i32.const 72 - i32.const 22 + i32.const 24 i32.const 56 call $~lib/builtins/abort unreachable @@ -481,7 +481,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load + i32.load offset=4 local.tee $4 i32.ne if @@ -492,10 +492,10 @@ call $~lib/rt/stub/__release end local.get $5 - i32.store + i32.store offset=4 local.get $0 local.get $3 - i32.store offset=4 + i32.store local.get $0 local.get $1 i32.store offset=8 @@ -533,7 +533,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -557,7 +557,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -578,7 +578,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 12 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -587,7 +587,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -716,7 +716,7 @@ local.get $6 local.set $15 i32.const 1384 - i32.load offset=4 + i32.load local.set $16 block $break|0 loop $continue|0 @@ -2424,7 +2424,7 @@ (local $8 i64) (local $9 i64) i32.const 1832 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 diff --git a/tests/compiler/resolve-function-expression.untouched.wat b/tests/compiler/resolve-function-expression.untouched.wat index 975bb7a130..a48a58baf7 100644 --- a/tests/compiler/resolve-function-expression.untouched.wat +++ b/tests/compiler/resolve-function-expression.untouched.wat @@ -222,7 +222,7 @@ (local $8 i64) (local $9 i64) i32.const 544 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index c2b41b2c03..ac5826cd26 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -2047,7 +2047,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 1524 + i32.const 1520 i32.load local.set $13 loop $continue|0 @@ -2774,7 +2774,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 1212 + i32.const 1208 i32.load local.get $3 i32.const 3 @@ -2782,7 +2782,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 1436 + i32.const 1432 i32.load local.get $3 i32.const 1 @@ -3306,7 +3306,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/resolve-ternary.untouched.wat b/tests/compiler/resolve-ternary.untouched.wat index 7e7773a649..133b1966d5 100644 --- a/tests/compiler/resolve-ternary.untouched.wat +++ b/tests/compiler/resolve-ternary.untouched.wat @@ -3356,7 +3356,7 @@ (local $8 i64) (local $9 i64) i32.const 712 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 @@ -3713,7 +3713,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 37 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -3722,7 +3722,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 38 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -3785,7 +3785,7 @@ local.get $6 local.set $15 i32.const 1968 - i32.load offset=4 + i32.load local.set $16 block $break|0 loop $continue|0 @@ -5451,7 +5451,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/resolve-unary.untouched.wat b/tests/compiler/resolve-unary.untouched.wat index 189238ada3..48cff778ab 100644 --- a/tests/compiler/resolve-unary.untouched.wat +++ b/tests/compiler/resolve-unary.untouched.wat @@ -223,7 +223,7 @@ (local $8 i64) (local $9 i64) i32.const 464 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 diff --git a/tests/compiler/retain-release-sanity.optimized.wat b/tests/compiler/retain-release-sanity.optimized.wat index c0d7fb5aaa..6cb85bb0bd 100644 --- a/tests/compiler/retain-release-sanity.optimized.wat +++ b/tests/compiler/retain-release-sanity.optimized.wat @@ -1997,7 +1997,7 @@ if i32.const 24 i32.const 72 - i32.const 22 + i32.const 24 i32.const 56 call $~lib/builtins/abort unreachable @@ -2031,7 +2031,7 @@ i32.store offset=8 local.get $1 local.get $0 - i32.load + i32.load offset=4 local.tee $3 i32.ne if @@ -2043,10 +2043,10 @@ end local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 local.get $2 i32.store offset=8 @@ -2234,7 +2234,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $4 local.get $1 i32.const 2 @@ -2255,10 +2255,10 @@ local.get $0 local.get $1 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store end local.get $0 local.get $3 @@ -2277,7 +2277,7 @@ local.tee $2 call $~lib/array/ensureSize local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -2304,7 +2304,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.sub @@ -2333,7 +2333,7 @@ local.tee $2 call $~lib/array/ensureSize local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -2763,7 +2763,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.load offset=4 + i32.load local.tee $2 local.get $0 i32.load offset=12 @@ -2795,16 +2795,22 @@ (func $~lib/rt/__visit_members (; 45 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) block $block$4$break block $switch$1$default - block $switch$1$case$7 - block $switch$1$case$6 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $block$4$break $block$4$break $switch$1$case$6 $switch$1$case$7 $block$4$break $block$4$break $switch$1$default + block $switch$1$case$8 + block $switch$1$case$7 + block $switch$1$case$6 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $block$4$break $block$4$break $switch$1$case$6 $switch$1$case$7 $switch$1$case$8 $switch$1$case$8 $switch$1$default + end + return end - return + local.get $0 + local.get $1 + call $~lib/array/Array<~lib/string/String>#__visit_impl + br $block$4$break end local.get $0 local.get $1 @@ -2812,14 +2818,19 @@ br $block$4$break end local.get $0 - local.get $1 - call $~lib/array/Array<~lib/string/String>#__visit_impl - br $block$4$break + i32.load + local.tee $0 + if + local.get $0 + local.get $1 + call $~lib/rt/pure/__visit + end + return end unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/retain-release-sanity.untouched.wat b/tests/compiler/retain-release-sanity.untouched.wat index 9df5bb0b43..26e4f94e63 100644 --- a/tests/compiler/retain-release-sanity.untouched.wat +++ b/tests/compiler/retain-release-sanity.untouched.wat @@ -3548,7 +3548,7 @@ if i32.const 24 i32.const 72 - i32.const 22 + i32.const 24 i32.const 56 call $~lib/builtins/abort unreachable @@ -3587,7 +3587,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load + i32.load offset=4 local.tee $4 i32.ne if @@ -3598,10 +3598,10 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store + i32.store offset=4 local.get $0 local.get $3 - i32.store offset=4 + i32.store local.get $0 local.get $1 i32.store offset=8 @@ -3835,7 +3835,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.set $4 local.get $1 local.get $2 @@ -3860,10 +3860,10 @@ local.get $0 local.get $6 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $0 local.get $6 - i32.store offset=4 + i32.store end local.get $0 local.get $5 @@ -3885,7 +3885,7 @@ i32.const 2 call $~lib/array/ensureSize local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -3915,7 +3915,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.sub @@ -3993,7 +3993,7 @@ i32.const 2 call $~lib/array/ensureSize local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -4496,7 +4496,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -4535,7 +4535,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -4573,40 +4573,51 @@ (local $2 i32) block $block$4$break block $switch$1$default - block $switch$1$case$7 - block $switch$1$case$6 - block $switch$1$case$5 - block $switch$1$case$4 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$6 $switch$1$case$7 $switch$1$case$4 $switch$1$case$4 $switch$1$default + block $switch$1$case$8 + block $switch$1$case$7 + block $switch$1$case$6 + block $switch$1$case$5 + block $switch$1$case$4 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$6 $switch$1$case$7 $switch$1$case$8 $switch$1$case$8 $switch$1$default + end + return end - return + br $block$4$break end + local.get $0 + local.get $1 + call $~lib/array/Array#__visit_impl br $block$4$break end local.get $0 local.get $1 - call $~lib/array/Array#__visit_impl + call $~lib/array/Array<~lib/string/String>#__visit_impl br $block$4$break end local.get $0 local.get $1 - call $~lib/array/Array<~lib/string/String>#__visit_impl + call $~lib/array/Array<~lib/array/Array<~lib/string/String>>#__visit_impl br $block$4$break end local.get $0 - local.get $1 - call $~lib/array/Array<~lib/array/Array<~lib/string/String>>#__visit_impl - br $block$4$break + i32.load + local.tee $2 + if + local.get $2 + local.get $1 + call $~lib/rt/pure/__visit + end + return end unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/runtime-full.optimized.wat b/tests/compiler/runtime-full.optimized.wat index 261c212f50..8cc29c5013 100644 --- a/tests/compiler/runtime-full.optimized.wat +++ b/tests/compiler/runtime-full.optimized.wat @@ -1877,7 +1877,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/runtime-full.untouched.wat b/tests/compiler/runtime-full.untouched.wat index 56944d4a18..fd19ccb958 100644 --- a/tests/compiler/runtime-full.untouched.wat +++ b/tests/compiler/runtime-full.untouched.wat @@ -3391,7 +3391,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index 837b6ab683..6338497344 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -31,7 +31,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -63,7 +63,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load i32.const 4 i32.add i32.load diff --git a/tests/compiler/std/array-access.untouched.wat b/tests/compiler/std/array-access.untouched.wat index a9cae69364..784b79895c 100644 --- a/tests/compiler/std/array-access.untouched.wat +++ b/tests/compiler/std/array-access.untouched.wat @@ -26,7 +26,7 @@ ) (func $~lib/array/Array<~lib/array/Array>#__unchecked_get (; 2 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -71,7 +71,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -119,7 +119,7 @@ ) (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -347,7 +347,7 @@ ) (func $~lib/array/Array<~lib/array/Array<~lib/string/String>>#__unchecked_get (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 6cdac6da41..20083086d8 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -53,7 +53,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_s @@ -72,7 +72,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -1615,10 +1615,10 @@ call $~lib/rt/tlsf/__alloc local.tee $2 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $2 - i32.store offset=4 + i32.store local.get $1 local.get $0 i32.store offset=8 @@ -1981,7 +1981,7 @@ i32.const 3 call $~lib/rt/__allocArray local.tee $1 - i32.load offset=4 + i32.load local.tee $0 global.get $std/array-literal/i i32.store8 @@ -2057,7 +2057,7 @@ i32.const 4 call $~lib/rt/__allocArray local.tee $1 - i32.load offset=4 + i32.load local.tee $0 global.get $std/array-literal/i i32.store @@ -2131,7 +2131,7 @@ i32.const 6 call $~lib/rt/__allocArray local.tee $1 - i32.load offset=4 + i32.load local.tee $0 call $std/array-literal/Ref#constructor local.tee $2 @@ -2166,7 +2166,7 @@ i32.const 8 call $~lib/rt/__allocArray local.tee $1 - i32.load offset=4 + i32.load local.tee $0 call $std/array-literal/RefWithCtor#constructor local.tee $5 @@ -2337,7 +2337,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.load offset=4 + i32.load local.tee $2 local.get $0 i32.load offset=12 @@ -2393,7 +2393,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/std/array-literal.untouched.wat b/tests/compiler/std/array-literal.untouched.wat index ce577611f0..d44b2f501f 100644 --- a/tests/compiler/std/array-literal.untouched.wat +++ b/tests/compiler/std/array-literal.untouched.wat @@ -55,7 +55,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 0 i32.shl @@ -88,7 +88,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -3110,10 +3110,10 @@ local.get $4 local.get $6 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $4 local.get $6 - i32.store offset=4 + i32.store local.get $4 local.get $5 i32.store offset=8 @@ -3555,7 +3555,7 @@ call $~lib/rt/__allocArray local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $0 local.get $0 global.get $std/array-literal/i @@ -3641,7 +3641,7 @@ call $~lib/rt/__allocArray local.set $0 local.get $0 - i32.load offset=4 + i32.load local.set $1 local.get $1 global.get $std/array-literal/i @@ -3725,7 +3725,7 @@ call $~lib/rt/__allocArray local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $0 local.get $0 i32.const 0 @@ -3768,7 +3768,7 @@ call $~lib/rt/__allocArray local.set $0 local.get $0 - i32.load offset=4 + i32.load local.set $1 local.get $1 i32.const 0 @@ -3971,7 +3971,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -4010,7 +4010,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -4087,7 +4087,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index e8fc417c68..ca1599a4ef 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -2212,7 +2212,7 @@ if i32.const 24 i32.const 72 - i32.const 22 + i32.const 24 i32.const 56 call $~lib/builtins/abort unreachable @@ -2246,7 +2246,7 @@ i32.const 0 i32.store offset=8 local.get $0 - i32.load + i32.load offset=4 local.tee $3 local.get $1 i32.ne @@ -2259,10 +2259,10 @@ end local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 local.get $2 i32.store offset=8 @@ -2317,10 +2317,10 @@ call $~lib/rt/tlsf/__alloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $4 - i32.store offset=4 + i32.store local.get $2 local.get $1 i32.store offset=8 @@ -2340,7 +2340,7 @@ (local $4 i32) (local $5 i32) local.get $0 - i32.load offset=4 + i32.load local.set $5 local.get $0 i32.load offset=12 @@ -2417,7 +2417,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_u @@ -2483,7 +2483,7 @@ (local $4 i32) (local $5 i32) local.get $0 - i32.load offset=4 + i32.load local.set $5 local.get $0 i32.load offset=12 @@ -2569,7 +2569,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -2645,7 +2645,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain local.tee $1 i32.const 16 @@ -2840,7 +2840,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $4 local.get $1 i32.const 2 @@ -2862,10 +2862,10 @@ local.get $0 local.get $1 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store end local.get $0 local.get $3 @@ -2884,7 +2884,7 @@ local.tee $3 call $~lib/array/ensureSize local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -2912,7 +2912,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.sub @@ -2963,10 +2963,10 @@ call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.tee $5 local.get $0 - i32.load offset=4 + i32.load local.get $3 i32.const 2 i32.shl @@ -2976,7 +2976,7 @@ local.get $5 i32.add local.get $1 - i32.load offset=4 + i32.load local.get $4 i32.const 2 i32.shl @@ -2998,7 +2998,7 @@ select local.set $3 local.get $0 - i32.load offset=4 + i32.load local.tee $5 local.get $1 i32.const 0 @@ -3100,7 +3100,7 @@ local.tee $2 call $~lib/array/ensureSize local.get $0 - i32.load offset=4 + i32.load local.tee $3 i32.const 4 i32.add @@ -3137,7 +3137,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $2 i32.load local.get $2 @@ -3170,10 +3170,10 @@ local.tee $1 if local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.sub @@ -3244,7 +3244,7 @@ local.set $2 end local.get $0 - i32.load offset=4 + i32.load local.set $0 loop $continue|0 local.get $2 @@ -3332,9 +3332,9 @@ call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $4 - i32.load offset=4 + i32.load local.get $0 - i32.load offset=4 + i32.load local.tee $5 local.get $1 i32.const 2 @@ -3379,7 +3379,7 @@ i32.add call $~lib/array/ensureSize local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -3430,7 +3430,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -3534,7 +3534,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -3638,7 +3638,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -3743,7 +3743,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -3917,7 +3917,7 @@ call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $4 - i32.load offset=4 + i32.load local.set $5 loop $loop|0 local.get $1 @@ -3938,7 +3938,7 @@ i32.shl local.tee $2 local.get $0 - i32.load offset=4 + i32.load i32.add i32.load local.get $1 @@ -3973,7 +3973,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -4011,7 +4011,7 @@ call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $5 - i32.load offset=4 + i32.load local.set $6 loop $loop|0 block $break|0 @@ -4033,7 +4033,7 @@ i32.shl local.tee $3 local.get $0 - i32.load offset=4 + i32.load i32.add i32.load local.get $2 @@ -4121,7 +4121,7 @@ i32.ge_s br_if $break|0 local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -4231,7 +4231,7 @@ global.set $~lib/argc local.get $2 local.get $0 - i32.load offset=4 + i32.load local.get $3 i32.const 2 i32.shl @@ -4320,7 +4320,7 @@ global.set $~lib/argc local.get $2 local.get $0 - i32.load offset=4 + i32.load local.get $3 i32.const 2 i32.shl @@ -4796,7 +4796,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $3 i32.const 2 @@ -5310,7 +5310,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $3 i32.const 2 @@ -5402,7 +5402,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -5844,7 +5844,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.set $3 local.get $2 i32.const 2 @@ -6103,7 +6103,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -6320,7 +6320,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.set $3 local.get $2 i32.const 2 @@ -6367,7 +6367,7 @@ ) (func $~lib/array/Array<~lib/array/Array>#__unchecked_get (; 134 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -7661,7 +7661,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 i32.load offset=12 local.get $1 @@ -7845,7 +7845,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 i32.load offset=12 local.get $1 @@ -7895,7 +7895,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 6020 + i32.const 6016 i32.load local.set $13 loop $continue|0 @@ -8622,7 +8622,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 5708 + i32.const 5704 i32.load local.get $3 i32.const 3 @@ -8630,7 +8630,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 5932 + i32.const 5928 i32.load local.get $3 i32.const 1 @@ -9238,7 +9238,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 i32.load offset=12 local.get $1 @@ -10618,7 +10618,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 i32.load offset=12 call $~lib/util/string/joinIntegerArray @@ -10991,7 +10991,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 i32.load offset=12 call $~lib/util/string/joinArrays<~lib/array/Array> @@ -15852,7 +15852,7 @@ call $~lib/rt/pure/__retain drop local.get $9 - i32.load offset=4 + i32.load local.get $9 i32.load offset=12 call $~lib/util/string/joinBooleanArray @@ -15945,7 +15945,7 @@ call $~lib/rt/pure/__retain drop local.get $10 - i32.load offset=4 + i32.load local.get $10 i32.load offset=12 call $~lib/util/string/joinFloatArray @@ -15991,7 +15991,7 @@ i32.const 0 call $~lib/rt/__allocArray local.tee $3 - i32.load offset=4 + i32.load local.tee $1 call $std/array/Ref#constructor local.tee $0 @@ -16013,7 +16013,7 @@ call $~lib/rt/pure/__retain drop local.get $11 - i32.load offset=4 + i32.load local.get $11 i32.load offset=12 call $~lib/util/string/joinObjectArray @@ -16167,7 +16167,7 @@ call $~lib/rt/pure/__retain drop local.get $28 - i32.load offset=4 + i32.load local.get $28 i32.load offset=12 call $~lib/util/string/joinIntegerArray @@ -16197,7 +16197,7 @@ call $~lib/rt/pure/__retain drop local.get $30 - i32.load offset=4 + i32.load local.get $30 i32.load offset=12 call $~lib/util/string/joinIntegerArray @@ -16227,7 +16227,7 @@ call $~lib/rt/pure/__retain drop local.get $31 - i32.load offset=4 + i32.load local.get $31 i32.load offset=12 call $~lib/util/string/joinIntegerArray @@ -16257,7 +16257,7 @@ call $~lib/rt/pure/__retain drop local.get $32 - i32.load offset=4 + i32.load local.get $32 i32.load offset=12 call $~lib/util/string/joinIntegerArray @@ -16324,7 +16324,7 @@ i32.const 0 call $~lib/rt/__allocArray local.tee $0 - i32.load offset=4 + i32.load local.tee $1 i32.const 2 i32.const 2 @@ -16352,7 +16352,7 @@ call $~lib/rt/pure/__retain drop local.get $33 - i32.load offset=4 + i32.load local.get $33 i32.load offset=12 call $~lib/util/string/joinArrays<~lib/array/Array> @@ -16377,7 +16377,7 @@ i32.const 0 call $~lib/rt/__allocArray local.tee $0 - i32.load offset=4 + i32.load local.tee $1 i32.const 2 i32.const 0 @@ -16405,7 +16405,7 @@ call $~lib/rt/pure/__retain drop local.get $34 - i32.load offset=4 + i32.load local.get $34 i32.load offset=12 call $~lib/util/string/joinArrays<~lib/array/Array> @@ -16430,14 +16430,14 @@ i32.const 0 call $~lib/rt/__allocArray local.tee $26 - i32.load offset=4 + i32.load i32.const 1 i32.const 2 i32.const 24 i32.const 0 call $~lib/rt/__allocArray local.tee $1 - i32.load offset=4 + i32.load i32.const 1 i32.const 2 i32.const 7 @@ -16457,7 +16457,7 @@ call $~lib/rt/pure/__retain drop local.get $8 - i32.load offset=4 + i32.load local.get $8 i32.load offset=12 call $~lib/util/string/joinArrays<~lib/array/Array<~lib/array/Array>> @@ -16675,7 +16675,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.load offset=4 + i32.load local.tee $2 local.get $0 i32.load offset=12 @@ -16767,7 +16767,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/std/array.untouched.wat b/tests/compiler/std/array.untouched.wat index b5c3fbfff4..82e8947c3d 100644 --- a/tests/compiler/std/array.untouched.wat +++ b/tests/compiler/std/array.untouched.wat @@ -3747,7 +3747,7 @@ if i32.const 24 i32.const 72 - i32.const 22 + i32.const 24 i32.const 56 call $~lib/builtins/abort unreachable @@ -3786,7 +3786,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load + i32.load offset=4 local.tee $4 i32.ne if @@ -3797,10 +3797,10 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store + i32.store offset=4 local.get $0 local.get $3 - i32.store offset=4 + i32.store local.get $0 local.get $1 i32.store offset=8 @@ -3975,10 +3975,10 @@ local.get $4 local.get $6 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $4 local.get $6 - i32.store offset=4 + i32.store local.get $4 local.get $5 i32.store offset=8 @@ -4000,7 +4000,7 @@ (local $6 i32) (local $7 i32) local.get $0 - i32.load offset=4 + i32.load local.set $4 local.get $0 i32.load offset=12 @@ -4077,7 +4077,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 46 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 0 i32.shl @@ -4195,7 +4195,7 @@ (local $6 i32) (local $7 i32) local.get $0 - i32.load offset=4 + i32.load local.set $4 local.get $0 i32.load offset=12 @@ -4281,7 +4281,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 51 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -4410,7 +4410,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain local.set $1 local.get $1 @@ -4630,7 +4630,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.set $4 local.get $1 local.get $2 @@ -4655,10 +4655,10 @@ local.get $0 local.get $6 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $0 local.get $6 - i32.store offset=4 + i32.store end local.get $0 local.get $5 @@ -4680,7 +4680,7 @@ i32.const 2 call $~lib/array/ensureSize local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -4694,7 +4694,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 61 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -4739,7 +4739,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.sub @@ -4801,7 +4801,7 @@ call $~lib/rt/pure/__retain local.set $5 local.get $5 - i32.load offset=4 + i32.load local.set $6 local.get $2 i32.const 2 @@ -4809,14 +4809,14 @@ local.set $7 local.get $6 local.get $0 - i32.load offset=4 + i32.load local.get $7 call $~lib/memory/memory.copy local.get $6 local.get $7 i32.add local.get $1 - i32.load offset=4 + i32.load local.get $3 i32.const 2 i32.shl @@ -4837,7 +4837,7 @@ (local $10 i32) (local $11 i32) local.get $0 - i32.load offset=4 + i32.load local.set $4 local.get $0 i32.load offset=12 @@ -5054,7 +5054,7 @@ i32.const 2 call $~lib/array/ensureSize local.get $0 - i32.load offset=4 + i32.load local.set $3 local.get $3 i32.const 4 @@ -5094,7 +5094,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 i32.load @@ -5134,10 +5134,10 @@ local.get $1 if local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.sub @@ -5217,7 +5217,7 @@ local.set $2 end local.get $0 - i32.load offset=4 + i32.load local.set $6 block $break|0 loop $continue|0 @@ -5319,10 +5319,10 @@ call $~lib/rt/pure/__retain local.set $6 local.get $6 - i32.load offset=4 + i32.load local.set $7 local.get $0 - i32.load offset=4 + i32.load local.set $8 local.get $8 local.get $1 @@ -5366,7 +5366,7 @@ ) (func $~lib/array/Array#__unchecked_set (; 73 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -5438,7 +5438,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -5575,7 +5575,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -5702,7 +5702,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -5824,7 +5824,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -6030,7 +6030,7 @@ call $~lib/rt/pure/__retain local.set $3 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -6052,7 +6052,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load offset=4 + i32.load local.get $5 i32.const 2 i32.shl @@ -6086,7 +6086,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 103 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -6150,7 +6150,7 @@ call $~lib/rt/pure/__retain local.set $3 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -6172,7 +6172,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load offset=4 + i32.load local.get $5 i32.const 2 i32.shl @@ -6280,7 +6280,7 @@ i32.eqz br_if $break|0 local.get $0 - i32.load offset=4 + i32.load local.get $3 i32.const 2 i32.shl @@ -6413,7 +6413,7 @@ global.set $~lib/argc local.get $3 local.get $0 - i32.load offset=4 + i32.load local.get $4 i32.const 2 i32.shl @@ -6497,7 +6497,7 @@ global.set $~lib/argc local.get $3 local.get $0 - i32.load offset=4 + i32.load local.get $4 i32.const 2 i32.shl @@ -6616,7 +6616,7 @@ global.set $~lib/argc local.get $3 local.get $0 - i32.load offset=4 + i32.load local.get $4 i32.const 2 i32.shl @@ -6689,7 +6689,7 @@ global.set $~lib/argc local.get $3 local.get $0 - i32.load offset=4 + i32.load local.get $4 i32.const 2 i32.shl @@ -7290,7 +7290,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.set $3 local.get $2 i32.const 2 @@ -7904,7 +7904,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.set $3 local.get $2 i32.const 2 @@ -8017,7 +8017,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 148 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -8549,7 +8549,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.set $3 local.get $2 i32.const 2 @@ -9026,7 +9026,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.set $3 local.get $2 i32.const 2 @@ -9379,7 +9379,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -9611,7 +9611,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.set $3 local.get $2 i32.const 2 @@ -9670,7 +9670,7 @@ ) (func $~lib/array/Array<~lib/array/Array>#__unchecked_get (; 181 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -9846,7 +9846,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -10071,7 +10071,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.set $3 local.get $2 i32.const 2 @@ -10130,7 +10130,7 @@ ) (func $~lib/array/Array>#__unchecked_get (; 194 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -10376,7 +10376,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.set $3 local.get $2 i32.const 2 @@ -10435,7 +10435,7 @@ ) (func $~lib/array/Array<~lib/string/String | null>#__unchecked_get (; 201 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -11160,7 +11160,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -11363,7 +11363,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.set $3 local.get $2 i32.const 2 @@ -11422,7 +11422,7 @@ ) (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 223 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -11975,7 +11975,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -12065,7 +12065,7 @@ (local $8 i64) (local $9 i64) i32.const 5000 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 @@ -12471,7 +12471,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -12719,7 +12719,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -12743,7 +12743,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 245 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -12752,7 +12752,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 246 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -12815,7 +12815,7 @@ local.get $6 local.set $15 i32.const 6464 - i32.load offset=4 + i32.load local.set $16 block $break|0 loop $continue|0 @@ -14287,7 +14287,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -14540,7 +14540,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -14755,7 +14755,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -15013,7 +15013,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -15239,7 +15239,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -15345,7 +15345,7 @@ (local $12 i64) (local $13 i64) i32.const 5000 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 @@ -15746,7 +15746,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -16097,7 +16097,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -16343,7 +16343,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -16569,7 +16569,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -16805,7 +16805,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -17046,7 +17046,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -17282,7 +17282,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $0 i32.load offset=12 @@ -22480,7 +22480,7 @@ call $~lib/rt/__allocArray local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $34 local.get $34 i32.const 0 @@ -22770,7 +22770,7 @@ call $~lib/rt/__allocArray local.set $49 local.get $49 - i32.load offset=4 + i32.load local.set $50 local.get $50 i32.const 2 @@ -22816,7 +22816,7 @@ call $~lib/rt/__allocArray local.set $49 local.get $49 - i32.load offset=4 + i32.load local.set $53 local.get $53 i32.const 2 @@ -22862,7 +22862,7 @@ call $~lib/rt/__allocArray local.set $49 local.get $49 - i32.load offset=4 + i32.load local.set $0 local.get $0 i32.const 1 @@ -22872,7 +22872,7 @@ call $~lib/rt/__allocArray local.set $18 local.get $18 - i32.load offset=4 + i32.load local.set $7 local.get $7 i32.const 1 @@ -23139,7 +23139,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -23178,7 +23178,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -23217,7 +23217,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -23256,7 +23256,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -23304,7 +23304,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -23352,7 +23352,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -23391,7 +23391,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -23430,7 +23430,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -23597,7 +23597,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index 106e515f83..b2b6d1f6f2 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -2094,7 +2094,7 @@ if i32.const 24 i32.const 72 - i32.const 22 + i32.const 24 i32.const 56 call $~lib/builtins/abort unreachable @@ -2128,7 +2128,7 @@ i32.store offset=8 local.get $1 local.get $0 - i32.load + i32.load offset=4 local.tee $3 i32.ne if @@ -2140,10 +2140,10 @@ end local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 local.get $2 i32.store offset=8 @@ -2161,10 +2161,10 @@ call $~lib/rt/tlsf/__alloc local.tee $1 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 i32.const 8 i32.store offset=8 @@ -2196,7 +2196,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 456 - i32.const 21 + i32.const 22 i32.const 6 call $~lib/builtins/abort unreachable @@ -2215,7 +2215,7 @@ i32.const 0 i32.store offset=8 local.get $2 - i32.load + i32.load offset=4 local.tee $3 local.get $0 i32.ne @@ -2228,10 +2228,10 @@ end local.get $2 local.get $0 - i32.store + i32.store offset=4 local.get $2 local.get $0 - i32.store offset=4 + i32.store local.get $2 local.get $1 i32.store offset=8 @@ -2523,7 +2523,7 @@ i32.const 1 global.set $~lib/argc local.get $1 - i32.load + i32.load offset=4 local.tee $3 call $~lib/arraybuffer/ArrayBuffer#get:byteLength local.set $4 @@ -2683,7 +2683,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/std/arraybuffer.untouched.wat b/tests/compiler/std/arraybuffer.untouched.wat index 8db4610733..e3373de021 100644 --- a/tests/compiler/std/arraybuffer.untouched.wat +++ b/tests/compiler/std/arraybuffer.untouched.wat @@ -2034,7 +2034,7 @@ if i32.const 24 i32.const 72 - i32.const 52 + i32.const 54 i32.const 42 call $~lib/builtins/abort unreachable @@ -3741,7 +3741,7 @@ if i32.const 24 i32.const 72 - i32.const 22 + i32.const 24 i32.const 56 call $~lib/builtins/abort unreachable @@ -3780,7 +3780,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load + i32.load offset=4 local.tee $4 i32.ne if @@ -3791,10 +3791,10 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store + i32.store offset=4 local.get $0 local.get $3 - i32.store offset=4 + i32.store local.get $0 local.get $1 i32.store offset=8 @@ -3835,10 +3835,10 @@ local.get $4 local.get $6 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $4 local.get $6 - i32.store offset=4 + i32.store local.get $4 local.get $5 i32.store offset=8 @@ -3892,7 +3892,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 456 - i32.const 21 + i32.const 22 i32.const 6 call $~lib/builtins/abort unreachable @@ -3920,7 +3920,7 @@ local.get $1 local.tee $5 local.get $4 - i32.load + i32.load offset=4 local.tee $4 i32.ne if @@ -3931,14 +3931,14 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store + i32.store offset=4 local.get $1 local.get $2 i32.add local.set $6 local.get $0 local.get $6 - i32.store offset=4 + i32.store local.get $0 local.get $3 i32.store offset=8 @@ -4302,7 +4302,7 @@ global.set $~lib/argc i32.const 0 local.get $2 - i32.load + i32.load offset=4 i32.const 0 i32.const 0 call $~lib/dataview/DataView#constructor|trampoline @@ -4491,7 +4491,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index a046cfb98d..a3b439255b 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -1854,7 +1854,7 @@ i32.const 0 i32.store offset=8 local.get $0 - i32.load + i32.load offset=4 local.tee $2 local.get $1 i32.ne @@ -1867,10 +1867,10 @@ end local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 i32.const 8 i32.store offset=8 @@ -1890,7 +1890,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -1923,7 +1923,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 21 + i32.const 26 i32.const 6 call $~lib/builtins/abort unreachable @@ -1942,7 +1942,7 @@ i32.const 0 i32.store offset=8 local.get $3 - i32.load + i32.load offset=4 local.tee $4 local.get $0 i32.ne @@ -1955,12 +1955,12 @@ end local.get $3 local.get $0 - i32.store + i32.store offset=4 local.get $3 local.get $0 local.get $1 i32.add - i32.store offset=4 + i32.store local.get $3 local.get $2 i32.store offset=8 @@ -1969,10 +1969,10 @@ local.get $3 ) (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=4 local.get $0 i32.load + local.get $0 + i32.load offset=4 i32.sub ) (func $~lib/polyfills/bswap (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) @@ -2002,7 +2002,7 @@ if i32.const 280 i32.const 432 - i32.const 36 + i32.const 37 i32.const 6 call $~lib/builtins/abort unreachable @@ -2010,13 +2010,13 @@ local.get $2 if (result f32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add f32.load else local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load @@ -2058,7 +2058,7 @@ if i32.const 280 i32.const 432 - i32.const 50 + i32.const 51 i32.const 7 call $~lib/builtins/abort unreachable @@ -2066,11 +2066,11 @@ local.get $1 if (result f64) local.get $0 - i32.load offset=4 + i32.load f64.load else local.get $0 - i32.load offset=4 + i32.load i64.load call $~lib/polyfills/bswap f64.reinterpret_i64 @@ -2084,13 +2084,13 @@ if i32.const 280 i32.const 432 - i32.const 61 + i32.const 62 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_s @@ -2122,13 +2122,13 @@ if i32.const 280 i32.const 432 - i32.const 69 + i32.const 70 i32.const 7 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load16_s @@ -2156,13 +2156,13 @@ if i32.const 280 i32.const 432 - i32.const 78 + i32.const 79 i32.const 7 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load @@ -2185,13 +2185,13 @@ if i32.const 280 i32.const 432 - i32.const 172 + i32.const 173 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load i64.load local.set $2 local.get $1 @@ -2210,13 +2210,13 @@ if i32.const 280 i32.const 432 - i32.const 84 + i32.const 85 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_u @@ -2246,13 +2246,13 @@ if i32.const 280 i32.const 432 - i32.const 92 + i32.const 93 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load16_u @@ -2280,13 +2280,13 @@ if i32.const 280 i32.const 432 - i32.const 101 + i32.const 102 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load @@ -2309,13 +2309,13 @@ if i32.const 280 i32.const 432 - i32.const 181 + i32.const 182 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load i64.load local.set $2 local.get $1 @@ -2334,7 +2334,7 @@ if i32.const 280 i32.const 432 - i32.const 110 + i32.const 111 i32.const 6 call $~lib/builtins/abort unreachable @@ -2342,12 +2342,12 @@ local.get $2 if local.get $0 - i32.load offset=4 + i32.load local.get $1 f32.store else local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.reinterpret_f32 call $~lib/polyfills/bswap @@ -2362,7 +2362,7 @@ if i32.const 280 i32.const 432 - i32.const 119 + i32.const 120 i32.const 6 call $~lib/builtins/abort unreachable @@ -2370,12 +2370,12 @@ local.get $2 if local.get $0 - i32.load offset=4 + i32.load local.get $1 f64.store else local.get $0 - i32.load offset=4 + i32.load local.get $1 i64.reinterpret_f64 call $~lib/polyfills/bswap @@ -2390,13 +2390,13 @@ if i32.const 280 i32.const 432 - i32.const 125 + i32.const 126 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load i32.const 108 i32.store8 ) @@ -2408,13 +2408,13 @@ if i32.const 280 i32.const 432 - i32.const 133 + i32.const 134 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $2 if (result i32) local.get $1 @@ -2432,13 +2432,13 @@ if i32.const 280 i32.const 432 - i32.const 141 + i32.const 142 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $2 if (result i32) local.get $1 @@ -2456,13 +2456,13 @@ if i32.const 280 i32.const 432 - i32.const 190 + i32.const 191 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $2 if (result i64) local.get $1 @@ -2480,13 +2480,13 @@ if i32.const 280 i32.const 432 - i32.const 146 + i32.const 147 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load i32.const 238 i32.store8 ) @@ -2498,13 +2498,13 @@ if i32.const 280 i32.const 432 - i32.const 154 + i32.const 155 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $2 if (result i32) local.get $1 @@ -2522,13 +2522,13 @@ if i32.const 280 i32.const 432 - i32.const 162 + i32.const 163 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $2 if (result i32) local.get $1 @@ -2546,13 +2546,13 @@ if i32.const 280 i32.const 432 - i32.const 198 + i32.const 199 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $2 if (result i64) local.get $1 @@ -2625,7 +2625,7 @@ i32.const 95 call $~lib/typedarray/Uint8Array#__set local.get $1 - i32.load + i32.load offset=4 local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -4108,7 +4108,7 @@ i32.const 1 global.set $~lib/argc local.get $1 - i32.load + i32.load offset=4 call $~lib/dataview/DataView#constructor|trampoline local.set $2 local.get $0 @@ -4266,7 +4266,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/std/dataview.untouched.wat b/tests/compiler/std/dataview.untouched.wat index ba6ffef52b..70a4542567 100644 --- a/tests/compiler/std/dataview.untouched.wat +++ b/tests/compiler/std/dataview.untouched.wat @@ -3553,7 +3553,7 @@ if i32.const 24 i32.const 72 - i32.const 22 + i32.const 24 i32.const 56 call $~lib/builtins/abort unreachable @@ -3592,7 +3592,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load + i32.load offset=4 local.tee $4 i32.ne if @@ -3603,10 +3603,10 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store + i32.store offset=4 local.get $0 local.get $3 - i32.store offset=4 + i32.store local.get $0 local.get $1 i32.store offset=8 @@ -3642,7 +3642,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -3676,7 +3676,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 21 + i32.const 26 i32.const 6 call $~lib/builtins/abort unreachable @@ -3704,7 +3704,7 @@ local.get $1 local.tee $5 local.get $4 - i32.load + i32.load offset=4 local.tee $4 i32.ne if @@ -3715,14 +3715,14 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store + i32.store offset=4 local.get $1 local.get $2 i32.add local.set $6 local.get $0 local.get $6 - i32.store offset=4 + i32.store local.get $0 local.get $3 i32.store offset=8 @@ -3731,10 +3731,10 @@ local.get $0 ) (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=4 local.get $0 i32.load + local.get $0 + i32.load offset=4 i32.sub ) (func $~lib/polyfills/bswap (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) @@ -3765,7 +3765,7 @@ if i32.const 280 i32.const 432 - i32.const 36 + i32.const 37 i32.const 6 call $~lib/builtins/abort unreachable @@ -3773,13 +3773,13 @@ local.get $2 if (result f32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add f32.load else local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load @@ -3840,7 +3840,7 @@ if i32.const 280 i32.const 432 - i32.const 50 + i32.const 51 i32.const 7 call $~lib/builtins/abort unreachable @@ -3848,13 +3848,13 @@ local.get $2 if (result f64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add f64.load else local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i64.load @@ -3870,13 +3870,13 @@ if i32.const 280 i32.const 432 - i32.const 61 + i32.const 62 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_s @@ -3912,13 +3912,13 @@ if i32.const 280 i32.const 432 - i32.const 69 + i32.const 70 i32.const 7 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load16_s @@ -3960,13 +3960,13 @@ if i32.const 280 i32.const 432 - i32.const 78 + i32.const 79 i32.const 7 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load @@ -4033,13 +4033,13 @@ if i32.const 280 i32.const 432 - i32.const 172 + i32.const 173 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i64.load @@ -4060,13 +4060,13 @@ if i32.const 280 i32.const 432 - i32.const 84 + i32.const 85 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_u @@ -4100,13 +4100,13 @@ if i32.const 280 i32.const 432 - i32.const 92 + i32.const 93 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load16_u @@ -4134,13 +4134,13 @@ if i32.const 280 i32.const 432 - i32.const 101 + i32.const 102 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load @@ -4168,13 +4168,13 @@ if i32.const 280 i32.const 432 - i32.const 181 + i32.const 182 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i64.load @@ -4201,7 +4201,7 @@ if i32.const 280 i32.const 432 - i32.const 110 + i32.const 111 i32.const 6 call $~lib/builtins/abort unreachable @@ -4209,14 +4209,14 @@ local.get $3 if local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 f32.store else local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -4239,7 +4239,7 @@ if i32.const 280 i32.const 432 - i32.const 119 + i32.const 120 i32.const 6 call $~lib/builtins/abort unreachable @@ -4247,14 +4247,14 @@ local.get $3 if local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 f64.store else local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -4271,13 +4271,13 @@ if i32.const 280 i32.const 432 - i32.const 125 + i32.const 126 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -4297,13 +4297,13 @@ if i32.const 280 i32.const 432 - i32.const 133 + i32.const 134 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $3 @@ -4329,13 +4329,13 @@ if i32.const 280 i32.const 432 - i32.const 141 + i32.const 142 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $3 @@ -4361,13 +4361,13 @@ if i32.const 280 i32.const 432 - i32.const 190 + i32.const 191 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $3 @@ -4387,13 +4387,13 @@ if i32.const 280 i32.const 432 - i32.const 146 + i32.const 147 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -4413,13 +4413,13 @@ if i32.const 280 i32.const 432 - i32.const 154 + i32.const 155 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $3 @@ -4445,13 +4445,13 @@ if i32.const 280 i32.const 432 - i32.const 162 + i32.const 163 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $3 @@ -4477,13 +4477,13 @@ if i32.const 280 i32.const 432 - i32.const 198 + i32.const 199 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $3 @@ -4521,10 +4521,10 @@ call $~lib/dataview/DataView#constructor ) (func $~lib/dataview/DataView#get:byteOffset (; 65 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=4 local.get $0 i32.load + local.get $0 + i32.load offset=4 i32.sub ) (func $start:std/dataview (; 66 ;) (type $FUNCSIG$v) @@ -4569,7 +4569,7 @@ call $~lib/typedarray/Uint8Array#__set i32.const 0 local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $0 @@ -6216,7 +6216,7 @@ global.set $~lib/argc i32.const 0 local.get $0 - i32.load + i32.load offset=4 i32.const 0 i32.const 0 call $~lib/dataview/DataView#constructor|trampoline @@ -6403,7 +6403,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/libm.optimized.wat b/tests/compiler/std/libm.optimized.wat index 5ef20316b1..f8dd8b6420 100644 --- a/tests/compiler/std/libm.optimized.wat +++ b/tests/compiler/std/libm.optimized.wat @@ -1631,7 +1631,7 @@ (local $10 i64) (local $11 i64) (local $12 f64) - i32.const 236 + i32.const 232 i32.load local.get $0 i64.const 9223372036854775807 @@ -6598,7 +6598,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.0 end - i32.const 316 + i32.const 312 i32.load local.get $2 i32.const 23 @@ -8685,7 +8685,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.1 end - i32.const 316 + i32.const 312 i32.load local.get $2 i32.const 23 @@ -9049,7 +9049,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.2 end - i32.const 316 + i32.const 312 i32.load local.get $2 i32.const 23 diff --git a/tests/compiler/std/libm.untouched.wat b/tests/compiler/std/libm.untouched.wat index 7468136d4d..3461c42740 100644 --- a/tests/compiler/std/libm.untouched.wat +++ b/tests/compiler/std/libm.untouched.wat @@ -2032,7 +2032,7 @@ (local $36 i64) (local $37 f64) i32.const 232 - i32.load offset=4 + i32.load local.set $2 local.get $1 i64.const 9223372036854775807 @@ -8683,7 +8683,7 @@ local.get $9 local.set $11 i32.const 312 - i32.load offset=4 + i32.load local.set $13 local.get $11 i32.const 23 @@ -11483,7 +11483,7 @@ local.get $9 local.set $11 i32.const 312 - i32.load offset=4 + i32.load local.set $13 local.get $11 i32.const 23 @@ -12261,7 +12261,7 @@ local.get $11 local.set $13 i32.const 312 - i32.load offset=4 + i32.load local.set $15 local.get $13 i32.const 23 diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 489b187dde..25f9279871 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -1609,7 +1609,7 @@ if i32.const 176 i32.const 224 - i32.const 52 + i32.const 54 i32.const 42 call $~lib/builtins/abort unreachable @@ -8716,7 +8716,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/std/map.untouched.wat b/tests/compiler/std/map.untouched.wat index cacf158efc..537025f96f 100644 --- a/tests/compiler/std/map.untouched.wat +++ b/tests/compiler/std/map.untouched.wat @@ -2042,7 +2042,7 @@ if i32.const 176 i32.const 224 - i32.const 52 + i32.const 54 i32.const 42 call $~lib/builtins/abort unreachable @@ -12658,7 +12658,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index 1db2fd3da5..71f7749bc5 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -3347,7 +3347,7 @@ (local $10 i64) (local $11 i64) (local $12 f64) - i32.const 276 + i32.const 272 i32.load local.get $0 i64.const 9223372036854775807 @@ -4079,7 +4079,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.0 end - i32.const 356 + i32.const 352 i32.load local.get $2 i32.const 23 @@ -9777,7 +9777,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.1 end - i32.const 356 + i32.const 352 i32.load local.get $2 i32.const 23 @@ -10636,7 +10636,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.2 end - i32.const 356 + i32.const 352 i32.load local.get $2 i32.const 23 diff --git a/tests/compiler/std/math.untouched.wat b/tests/compiler/std/math.untouched.wat index c0cfb234a3..31c7b87c68 100644 --- a/tests/compiler/std/math.untouched.wat +++ b/tests/compiler/std/math.untouched.wat @@ -4112,7 +4112,7 @@ (local $36 i64) (local $37 f64) i32.const 272 - i32.load offset=4 + i32.load local.set $2 local.get $1 i64.const 9223372036854775807 @@ -5432,7 +5432,7 @@ local.get $9 local.set $11 i32.const 352 - i32.load offset=4 + i32.load local.set $13 local.get $11 i32.const 23 @@ -12838,7 +12838,7 @@ local.get $9 local.set $11 i32.const 352 - i32.load offset=4 + i32.load local.set $13 local.get $11 i32.const 23 @@ -14326,7 +14326,7 @@ local.get $11 local.set $13 i32.const 352 - i32.load offset=4 + i32.load local.set $15 local.get $13 i32.const 23 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index f484a5aba8..080bec737f 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -1604,7 +1604,7 @@ if i32.const 176 i32.const 224 - i32.const 52 + i32.const 54 i32.const 42 call $~lib/builtins/abort unreachable @@ -7611,7 +7611,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/std/set.untouched.wat b/tests/compiler/std/set.untouched.wat index 894782324b..57ddbd4c5b 100644 --- a/tests/compiler/std/set.untouched.wat +++ b/tests/compiler/std/set.untouched.wat @@ -2040,7 +2040,7 @@ if i32.const 176 i32.const 224 - i32.const 52 + i32.const 54 i32.const 42 call $~lib/builtins/abort unreachable @@ -11370,7 +11370,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index 423beb38d5..581a7ad81c 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -42,7 +42,7 @@ call $~lib/builtins/abort unreachable end - i32.const 52 + i32.const 48 i32.load local.get $0 i32.const 2 @@ -668,7 +668,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $4 i32.const 1 local.get $1 @@ -688,10 +688,10 @@ if local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store end local.get $0 local.get $3 @@ -702,7 +702,7 @@ i32.const 48 i32.const 2 call $~lib/array/ensureSize - i32.const 52 + i32.const 48 i32.load i32.const 2 i32.store @@ -729,7 +729,7 @@ call $~lib/builtins/abort unreachable end - i32.const 116 + i32.const 112 i32.load local.get $0 i32.const 3 @@ -741,7 +741,7 @@ i32.const 112 i32.const 3 call $~lib/array/ensureSize - i32.const 116 + i32.const 112 i32.load i64.const 4 i64.store @@ -768,7 +768,7 @@ call $~lib/builtins/abort unreachable end - i32.const 172 + i32.const 168 i32.load local.get $0 i32.const 2 @@ -780,7 +780,7 @@ i32.const 168 i32.const 2 call $~lib/array/ensureSize - i32.const 172 + i32.const 168 i32.load f32.const 2.5 f32.store @@ -807,7 +807,7 @@ call $~lib/builtins/abort unreachable end - i32.const 236 + i32.const 232 i32.load local.get $0 i32.const 3 @@ -819,7 +819,7 @@ i32.const 232 i32.const 3 call $~lib/array/ensureSize - i32.const 236 + i32.const 232 i32.load f64.const 2.25 f64.store diff --git a/tests/compiler/std/static-array.untouched.wat b/tests/compiler/std/static-array.untouched.wat index f56218cec2..d448aa76a5 100644 --- a/tests/compiler/std/static-array.untouched.wat +++ b/tests/compiler/std/static-array.untouched.wat @@ -44,7 +44,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 2 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -1865,7 +1865,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.set $4 local.get $1 local.get $2 @@ -1890,10 +1890,10 @@ local.get $0 local.get $6 call $~lib/rt/stub/__retain - i32.store + i32.store offset=4 local.get $0 local.get $6 - i32.store offset=4 + i32.store end local.get $0 local.get $5 @@ -1902,7 +1902,7 @@ ) (func $~lib/array/Array#__unchecked_set (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -1939,7 +1939,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 15 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -1968,7 +1968,7 @@ ) (func $~lib/array/Array#__unchecked_set (; 17 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -2005,7 +2005,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 20 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -2034,7 +2034,7 @@ ) (func $~lib/array/Array#__unchecked_set (; 22 ;) (type $FUNCSIG$viif) (param $0 i32) (param $1 i32) (param $2 f32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -2071,7 +2071,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 25 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -2100,7 +2100,7 @@ ) (func $~lib/array/Array#__unchecked_set (; 27 ;) (type $FUNCSIG$viid) (param $0 i32) (param $1 i32) (param $2 f64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index 54ac4558aa..ef6cf43c35 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -3864,7 +3864,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/std/string-encoding.untouched.wat b/tests/compiler/std/string-encoding.untouched.wat index eb9da63f99..aabb8d9f5e 100644 --- a/tests/compiler/std/string-encoding.untouched.wat +++ b/tests/compiler/std/string-encoding.untouched.wat @@ -5597,7 +5597,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 5685cc085a..61a38a5045 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -3715,7 +3715,7 @@ i64.const 0 ) (func $~lib/util/string/pow10 (; 52 ;) (type $FUNCSIG$di) (param $0 i32) (result f64) - i32.const 1796 + i32.const 1792 i32.load local.get $0 i32.const 5 @@ -3724,7 +3724,7 @@ i32.shl i32.add f64.load - i32.const 2100 + i32.const 2096 i32.load local.get $0 i32.const 31 @@ -5650,10 +5650,10 @@ call $~lib/rt/tlsf/__alloc local.tee $3 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $3 - i32.store offset=4 + i32.store local.get $1 local.get $2 i32.store offset=8 @@ -5895,7 +5895,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $4 local.get $1 i32.const 2 @@ -5916,10 +5916,10 @@ local.get $0 local.get $1 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store end local.get $0 local.get $3 @@ -5941,7 +5941,7 @@ local.tee $3 call $~lib/array/ensureSize local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -5980,7 +5980,7 @@ i32.const 1 call $~lib/rt/__allocArray local.tee $2 - i32.load offset=4 + i32.load local.get $0 call $~lib/rt/pure/__retain i32.store @@ -6010,7 +6010,7 @@ i32.const 1 call $~lib/rt/__allocArray local.tee $0 - i32.load offset=4 + i32.load i32.const 120 i32.store local.get $0 @@ -6033,7 +6033,7 @@ local.tee $5 call $~lib/rt/__allocArray local.tee $4 - i32.load offset=4 + i32.load local.set $6 i32.const 0 local.set $2 @@ -6207,7 +6207,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -6597,7 +6597,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 13788 + i32.const 13784 i32.load local.set $13 loop $continue|0 @@ -7324,7 +7324,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 13476 + i32.const 13472 i32.load local.get $3 i32.const 3 @@ -7332,7 +7332,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 13700 + i32.const 13696 i32.load local.get $3 i32.const 1 @@ -14629,7 +14629,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.load offset=4 + i32.load local.tee $2 local.get $0 i32.load offset=12 @@ -14679,7 +14679,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/std/string.untouched.wat b/tests/compiler/std/string.untouched.wat index 40d61571fe..aa819075b4 100644 --- a/tests/compiler/std/string.untouched.wat +++ b/tests/compiler/std/string.untouched.wat @@ -5725,10 +5725,10 @@ (local $1 i32) (local $2 i32) i32.const 1792 - i32.load offset=4 + i32.load local.set $1 i32.const 2096 - i32.load offset=4 + i32.load local.set $2 local.get $1 local.get $0 @@ -8201,10 +8201,10 @@ local.get $4 local.get $6 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $4 local.get $6 - i32.store offset=4 + i32.store local.get $4 local.get $5 i32.store offset=8 @@ -8512,7 +8512,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.set $4 local.get $1 local.get $2 @@ -8537,10 +8537,10 @@ local.get $0 local.get $6 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $0 local.get $6 - i32.store offset=4 + i32.store end local.get $0 local.get $5 @@ -8566,7 +8566,7 @@ i32.const 2 call $~lib/array/ensureSize local.get $0 - i32.load offset=4 + i32.load local.get $2 i32.const 2 i32.shl @@ -8624,7 +8624,7 @@ call $~lib/rt/__allocArray local.set $3 local.get $3 - i32.load offset=4 + i32.load local.set $4 local.get $4 local.get $0 @@ -8685,7 +8685,7 @@ call $~lib/rt/__allocArray local.set $4 local.get $4 - i32.load offset=4 + i32.load local.set $3 block $break|0 i32.const 0 @@ -8744,7 +8744,7 @@ call $~lib/rt/__allocArray local.set $3 local.get $3 - i32.load offset=4 + i32.load i32.const 120 i32.store local.get $3 @@ -8896,7 +8896,7 @@ ) (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 82 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -9011,7 +9011,7 @@ (local $8 i64) (local $9 i64) i32.const 11584 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 @@ -9320,7 +9320,7 @@ (local $12 i64) (local $13 i64) i32.const 11584 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 @@ -9595,7 +9595,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 93 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -9604,7 +9604,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 94 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -9667,7 +9667,7 @@ local.get $6 local.set $15 i32.const 14232 - i32.load offset=4 + i32.load local.set $16 block $break|0 loop $continue|0 @@ -18326,7 +18326,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $2 local.get $0 @@ -18427,7 +18427,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index 6e0754e1f8..57c1ca5295 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -369,7 +369,7 @@ if i32.const 96 i32.const 144 - i32.const 52 + i32.const 54 i32.const 42 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/symbol.untouched.wat b/tests/compiler/std/symbol.untouched.wat index c732d2afa0..9c94ecc455 100644 --- a/tests/compiler/std/symbol.untouched.wat +++ b/tests/compiler/std/symbol.untouched.wat @@ -467,7 +467,7 @@ if i32.const 96 i32.const 144 - i32.const 52 + i32.const 54 i32.const 42 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index c49a7575c2..65001de3ee 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -2107,7 +2107,7 @@ if i32.const 24 i32.const 72 - i32.const 22 + i32.const 24 i32.const 56 call $~lib/builtins/abort unreachable @@ -2141,7 +2141,7 @@ i32.const 0 i32.store offset=8 local.get $0 - i32.load + i32.load offset=4 local.tee $3 local.get $1 i32.ne @@ -2154,10 +2154,10 @@ end local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 local.get $2 i32.store offset=8 @@ -2173,10 +2173,10 @@ call $~lib/arraybuffer/ArrayBufferView#constructor ) (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 33 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=4 local.get $0 i32.load + local.get $0 + i32.load offset=4 i32.sub ) (func $~lib/typedarray/Uint8Array#constructor (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) @@ -2750,7 +2750,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -2774,7 +2774,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -2838,17 +2838,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $4 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $4 - i32.load offset=4 + i32.load local.get $0 i32.const 2 i32.shl i32.add - i32.store offset=4 + i32.store local.get $2 local.get $1 local.get $0 @@ -2882,7 +2882,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -2947,17 +2947,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $4 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $4 - i32.load offset=4 + i32.load local.get $0 i32.const 3 i32.shl i32.add - i32.store offset=4 + i32.store local.get $2 local.get $1 local.get $0 @@ -3337,7 +3337,7 @@ br $~lib/typedarray/SORT<~lib/typedarray/Float64Array,f64>|inlined.0 end local.get $0 - i32.load offset=4 + i32.load local.set $2 local.get $3 i32.const 2 @@ -3431,7 +3431,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -3452,7 +3452,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.const 255 @@ -3484,7 +3484,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_u @@ -3503,7 +3503,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -3516,7 +3516,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $5 - i32.load offset=4 + i32.load local.set $6 local.get $5 i32.load offset=8 @@ -3592,10 +3592,10 @@ call $~lib/rt/tlsf/__alloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $4 - i32.store offset=4 + i32.store local.get $2 local.get $1 i32.store offset=8 @@ -3625,7 +3625,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_s @@ -3644,7 +3644,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_s @@ -3758,15 +3758,15 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $4 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $4 - i32.load offset=4 + i32.load local.get $0 i32.add - i32.store offset=4 + i32.store local.get $2 local.get $1 local.get $0 @@ -3791,7 +3791,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $4 - i32.load offset=4 + i32.load local.set $6 local.get $4 call $~lib/typedarray/Int32Array#get:length @@ -3876,7 +3876,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -3999,9 +3999,9 @@ local.tee $2 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.get $4 - i32.load offset=4 + i32.load local.get $0 i32.const 2 i32.shl @@ -4032,7 +4032,7 @@ select local.set $3 local.get $5 - i32.load offset=4 + i32.load local.tee $6 local.get $1 i32.const 0 @@ -4140,7 +4140,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -4226,7 +4226,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -4240,7 +4240,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $4 i32.const 0 local.set $0 @@ -4369,7 +4369,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -4385,7 +4385,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -4475,7 +4475,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -4491,7 +4491,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -4573,7 +4573,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.set $4 i32.const 0 local.set $0 @@ -4663,7 +4663,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -4724,7 +4724,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -4750,7 +4750,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.set $4 i32.const 0 local.set $0 @@ -4840,7 +4840,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -4901,7 +4901,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -4927,7 +4927,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -5017,7 +5017,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -5096,7 +5096,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load offset=4 + i32.load local.set $3 local.get $1 i32.load offset=8 @@ -5175,7 +5175,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $4 local.get $2 i32.load offset=8 @@ -5295,7 +5295,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 local.get $2 call $~lib/typedarray/Int16Array#get:length @@ -5376,7 +5376,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 local.get $2 call $~lib/typedarray/Int16Array#get:length @@ -5457,7 +5457,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.set $4 local.get $3 call $~lib/typedarray/Int32Array#get:length @@ -5575,7 +5575,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.set $4 local.get $3 call $~lib/typedarray/Int64Array#get:length @@ -5693,7 +5693,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 local.get $2 call $~lib/typedarray/Int32Array#get:length @@ -5772,7 +5772,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 local.get $2 call $~lib/typedarray/Int64Array#get:length @@ -5866,7 +5866,7 @@ i32.load offset=8 local.set $0 local.get $3 - i32.load offset=4 + i32.load local.set $5 i32.const 12 i32.const 3 @@ -5904,10 +5904,10 @@ local.get $2 local.get $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $4 - i32.store offset=4 + i32.store local.get $2 local.get $0 i32.store offset=8 @@ -5996,7 +5996,7 @@ i32.load offset=8 local.set $0 local.get $3 - i32.load offset=4 + i32.load local.set $5 i32.const 12 i32.const 4 @@ -6034,10 +6034,10 @@ local.get $2 local.get $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $4 - i32.store offset=4 + i32.store local.get $2 local.get $0 i32.store offset=8 @@ -6060,7 +6060,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_u @@ -6145,7 +6145,7 @@ i32.load offset=8 local.set $0 local.get $3 - i32.load offset=4 + i32.load local.set $5 i32.const 12 i32.const 5 @@ -6183,10 +6183,10 @@ local.get $2 local.get $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $4 - i32.store offset=4 + i32.store local.get $2 local.get $0 i32.store offset=8 @@ -6278,7 +6278,7 @@ call $~lib/typedarray/Int16Array#get:length local.set $4 local.get $2 - i32.load offset=4 + i32.load local.set $5 i32.const 12 i32.const 6 @@ -6326,10 +6326,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $3 - i32.store offset=4 + i32.store local.get $1 local.get $6 i32.store offset=8 @@ -6354,7 +6354,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -6444,7 +6444,7 @@ call $~lib/typedarray/Int16Array#get:length local.set $4 local.get $2 - i32.load offset=4 + i32.load local.set $5 i32.const 12 i32.const 7 @@ -6492,10 +6492,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $3 - i32.store offset=4 + i32.store local.get $1 local.get $6 i32.store offset=8 @@ -6520,7 +6520,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -6610,7 +6610,7 @@ call $~lib/typedarray/Int32Array#get:length local.set $4 local.get $2 - i32.load offset=4 + i32.load local.set $5 i32.const 12 i32.const 8 @@ -6658,10 +6658,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $3 - i32.store offset=4 + i32.store local.get $1 local.get $6 i32.store offset=8 @@ -6753,7 +6753,7 @@ call $~lib/typedarray/Int32Array#get:length local.set $4 local.get $2 - i32.load offset=4 + i32.load local.set $5 i32.const 12 i32.const 9 @@ -6801,10 +6801,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $3 - i32.store offset=4 + i32.store local.get $1 local.get $6 i32.store offset=8 @@ -6829,7 +6829,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -6929,7 +6929,7 @@ call $~lib/typedarray/Int64Array#get:length local.set $4 local.get $2 - i32.load offset=4 + i32.load local.set $5 i32.const 12 i32.const 10 @@ -6977,10 +6977,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $3 - i32.store offset=4 + i32.store local.get $1 local.get $6 i32.store offset=8 @@ -7005,7 +7005,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -7095,7 +7095,7 @@ call $~lib/typedarray/Int64Array#get:length local.set $4 local.get $2 - i32.load offset=4 + i32.load local.set $5 i32.const 12 i32.const 11 @@ -7143,10 +7143,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $3 - i32.store offset=4 + i32.store local.get $1 local.get $6 i32.store offset=8 @@ -7171,7 +7171,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -7271,7 +7271,7 @@ call $~lib/typedarray/Int32Array#get:length local.set $4 local.get $2 - i32.load offset=4 + i32.load local.set $5 i32.const 12 i32.const 12 @@ -7319,10 +7319,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $3 - i32.store offset=4 + i32.store local.get $1 local.get $6 i32.store offset=8 @@ -7347,7 +7347,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -7447,7 +7447,7 @@ call $~lib/typedarray/Int64Array#get:length local.set $4 local.get $2 - i32.load offset=4 + i32.load local.set $5 i32.const 12 i32.const 13 @@ -7495,10 +7495,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $3 - i32.store offset=4 + i32.store local.get $1 local.get $6 i32.store offset=8 @@ -7770,7 +7770,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $8 i32.const 0 local.set $0 @@ -7815,13 +7815,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store offset=4 + i32.store local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -7960,7 +7960,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $8 i32.const 0 local.set $0 @@ -8005,13 +8005,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store offset=4 + i32.store local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -8138,7 +8138,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $8 i32.const 0 local.set $0 @@ -8183,13 +8183,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store offset=4 + i32.store local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -8332,7 +8332,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $8 i32.const 0 local.set $0 @@ -8384,13 +8384,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store offset=4 + i32.store local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -8531,7 +8531,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $8 i32.const 0 local.set $0 @@ -8583,13 +8583,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store offset=4 + i32.store local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -8728,7 +8728,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $8 i32.const 0 local.set $0 @@ -8780,13 +8780,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store offset=4 + i32.store local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -8925,7 +8925,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $8 i32.const 0 local.set $0 @@ -8977,13 +8977,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store offset=4 + i32.store local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -9122,7 +9122,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $8 i32.const 0 local.set $0 @@ -9174,13 +9174,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store offset=4 + i32.store local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -9319,7 +9319,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $8 i32.const 0 local.set $0 @@ -9371,13 +9371,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store offset=4 + i32.store local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -9516,7 +9516,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $8 i32.const 0 local.set $0 @@ -9568,13 +9568,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store offset=4 + i32.store local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -9713,7 +9713,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $8 i32.const 0 local.set $0 @@ -9765,13 +9765,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store offset=4 + i32.store local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -9895,7 +9895,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -10003,7 +10003,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -10159,7 +10159,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -10270,7 +10270,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -10380,7 +10380,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -10546,7 +10546,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -10713,7 +10713,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -10833,7 +10833,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -10942,7 +10942,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -11055,7 +11055,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -11206,7 +11206,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -11322,7 +11322,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -11426,7 +11426,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -11590,7 +11590,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -11754,7 +11754,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -11868,7 +11868,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -11998,7 +11998,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -12106,7 +12106,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -12265,7 +12265,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -12364,7 +12364,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -12474,7 +12474,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -12632,7 +12632,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -12950,7 +12950,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -13223,7 +13223,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -13371,7 +13371,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load offset=4 + i32.load local.set $2 i32.const 0 local.set $0 @@ -13468,7 +13468,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -13665,7 +13665,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load offset=4 + i32.load local.set $2 i32.const 0 local.set $0 @@ -13764,7 +13764,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load offset=4 + i32.load local.set $2 i32.const 0 local.set $0 @@ -13903,7 +13903,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -14088,7 +14088,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load offset=4 + i32.load local.set $3 i32.const 0 local.set $0 @@ -14279,7 +14279,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load offset=4 + i32.load local.set $2 i32.const 0 local.set $0 @@ -14416,7 +14416,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load offset=4 + i32.load local.set $2 i32.const 0 local.set $0 @@ -14508,7 +14508,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.set $4 i32.const 0 local.set $0 @@ -14729,7 +14729,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.set $4 i32.const 0 local.set $0 @@ -14813,15 +14813,15 @@ call $~lib/rt/tlsf/__alloc local.tee $1 local.get $3 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $3 - i32.load offset=4 + i32.load local.get $2 i32.add - i32.store offset=4 + i32.store local.get $1 local.get $0 local.get $2 @@ -15040,15 +15040,15 @@ call $~lib/rt/tlsf/__alloc local.tee $1 local.get $3 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $1 local.get $3 - i32.load offset=4 + i32.load local.get $2 i32.add - i32.store offset=4 + i32.store local.get $1 local.get $0 local.get $2 @@ -15235,7 +15235,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.set $4 i32.const 0 local.set $0 @@ -15324,17 +15324,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $3 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $3 - i32.load offset=4 + i32.load local.get $0 i32.const 1 i32.shl i32.add - i32.store offset=4 + i32.store local.get $2 local.get $1 local.get $0 @@ -15529,7 +15529,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.set $4 i32.const 0 local.set $0 @@ -15618,17 +15618,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $3 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $3 - i32.load offset=4 + i32.load local.get $0 i32.const 1 i32.shl i32.add - i32.store offset=4 + i32.store local.get $2 local.get $1 local.get $0 @@ -15817,7 +15817,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.set $4 i32.const 0 local.set $0 @@ -16063,17 +16063,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $3 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $3 - i32.load offset=4 + i32.load local.get $0 i32.const 2 i32.shl i32.add - i32.store offset=4 + i32.store local.get $2 local.get $1 local.get $0 @@ -16256,7 +16256,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.set $4 i32.const 0 local.set $0 @@ -16345,17 +16345,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $3 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $3 - i32.load offset=4 + i32.load local.get $0 i32.const 3 i32.shl i32.add - i32.store offset=4 + i32.store local.get $2 local.get $1 local.get $0 @@ -16573,17 +16573,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $3 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $3 - i32.load offset=4 + i32.load local.get $0 i32.const 3 i32.shl i32.add - i32.store offset=4 + i32.store local.get $2 local.get $1 local.get $0 @@ -16769,7 +16769,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.set $4 i32.const 0 local.set $0 @@ -16858,17 +16858,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $3 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $2 local.get $3 - i32.load offset=4 + i32.load local.get $0 i32.const 2 i32.shl i32.add - i32.store offset=4 + i32.store local.get $2 local.get $1 local.get $0 @@ -17054,7 +17054,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load offset=4 + i32.load local.set $4 i32.const 0 local.set $0 @@ -17301,7 +17301,7 @@ local.set $2 end local.get $0 - i32.load offset=4 + i32.load local.set $4 loop $continue|0 local.get $2 @@ -17370,7 +17370,7 @@ select local.set $2 local.get $0 - i32.load offset=4 + i32.load local.set $3 loop $continue|0 local.get $2 @@ -18744,7 +18744,7 @@ local.set $2 end local.get $0 - i32.load offset=4 + i32.load local.set $4 loop $continue|0 local.get $2 @@ -18815,7 +18815,7 @@ select local.set $2 local.get $0 - i32.load offset=4 + i32.load local.set $3 loop $continue|0 local.get $2 @@ -19765,7 +19765,7 @@ local.set $2 end local.get $0 - i32.load offset=4 + i32.load local.set $4 loop $continue|0 local.get $2 @@ -19834,7 +19834,7 @@ select local.set $2 local.get $0 - i32.load offset=4 + i32.load local.set $3 loop $continue|0 local.get $2 @@ -20777,7 +20777,7 @@ local.set $2 end local.get $0 - i32.load offset=4 + i32.load local.set $4 loop $continue|0 local.get $2 @@ -20846,7 +20846,7 @@ select local.set $2 local.get $0 - i32.load offset=4 + i32.load local.set $3 loop $continue|0 local.get $2 @@ -21790,7 +21790,7 @@ local.set $2 end local.get $0 - i32.load offset=4 + i32.load local.set $4 loop $continue|0 local.get $2 @@ -21859,7 +21859,7 @@ select local.set $2 local.get $0 - i32.load offset=4 + i32.load local.set $3 loop $continue|0 local.get $2 @@ -22379,7 +22379,7 @@ local.set $2 end local.get $0 - i32.load offset=4 + i32.load local.set $4 loop $continue|0 local.get $2 @@ -22448,7 +22448,7 @@ select local.set $2 local.get $0 - i32.load offset=4 + i32.load local.set $3 loop $continue|0 local.get $2 @@ -23312,7 +23312,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 i32.load offset=8 call $~lib/util/string/joinIntegerArray @@ -23667,7 +23667,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 i32.load offset=8 call $~lib/util/string/joinIntegerArray @@ -23991,7 +23991,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Int16Array#get:length call $~lib/util/string/joinIntegerArray @@ -24223,7 +24223,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Int16Array#get:length call $~lib/util/string/joinIntegerArray @@ -24467,7 +24467,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Int32Array#get:length call $~lib/util/string/joinIntegerArray @@ -24693,7 +24693,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Int32Array#get:length call $~lib/util/string/joinIntegerArray @@ -25104,7 +25104,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Int64Array#get:length call $~lib/util/string/joinIntegerArray @@ -25390,7 +25390,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Int64Array#get:length call $~lib/util/string/joinIntegerArray @@ -25506,7 +25506,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 2956 + i32.const 2952 i32.load local.set $13 loop $continue|0 @@ -26233,7 +26233,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 2644 + i32.const 2640 i32.load local.get $3 i32.const 3 @@ -26241,7 +26241,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 2868 + i32.const 2864 i32.load local.get $3 i32.const 1 @@ -26655,7 +26655,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Int32Array#get:length call $~lib/util/string/joinFloatArray @@ -26857,7 +26857,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Int64Array#get:length call $~lib/util/string/joinFloatArray @@ -27084,13 +27084,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store offset=4 + i32.store local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -27138,7 +27138,7 @@ end end local.get $1 - i32.load + i32.load offset=4 local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -27277,13 +27277,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store offset=4 + i32.store local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -27329,7 +27329,7 @@ end end local.get $1 - i32.load + i32.load offset=4 local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -27468,13 +27468,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store offset=4 + i32.store local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -27520,7 +27520,7 @@ end end local.get $1 - i32.load + i32.load offset=4 local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -27662,13 +27662,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store offset=4 + i32.store local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -27716,7 +27716,7 @@ end end local.get $1 - i32.load + i32.load offset=4 local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -27858,13 +27858,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store offset=4 + i32.store local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -27910,7 +27910,7 @@ end end local.get $1 - i32.load + i32.load offset=4 local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -28052,13 +28052,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store offset=4 + i32.store local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -28102,7 +28102,7 @@ end end local.get $1 - i32.load + i32.load offset=4 local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -28244,13 +28244,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store offset=4 + i32.store local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -28294,7 +28294,7 @@ end end local.get $1 - i32.load + i32.load offset=4 local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -28436,13 +28436,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store offset=4 + i32.store local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -28487,7 +28487,7 @@ end end local.get $1 - i32.load + i32.load offset=4 local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -28629,13 +28629,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store offset=4 + i32.store local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -28680,7 +28680,7 @@ end end local.get $1 - i32.load + i32.load offset=4 local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -28822,13 +28822,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store offset=4 + i32.store local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -28873,7 +28873,7 @@ end end local.get $1 - i32.load + i32.load offset=4 local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -29015,13 +29015,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store offset=4 + i32.store local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -29066,7 +29066,7 @@ end end local.get $1 - i32.load + i32.load offset=4 local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -31090,7 +31090,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $0 if local.get $0 diff --git a/tests/compiler/std/typedarray.untouched.wat b/tests/compiler/std/typedarray.untouched.wat index f4a7a3b872..8a5af66323 100644 --- a/tests/compiler/std/typedarray.untouched.wat +++ b/tests/compiler/std/typedarray.untouched.wat @@ -3659,7 +3659,7 @@ if i32.const 24 i32.const 72 - i32.const 22 + i32.const 24 i32.const 56 call $~lib/builtins/abort unreachable @@ -3698,7 +3698,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load + i32.load offset=4 local.tee $4 i32.ne if @@ -3709,10 +3709,10 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store + i32.store offset=4 local.get $0 local.get $3 - i32.store offset=4 + i32.store local.get $0 local.get $1 i32.store offset=8 @@ -3735,10 +3735,10 @@ local.get $0 ) (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load offset=4 local.get $0 i32.load + local.get $0 + i32.load offset=4 i32.sub ) (func $~lib/typedarray/Int8Array#get:length (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) @@ -4507,7 +4507,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -4531,7 +4531,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -4620,17 +4620,17 @@ local.set $7 local.get $7 local.get $5 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $5 - i32.load offset=4 + i32.load local.get $4 i32.const 2 i32.shl i32.add - i32.store offset=4 + i32.store local.get $7 local.get $3 local.get $4 @@ -4661,7 +4661,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -4751,17 +4751,17 @@ local.set $7 local.get $7 local.get $5 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $5 - i32.load offset=4 + i32.load local.get $4 i32.const 3 i32.shl i32.add - i32.store offset=4 + i32.store local.get $7 local.get $3 local.get $4 @@ -5187,7 +5187,7 @@ br $~lib/typedarray/SORT<~lib/typedarray/Float64Array,f64>|inlined.0 end local.get $3 - i32.load offset=4 + i32.load local.set $5 local.get $4 i32.const 2 @@ -5313,7 +5313,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -5334,7 +5334,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -5366,7 +5366,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_u @@ -5385,7 +5385,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -5410,7 +5410,7 @@ local.get $3 local.set $4 local.get $7 - i32.load offset=4 + i32.load local.set $8 local.get $7 call $~lib/typedarray/Int8Array#get:length @@ -5499,10 +5499,10 @@ local.get $4 local.get $6 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $4 local.get $6 - i32.store offset=4 + i32.store local.get $4 local.get $5 i32.store offset=8 @@ -5536,14 +5536,14 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_s ) (func $~lib/array/Array#__unchecked_get (; 75 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 0 i32.shl @@ -5722,17 +5722,17 @@ local.set $7 local.get $7 local.get $5 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $5 - i32.load offset=4 + i32.load local.get $4 i32.const 0 i32.shl i32.add - i32.store offset=4 + i32.store local.get $7 local.get $3 local.get $4 @@ -5766,7 +5766,7 @@ local.get $3 local.set $4 local.get $7 - i32.load offset=4 + i32.load local.set $8 local.get $7 call $~lib/typedarray/Int32Array#get:length @@ -5851,7 +5851,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 81 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -6034,9 +6034,9 @@ call $~lib/rt/pure/__retain local.set $8 local.get $8 - i32.load offset=4 + i32.load local.get $5 - i32.load offset=4 + i32.load local.get $4 i32.const 2 i32.shl @@ -6078,7 +6078,7 @@ call $~lib/typedarray/Int32Array#get:length local.set $8 local.get $7 - i32.load offset=4 + i32.load local.set $9 local.get $4 local.tee $10 @@ -6221,7 +6221,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 i32.const 0 @@ -6325,7 +6325,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add local.get $2 @@ -6359,7 +6359,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 i32.const 0 @@ -6475,7 +6475,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 i32.const 0 @@ -6579,7 +6579,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -6615,7 +6615,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 i32.const 0 @@ -6721,7 +6721,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -6757,7 +6757,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 i32.const 0 @@ -6873,7 +6873,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 i32.const 0 @@ -6975,7 +6975,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -7011,7 +7011,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 i32.const 0 @@ -7113,7 +7113,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -7150,7 +7150,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 i32.const 0 @@ -7252,7 +7252,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -7289,7 +7289,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 i32.const 0 @@ -7391,7 +7391,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -7428,7 +7428,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 i32.const 0 @@ -7543,7 +7543,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 i32.const 0 @@ -7656,7 +7656,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 local.get $5 @@ -7773,7 +7773,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 local.get $5 @@ -7888,7 +7888,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 local.get $5 @@ -8003,7 +8003,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 local.get $5 @@ -8120,7 +8120,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 local.get $5 @@ -8235,7 +8235,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 local.get $5 @@ -8348,7 +8348,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 local.get $5 @@ -8462,7 +8462,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 local.get $5 @@ -8576,7 +8576,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 local.get $5 @@ -8690,7 +8690,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 local.get $5 @@ -8804,7 +8804,7 @@ local.get $2 local.set $3 local.get $5 - i32.load offset=4 + i32.load local.set $6 block $break|0 local.get $5 @@ -8921,7 +8921,7 @@ call $~lib/typedarray/Int8Array#get:length local.set $4 local.get $3 - i32.load offset=4 + i32.load local.set $5 local.get $4 i32.const 0 @@ -8973,10 +8973,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $8 - i32.store offset=4 + i32.store local.get $7 local.get $6 i32.store offset=8 @@ -9093,7 +9093,7 @@ call $~lib/typedarray/Uint8Array#get:length local.set $4 local.get $3 - i32.load offset=4 + i32.load local.set $5 local.get $4 i32.const 0 @@ -9145,10 +9145,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $8 - i32.store offset=4 + i32.store local.get $7 local.get $6 i32.store offset=8 @@ -9173,7 +9173,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.add i32.load8_u @@ -9284,7 +9284,7 @@ call $~lib/typedarray/Uint8ClampedArray#get:length local.set $4 local.get $3 - i32.load offset=4 + i32.load local.set $5 local.get $4 i32.const 0 @@ -9336,10 +9336,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $8 - i32.store offset=4 + i32.store local.get $7 local.get $6 i32.store offset=8 @@ -9456,7 +9456,7 @@ call $~lib/typedarray/Int16Array#get:length local.set $4 local.get $3 - i32.load offset=4 + i32.load local.set $5 local.get $4 i32.const 1 @@ -9508,10 +9508,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $8 - i32.store offset=4 + i32.store local.get $7 local.get $6 i32.store offset=8 @@ -9538,7 +9538,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -9651,7 +9651,7 @@ call $~lib/typedarray/Uint16Array#get:length local.set $4 local.get $3 - i32.load offset=4 + i32.load local.set $5 local.get $4 i32.const 1 @@ -9703,10 +9703,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $8 - i32.store offset=4 + i32.store local.get $7 local.get $6 i32.store offset=8 @@ -9733,7 +9733,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -9846,7 +9846,7 @@ call $~lib/typedarray/Int32Array#get:length local.set $4 local.get $3 - i32.load offset=4 + i32.load local.set $5 local.get $4 i32.const 2 @@ -9898,10 +9898,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $8 - i32.store offset=4 + i32.store local.get $7 local.get $6 i32.store offset=8 @@ -10018,7 +10018,7 @@ call $~lib/typedarray/Uint32Array#get:length local.set $4 local.get $3 - i32.load offset=4 + i32.load local.set $5 local.get $4 i32.const 2 @@ -10070,10 +10070,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $8 - i32.store offset=4 + i32.store local.get $7 local.get $6 i32.store offset=8 @@ -10100,7 +10100,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -10213,7 +10213,7 @@ call $~lib/typedarray/Int64Array#get:length local.set $4 local.get $3 - i32.load offset=4 + i32.load local.set $5 local.get $4 i32.const 3 @@ -10265,10 +10265,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $8 - i32.store offset=4 + i32.store local.get $7 local.get $6 i32.store offset=8 @@ -10295,7 +10295,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -10408,7 +10408,7 @@ call $~lib/typedarray/Uint64Array#get:length local.set $4 local.get $3 - i32.load offset=4 + i32.load local.set $5 local.get $4 i32.const 3 @@ -10460,10 +10460,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $8 - i32.store offset=4 + i32.store local.get $7 local.get $6 i32.store offset=8 @@ -10490,7 +10490,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -10603,7 +10603,7 @@ call $~lib/typedarray/Float32Array#get:length local.set $4 local.get $3 - i32.load offset=4 + i32.load local.set $5 local.get $4 i32.const 2 @@ -10655,10 +10655,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $8 - i32.store offset=4 + i32.store local.get $7 local.get $6 i32.store offset=8 @@ -10685,7 +10685,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 2 i32.shl @@ -10798,7 +10798,7 @@ call $~lib/typedarray/Float64Array#get:length local.set $4 local.get $3 - i32.load offset=4 + i32.load local.set $5 local.get $4 i32.const 3 @@ -10850,10 +10850,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $8 - i32.store offset=4 + i32.store local.get $7 local.get $6 i32.store offset=8 @@ -11164,7 +11164,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $7 i32.const 0 local.set $8 @@ -11224,13 +11224,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store offset=4 + i32.store local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -11392,7 +11392,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $7 i32.const 0 local.set $8 @@ -11452,13 +11452,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store offset=4 + i32.store local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -11620,7 +11620,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $7 i32.const 0 local.set $8 @@ -11680,13 +11680,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store offset=4 + i32.store local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -11850,7 +11850,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $7 i32.const 0 local.set $8 @@ -11910,13 +11910,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store offset=4 + i32.store local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -12078,7 +12078,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $7 i32.const 0 local.set $8 @@ -12138,13 +12138,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store offset=4 + i32.store local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -12304,7 +12304,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $7 i32.const 0 local.set $8 @@ -12364,13 +12364,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store offset=4 + i32.store local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -12530,7 +12530,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $7 i32.const 0 local.set $8 @@ -12590,13 +12590,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store offset=4 + i32.store local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -12757,7 +12757,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $7 i32.const 0 local.set $8 @@ -12817,13 +12817,13 @@ local.get $5 local.get $11 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $5 local.get $9 i32.store offset=8 local.get $5 local.get $11 - i32.store offset=4 + i32.store local.get $5 call $~lib/rt/pure/__retain local.set $12 @@ -12984,7 +12984,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $7 i32.const 0 local.set $8 @@ -13044,13 +13044,13 @@ local.get $5 local.get $11 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $5 local.get $9 i32.store offset=8 local.get $5 local.get $11 - i32.store offset=4 + i32.store local.get $5 call $~lib/rt/pure/__retain local.set $12 @@ -13211,7 +13211,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $7 i32.const 0 local.set $8 @@ -13271,13 +13271,13 @@ local.get $5 local.get $11 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $5 local.get $9 i32.store offset=8 local.get $5 local.get $11 - i32.store offset=4 + i32.store local.get $5 call $~lib/rt/pure/__retain local.set $12 @@ -13438,7 +13438,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load offset=4 + i32.load local.set $7 i32.const 0 local.set $8 @@ -13498,13 +13498,13 @@ local.get $5 local.get $11 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $5 local.get $9 i32.store offset=8 local.get $5 local.get $11 - i32.store offset=4 + i32.store local.get $5 call $~lib/rt/pure/__retain local.set $12 @@ -13652,7 +13652,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -13808,7 +13808,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -13962,7 +13962,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -14118,7 +14118,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -14274,7 +14274,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -14426,7 +14426,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -14576,7 +14576,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -14726,7 +14726,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -14876,7 +14876,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -15026,7 +15026,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -15176,7 +15176,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -15330,7 +15330,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -15485,7 +15485,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -15638,7 +15638,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -15793,7 +15793,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -15948,7 +15948,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -16099,7 +16099,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -16248,7 +16248,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -16397,7 +16397,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -16546,7 +16546,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -16695,7 +16695,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -16844,7 +16844,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -16999,7 +16999,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -17160,7 +17160,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -17319,7 +17319,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -17480,7 +17480,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -17641,7 +17641,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -17798,7 +17798,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -17953,7 +17953,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -18108,7 +18108,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -18263,7 +18263,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -18670,7 +18670,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -19079,7 +19079,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -19277,7 +19277,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -19445,7 +19445,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -19607,7 +19607,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -19773,7 +19773,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -19941,7 +19941,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -20099,7 +20099,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -20251,7 +20251,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -20404,7 +20404,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -20560,7 +20560,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -20716,7 +20716,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -20872,7 +20872,7 @@ local.get $1 local.set $2 local.get $3 - i32.load offset=4 + i32.load local.set $4 block $break|0 i32.const 0 @@ -20975,7 +20975,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $2 block $break|0 i32.const 0 @@ -21225,7 +21225,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $2 block $break|0 i32.const 0 @@ -21359,17 +21359,17 @@ local.set $7 local.get $7 local.get $5 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $5 - i32.load offset=4 + i32.load local.get $4 i32.const 0 i32.shl i32.add - i32.store offset=4 + i32.store local.get $7 local.get $3 local.get $4 @@ -21576,7 +21576,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $2 block $break|0 i32.const 0 @@ -21710,17 +21710,17 @@ local.set $7 local.get $7 local.get $5 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $5 - i32.load offset=4 + i32.load local.get $4 i32.const 0 i32.shl i32.add - i32.store offset=4 + i32.store local.get $7 local.get $3 local.get $4 @@ -21927,7 +21927,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $2 block $break|0 i32.const 0 @@ -22061,17 +22061,17 @@ local.set $7 local.get $7 local.get $5 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $5 - i32.load offset=4 + i32.load local.get $4 i32.const 1 i32.shl i32.add - i32.store offset=4 + i32.store local.get $7 local.get $3 local.get $4 @@ -22284,7 +22284,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $2 block $break|0 i32.const 0 @@ -22418,17 +22418,17 @@ local.set $7 local.get $7 local.get $5 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $5 - i32.load offset=4 + i32.load local.get $4 i32.const 1 i32.shl i32.add - i32.store offset=4 + i32.store local.get $7 local.get $3 local.get $4 @@ -22635,7 +22635,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $2 block $break|0 i32.const 0 @@ -22873,7 +22873,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $2 block $break|0 i32.const 0 @@ -23007,17 +23007,17 @@ local.set $7 local.get $7 local.get $5 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $5 - i32.load offset=4 + i32.load local.get $4 i32.const 2 i32.shl i32.add - i32.store offset=4 + i32.store local.get $7 local.get $3 local.get $4 @@ -23218,7 +23218,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $2 block $break|0 i32.const 0 @@ -23352,17 +23352,17 @@ local.set $7 local.get $7 local.get $5 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $5 - i32.load offset=4 + i32.load local.get $4 i32.const 3 i32.shl i32.add - i32.store offset=4 + i32.store local.get $7 local.get $3 local.get $4 @@ -23566,7 +23566,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $2 block $break|0 i32.const 0 @@ -23700,17 +23700,17 @@ local.set $7 local.get $7 local.get $5 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $5 - i32.load offset=4 + i32.load local.get $4 i32.const 3 i32.shl i32.add - i32.store offset=4 + i32.store local.get $7 local.get $3 local.get $4 @@ -23914,7 +23914,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $2 block $break|0 i32.const 0 @@ -24048,17 +24048,17 @@ local.set $7 local.get $7 local.get $5 - i32.load + i32.load offset=4 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $7 local.get $5 - i32.load offset=4 + i32.load local.get $4 i32.const 2 i32.shl i32.add - i32.store offset=4 + i32.store local.get $7 local.get $3 local.get $4 @@ -24262,7 +24262,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load offset=4 + i32.load local.set $2 block $break|0 i32.const 0 @@ -24547,7 +24547,7 @@ local.set $6 end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -24643,7 +24643,7 @@ end end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -25236,7 +25236,7 @@ local.set $6 end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -25330,7 +25330,7 @@ end end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -25919,7 +25919,7 @@ local.set $6 end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -26013,7 +26013,7 @@ end end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -26602,7 +26602,7 @@ local.set $6 end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -26698,7 +26698,7 @@ end end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -27291,7 +27291,7 @@ local.set $6 end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -27385,7 +27385,7 @@ end end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -27974,7 +27974,7 @@ local.set $6 end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -28066,7 +28066,7 @@ end end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -28651,7 +28651,7 @@ local.set $6 end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -28743,7 +28743,7 @@ end end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -29328,7 +29328,7 @@ local.set $6 end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -29420,7 +29420,7 @@ end end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -30006,7 +30006,7 @@ local.set $6 end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -30098,7 +30098,7 @@ end end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -30684,7 +30684,7 @@ local.set $6 end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -30776,7 +30776,7 @@ end end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -31362,7 +31362,7 @@ local.set $6 end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -31454,7 +31454,7 @@ end end local.get $5 - i32.load offset=4 + i32.load local.set $8 block $break|0 loop $continue|0 @@ -32059,7 +32059,7 @@ (local $8 i64) (local $9 i64) i32.const 2160 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 @@ -32598,7 +32598,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Int8Array#get:length local.get $1 @@ -33059,7 +33059,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Uint8Array#get:length local.get $1 @@ -33149,7 +33149,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Uint8ClampedArray#get:length local.get $1 @@ -33469,7 +33469,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Int16Array#get:length local.get $1 @@ -33757,7 +33757,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Uint16Array#get:length local.get $1 @@ -34057,7 +34057,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Int32Array#get:length local.get $1 @@ -34337,7 +34337,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Uint32Array#get:length local.get $1 @@ -34507,7 +34507,7 @@ (local $12 i64) (local $13 i64) i32.const 2160 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 @@ -34950,7 +34950,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Int64Array#get:length local.get $1 @@ -35319,7 +35319,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Uint64Array#get:length local.get $1 @@ -35412,7 +35412,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 541 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 3 i32.shl @@ -35421,7 +35421,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 542 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load offset=4 + i32.load local.get $1 i32.const 1 i32.shl @@ -35484,7 +35484,7 @@ local.get $6 local.set $15 i32.const 3400 - i32.load offset=4 + i32.load local.set $16 block $break|0 loop $continue|0 @@ -36957,7 +36957,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Float32Array#get:length local.get $1 @@ -37195,7 +37195,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/typedarray/Float64Array#get:length local.get $1 @@ -37467,7 +37467,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $8 local.get $7 i32.store offset=8 @@ -37475,7 +37475,7 @@ local.get $5 local.get $4 i32.add - i32.store offset=4 + i32.store local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -37558,7 +37558,7 @@ unreachable end local.get $3 - i32.load + i32.load offset=4 local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -37724,7 +37724,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $8 local.get $7 i32.store offset=8 @@ -37732,7 +37732,7 @@ local.get $5 local.get $4 i32.add - i32.store offset=4 + i32.store local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -37813,7 +37813,7 @@ unreachable end local.get $3 - i32.load + i32.load offset=4 local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -37979,7 +37979,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $8 local.get $7 i32.store offset=8 @@ -37987,7 +37987,7 @@ local.get $5 local.get $4 i32.add - i32.store offset=4 + i32.store local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -38068,7 +38068,7 @@ unreachable end local.get $3 - i32.load + i32.load offset=4 local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -38234,7 +38234,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $8 local.get $7 i32.store offset=8 @@ -38242,7 +38242,7 @@ local.get $5 local.get $4 i32.add - i32.store offset=4 + i32.store local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -38325,7 +38325,7 @@ unreachable end local.get $3 - i32.load + i32.load offset=4 local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -38491,7 +38491,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $8 local.get $7 i32.store offset=8 @@ -38499,7 +38499,7 @@ local.get $5 local.get $4 i32.add - i32.store offset=4 + i32.store local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -38580,7 +38580,7 @@ unreachable end local.get $3 - i32.load + i32.load offset=4 local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -38746,7 +38746,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $8 local.get $7 i32.store offset=8 @@ -38754,7 +38754,7 @@ local.get $5 local.get $4 i32.add - i32.store offset=4 + i32.store local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -38833,7 +38833,7 @@ unreachable end local.get $3 - i32.load + i32.load offset=4 local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -38999,7 +38999,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $8 local.get $7 i32.store offset=8 @@ -39007,7 +39007,7 @@ local.get $5 local.get $4 i32.add - i32.store offset=4 + i32.store local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -39086,7 +39086,7 @@ unreachable end local.get $3 - i32.load + i32.load offset=4 local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -39252,7 +39252,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $8 local.get $7 i32.store offset=8 @@ -39260,7 +39260,7 @@ local.get $5 local.get $4 i32.add - i32.store offset=4 + i32.store local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -39340,7 +39340,7 @@ unreachable end local.get $3 - i32.load + i32.load offset=4 local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -39506,7 +39506,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $8 local.get $7 i32.store offset=8 @@ -39514,7 +39514,7 @@ local.get $5 local.get $4 i32.add - i32.store offset=4 + i32.store local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -39594,7 +39594,7 @@ unreachable end local.get $3 - i32.load + i32.load offset=4 local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -39760,7 +39760,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $8 local.get $7 i32.store offset=8 @@ -39768,7 +39768,7 @@ local.get $5 local.get $4 i32.add - i32.store offset=4 + i32.store local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -39848,7 +39848,7 @@ unreachable end local.get $3 - i32.load + i32.load offset=4 local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -40014,7 +40014,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store + i32.store offset=4 local.get $8 local.get $7 i32.store offset=8 @@ -40022,7 +40022,7 @@ local.get $5 local.get $4 i32.add - i32.store offset=4 + i32.store local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -40102,7 +40102,7 @@ unreachable end local.get $3 - i32.load + i32.load offset=4 local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -42321,7 +42321,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $2 if local.get $2 From c81964b1ea420a74506bb9ad305cd868d62bd572 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 24 Sep 2019 10:58:07 +0300 Subject: [PATCH 07/12] rebuild all tests --- tests/compiler/std/arraybuffer.optimized.wat | 2 +- tests/compiler/std/arraybuffer.untouched.wat | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index b2b6d1f6f2..b203b68711 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -2196,7 +2196,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 456 - i32.const 22 + i32.const 26 i32.const 6 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/arraybuffer.untouched.wat b/tests/compiler/std/arraybuffer.untouched.wat index e3373de021..31388cb5cc 100644 --- a/tests/compiler/std/arraybuffer.untouched.wat +++ b/tests/compiler/std/arraybuffer.untouched.wat @@ -3892,7 +3892,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 456 - i32.const 22 + i32.const 26 i32.const 6 call $~lib/builtins/abort unreachable From c5432d69699ab1349aeeccbf2ab926835930342e Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 24 Sep 2019 11:59:44 +0300 Subject: [PATCH 08/12] rebuild --- tests/compiler/resolve-propertyaccess.untouched.wat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/compiler/resolve-propertyaccess.untouched.wat b/tests/compiler/resolve-propertyaccess.untouched.wat index 56b94b0437..67fbd8aece 100644 --- a/tests/compiler/resolve-propertyaccess.untouched.wat +++ b/tests/compiler/resolve-propertyaccess.untouched.wat @@ -224,7 +224,7 @@ (local $8 i64) (local $9 i64) i32.const 464 - i32.load offset=4 + i32.load local.set $3 block $break|0 loop $continue|0 From c3901b942bdb8b163c2dbfac34f5d188d2866f6f Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 24 Sep 2019 12:17:57 +0300 Subject: [PATCH 09/12] minor optimization for dataview's checks --- std/assembly/dataview.ts | 48 ++++------ tests/compiler/std/dataview.optimized.wat | 60 ++++++------- tests/compiler/std/dataview.untouched.wat | 104 +++++++++++----------- 3 files changed, 98 insertions(+), 114 deletions(-) diff --git a/std/assembly/dataview.ts b/std/assembly/dataview.ts index 1cf67eeb94..9fe1ee5bc1 100644 --- a/std/assembly/dataview.ts +++ b/std/assembly/dataview.ts @@ -32,8 +32,7 @@ export class DataView { getFloat32(byteOffset: i32, littleEndian: boolean = false): f32 { if ( - i32(byteOffset < 0) | - i32(byteOffset + 4 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 4 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); return littleEndian ? load(this.dataStart + byteOffset) @@ -46,8 +45,7 @@ export class DataView { getFloat64(byteOffset: i32, littleEndian: boolean = false): f64 { if ( - i32(byteOffset < 0) | - i32(byteOffset + 8 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 8 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); return littleEndian ? load(this.dataStart + byteOffset) @@ -65,8 +63,7 @@ export class DataView { getInt16(byteOffset: i32, littleEndian: boolean = false): i16 { if ( - i32(byteOffset < 0) | - i32(byteOffset + 2 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 2 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); var result: i16 = load(this.dataStart + byteOffset); return littleEndian ? result : bswap(result); @@ -74,8 +71,7 @@ export class DataView { getInt32(byteOffset: i32, littleEndian: boolean = false): i32 { if ( - i32(byteOffset < 0) | - i32(byteOffset + 4 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 4 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); var result: i32 = load(this.dataStart + byteOffset); return littleEndian ? result : bswap(result); @@ -88,8 +84,7 @@ export class DataView { getUint16(byteOffset: i32, littleEndian: boolean = false): u16 { if ( - i32(byteOffset < 0) | - i32(byteOffset + 2 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 2 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); var result: u16 = load(this.dataStart + byteOffset); return littleEndian ? result : bswap(result); @@ -97,8 +92,7 @@ export class DataView { getUint32(byteOffset: i32, littleEndian: boolean = false): u32 { if ( - i32(byteOffset < 0) | - i32(byteOffset + 4 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 4 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); var result: u32 = load(this.dataStart + byteOffset); return littleEndian ? result : bswap(result); @@ -106,8 +100,7 @@ export class DataView { setFloat32(byteOffset: i32, value: f32, littleEndian: boolean = false): void { if ( - i32(byteOffset < 0) | - i32(byteOffset + 4 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 4 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); if (littleEndian) store(this.dataStart + byteOffset, value); else store(this.dataStart + byteOffset, bswap(reinterpret(value))); @@ -115,8 +108,7 @@ export class DataView { setFloat64(byteOffset: i32, value: f64, littleEndian: boolean = false): void { if ( - i32(byteOffset < 0) | - i32(byteOffset + 8 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 8 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); if (littleEndian) store(this.dataStart + byteOffset, value); else store(this.dataStart + byteOffset, bswap(reinterpret(value))); @@ -129,16 +121,14 @@ export class DataView { setInt16(byteOffset: i32, value: i16, littleEndian: boolean = false): void { if ( - i32(byteOffset < 0) | - i32(byteOffset + 2 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 2 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, littleEndian ? value : bswap(value)); } setInt32(byteOffset: i32, value: i32, littleEndian: boolean = false): void { if ( - i32(byteOffset < 0) | - i32(byteOffset + 4 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 4 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, littleEndian ? value : bswap(value)); } @@ -150,16 +140,14 @@ export class DataView { setUint16(byteOffset: i32, value: u16, littleEndian: boolean = false): void { if ( - i32(byteOffset < 0) | - i32(byteOffset + 2 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 2 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, littleEndian ? value : bswap(value)); } setUint32(byteOffset: i32, value: u32, littleEndian: boolean = false): void { if ( - i32(byteOffset < 0) | - i32(byteOffset + 4 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 4 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, littleEndian ? value : bswap(value)); } @@ -168,8 +156,7 @@ export class DataView { getInt64(byteOffset: i32, littleEndian: boolean = false): i64 { if ( - i32(byteOffset < 0) | - i32(byteOffset + 8 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 8 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); var result: i64 = load(this.dataStart + byteOffset); return littleEndian ? result : bswap(result); @@ -177,8 +164,7 @@ export class DataView { getUint64(byteOffset: i32, littleEndian: boolean = false): u64 { if ( - i32(byteOffset < 0) | - i32(byteOffset + 8 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 8 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); var result = load(this.dataStart + byteOffset); return littleEndian ? result : bswap(result); @@ -186,16 +172,14 @@ export class DataView { setInt64(byteOffset: i32, value: i64, littleEndian: boolean = false): void { if ( - i32(byteOffset < 0) | - i32(byteOffset + 8 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 8 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, littleEndian ? value : bswap(value)); } setUint64(byteOffset: i32, value: u64, littleEndian: boolean = false): void { if ( - i32(byteOffset < 0) | - i32(byteOffset + 8 > this.byteLength) + (byteOffset >>> 31) | i32(byteOffset + 8 > this.byteLength) ) throw new RangeError(E_INDEXOUTOFRANGE); store(this.dataStart + byteOffset, littleEndian ? value : bswap(value)); } diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index a3b439255b..2fc24e9064 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -1990,8 +1990,8 @@ ) (func $~lib/dataview/DataView#getFloat32 (; 37 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 4 i32.add @@ -2002,7 +2002,7 @@ if i32.const 280 i32.const 432 - i32.const 37 + i32.const 36 i32.const 6 call $~lib/builtins/abort unreachable @@ -2058,7 +2058,7 @@ if i32.const 280 i32.const 432 - i32.const 51 + i32.const 49 i32.const 7 call $~lib/builtins/abort unreachable @@ -2084,7 +2084,7 @@ if i32.const 280 i32.const 432 - i32.const 62 + i32.const 60 i32.const 49 call $~lib/builtins/abort unreachable @@ -2110,8 +2110,8 @@ ) (func $~lib/dataview/DataView#getInt16 (; 42 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 2 i32.add @@ -2122,7 +2122,7 @@ if i32.const 280 i32.const 432 - i32.const 70 + i32.const 67 i32.const 7 call $~lib/builtins/abort unreachable @@ -2144,8 +2144,8 @@ ) (func $~lib/dataview/DataView#getInt32 (; 43 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 4 i32.add @@ -2156,7 +2156,7 @@ if i32.const 280 i32.const 432 - i32.const 79 + i32.const 75 i32.const 7 call $~lib/builtins/abort unreachable @@ -2185,7 +2185,7 @@ if i32.const 280 i32.const 432 - i32.const 173 + i32.const 160 i32.const 6 call $~lib/builtins/abort unreachable @@ -2210,7 +2210,7 @@ if i32.const 280 i32.const 432 - i32.const 85 + i32.const 81 i32.const 49 call $~lib/builtins/abort unreachable @@ -2234,8 +2234,8 @@ ) (func $~lib/dataview/DataView#getUint16 (; 47 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 2 i32.add @@ -2246,7 +2246,7 @@ if i32.const 280 i32.const 432 - i32.const 93 + i32.const 88 i32.const 6 call $~lib/builtins/abort unreachable @@ -2268,8 +2268,8 @@ ) (func $~lib/dataview/DataView#getUint32 (; 48 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 4 i32.add @@ -2280,7 +2280,7 @@ if i32.const 280 i32.const 432 - i32.const 102 + i32.const 96 i32.const 6 call $~lib/builtins/abort unreachable @@ -2309,7 +2309,7 @@ if i32.const 280 i32.const 432 - i32.const 182 + i32.const 168 i32.const 6 call $~lib/builtins/abort unreachable @@ -2334,7 +2334,7 @@ if i32.const 280 i32.const 432 - i32.const 111 + i32.const 104 i32.const 6 call $~lib/builtins/abort unreachable @@ -2362,7 +2362,7 @@ if i32.const 280 i32.const 432 - i32.const 120 + i32.const 112 i32.const 6 call $~lib/builtins/abort unreachable @@ -2390,7 +2390,7 @@ if i32.const 280 i32.const 432 - i32.const 126 + i32.const 118 i32.const 49 call $~lib/builtins/abort unreachable @@ -2408,7 +2408,7 @@ if i32.const 280 i32.const 432 - i32.const 134 + i32.const 125 i32.const 6 call $~lib/builtins/abort unreachable @@ -2432,7 +2432,7 @@ if i32.const 280 i32.const 432 - i32.const 142 + i32.const 132 i32.const 6 call $~lib/builtins/abort unreachable @@ -2456,7 +2456,7 @@ if i32.const 280 i32.const 432 - i32.const 191 + i32.const 176 i32.const 6 call $~lib/builtins/abort unreachable @@ -2480,7 +2480,7 @@ if i32.const 280 i32.const 432 - i32.const 147 + i32.const 137 i32.const 49 call $~lib/builtins/abort unreachable @@ -2498,7 +2498,7 @@ if i32.const 280 i32.const 432 - i32.const 155 + i32.const 144 i32.const 6 call $~lib/builtins/abort unreachable @@ -2522,7 +2522,7 @@ if i32.const 280 i32.const 432 - i32.const 163 + i32.const 151 i32.const 6 call $~lib/builtins/abort unreachable @@ -2546,7 +2546,7 @@ if i32.const 280 i32.const 432 - i32.const 199 + i32.const 183 i32.const 6 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/dataview.untouched.wat b/tests/compiler/std/dataview.untouched.wat index 70a4542567..1058cfc49d 100644 --- a/tests/compiler/std/dataview.untouched.wat +++ b/tests/compiler/std/dataview.untouched.wat @@ -3753,8 +3753,8 @@ ) (func $~lib/dataview/DataView#getFloat32 (; 39 ;) (type $FUNCSIG$fiii) (param $0 i32) (param $1 i32) (param $2 i32) (result f32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 4 i32.add @@ -3765,7 +3765,7 @@ if i32.const 280 i32.const 432 - i32.const 37 + i32.const 36 i32.const 6 call $~lib/builtins/abort unreachable @@ -3828,8 +3828,8 @@ ) (func $~lib/dataview/DataView#getFloat64 (; 41 ;) (type $FUNCSIG$diii) (param $0 i32) (param $1 i32) (param $2 i32) (result f64) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 8 i32.add @@ -3840,7 +3840,7 @@ if i32.const 280 i32.const 432 - i32.const 51 + i32.const 49 i32.const 7 call $~lib/builtins/abort unreachable @@ -3870,7 +3870,7 @@ if i32.const 280 i32.const 432 - i32.const 62 + i32.const 60 i32.const 49 call $~lib/builtins/abort unreachable @@ -3900,8 +3900,8 @@ (func $~lib/dataview/DataView#getInt16 (; 44 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 2 i32.add @@ -3912,7 +3912,7 @@ if i32.const 280 i32.const 432 - i32.const 70 + i32.const 67 i32.const 7 call $~lib/builtins/abort unreachable @@ -3948,8 +3948,8 @@ (func $~lib/dataview/DataView#getInt32 (; 46 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 4 i32.add @@ -3960,7 +3960,7 @@ if i32.const 280 i32.const 432 - i32.const 79 + i32.const 75 i32.const 7 call $~lib/builtins/abort unreachable @@ -4021,8 +4021,8 @@ (func $~lib/dataview/DataView#getInt64 (; 48 ;) (type $FUNCSIG$jiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i64) (local $3 i64) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 8 i32.add @@ -4033,7 +4033,7 @@ if i32.const 280 i32.const 432 - i32.const 173 + i32.const 160 i32.const 6 call $~lib/builtins/abort unreachable @@ -4060,7 +4060,7 @@ if i32.const 280 i32.const 432 - i32.const 85 + i32.const 81 i32.const 49 call $~lib/builtins/abort unreachable @@ -4088,8 +4088,8 @@ (func $~lib/dataview/DataView#getUint16 (; 51 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 2 i32.add @@ -4100,7 +4100,7 @@ if i32.const 280 i32.const 432 - i32.const 93 + i32.const 88 i32.const 6 call $~lib/builtins/abort unreachable @@ -4122,8 +4122,8 @@ (func $~lib/dataview/DataView#getUint32 (; 52 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 4 i32.add @@ -4134,7 +4134,7 @@ if i32.const 280 i32.const 432 - i32.const 102 + i32.const 96 i32.const 6 call $~lib/builtins/abort unreachable @@ -4156,8 +4156,8 @@ (func $~lib/dataview/DataView#getUint64 (; 53 ;) (type $FUNCSIG$jiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i64) (local $3 i64) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 8 i32.add @@ -4168,7 +4168,7 @@ if i32.const 280 i32.const 432 - i32.const 182 + i32.const 168 i32.const 6 call $~lib/builtins/abort unreachable @@ -4189,8 +4189,8 @@ ) (func $~lib/dataview/DataView#setFloat32 (; 54 ;) (type $FUNCSIG$viifi) (param $0 i32) (param $1 i32) (param $2 f32) (param $3 i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 4 i32.add @@ -4201,7 +4201,7 @@ if i32.const 280 i32.const 432 - i32.const 111 + i32.const 104 i32.const 6 call $~lib/builtins/abort unreachable @@ -4227,8 +4227,8 @@ ) (func $~lib/dataview/DataView#setFloat64 (; 55 ;) (type $FUNCSIG$viidi) (param $0 i32) (param $1 i32) (param $2 f64) (param $3 i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 8 i32.add @@ -4239,7 +4239,7 @@ if i32.const 280 i32.const 432 - i32.const 120 + i32.const 112 i32.const 6 call $~lib/builtins/abort unreachable @@ -4271,7 +4271,7 @@ if i32.const 280 i32.const 432 - i32.const 126 + i32.const 118 i32.const 49 call $~lib/builtins/abort unreachable @@ -4285,8 +4285,8 @@ ) (func $~lib/dataview/DataView#setInt16 (; 57 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 2 i32.add @@ -4297,7 +4297,7 @@ if i32.const 280 i32.const 432 - i32.const 134 + i32.const 125 i32.const 6 call $~lib/builtins/abort unreachable @@ -4317,8 +4317,8 @@ ) (func $~lib/dataview/DataView#setInt32 (; 58 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 4 i32.add @@ -4329,7 +4329,7 @@ if i32.const 280 i32.const 432 - i32.const 142 + i32.const 132 i32.const 6 call $~lib/builtins/abort unreachable @@ -4349,8 +4349,8 @@ ) (func $~lib/dataview/DataView#setInt64 (; 59 ;) (type $FUNCSIG$viiji) (param $0 i32) (param $1 i32) (param $2 i64) (param $3 i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 8 i32.add @@ -4361,7 +4361,7 @@ if i32.const 280 i32.const 432 - i32.const 191 + i32.const 176 i32.const 6 call $~lib/builtins/abort unreachable @@ -4387,7 +4387,7 @@ if i32.const 280 i32.const 432 - i32.const 147 + i32.const 137 i32.const 49 call $~lib/builtins/abort unreachable @@ -4401,8 +4401,8 @@ ) (func $~lib/dataview/DataView#setUint16 (; 61 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 2 i32.add @@ -4413,7 +4413,7 @@ if i32.const 280 i32.const 432 - i32.const 155 + i32.const 144 i32.const 6 call $~lib/builtins/abort unreachable @@ -4433,8 +4433,8 @@ ) (func $~lib/dataview/DataView#setUint32 (; 62 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 4 i32.add @@ -4445,7 +4445,7 @@ if i32.const 280 i32.const 432 - i32.const 163 + i32.const 151 i32.const 6 call $~lib/builtins/abort unreachable @@ -4465,8 +4465,8 @@ ) (func $~lib/dataview/DataView#setUint64 (; 63 ;) (type $FUNCSIG$viiji) (param $0 i32) (param $1 i32) (param $2 i64) (param $3 i32) local.get $1 - i32.const 0 - i32.lt_s + i32.const 31 + i32.shr_u local.get $1 i32.const 8 i32.add @@ -4477,7 +4477,7 @@ if i32.const 280 i32.const 432 - i32.const 199 + i32.const 183 i32.const 6 call $~lib/builtins/abort unreachable From cc9576a63eb1ab5167a520c83be5a5f0131c2daf Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Tue, 24 Sep 2019 19:51:56 +0300 Subject: [PATCH 10/12] use ArrayBufferView instead ArrayBufferView for definitions --- std/assembly/index.d.ts | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/std/assembly/index.d.ts b/std/assembly/index.d.ts index c98833861f..a6ee641aad 100644 --- a/std/assembly/index.d.ts +++ b/std/assembly/index.d.ts @@ -1154,8 +1154,7 @@ interface ArrayLike { } /** Interface for a typed view on an array buffer. */ -interface ArrayBufferView { - [key: number]: T; +interface ArrayBufferView { /** The {@link ArrayBuffer} referenced by this view. */ readonly buffer: ArrayBuffer; /** The offset in bytes from the start of the referenced {@link ArrayBuffer}. */ @@ -1165,12 +1164,12 @@ interface ArrayBufferView { } /* @internal */ -declare abstract class TypedArray implements ArrayBufferView { +declare abstract class TypedArray implements ArrayBufferView { [key: number]: T; /** Number of bytes per element. */ static readonly BYTES_PER_ELEMENT: usize; /** Wrap an ArrayBuffer */ - static wrap(buffer: ArrayBuffer, byteOffset?: i32, length?: i32): TypedArray; + static wrap(buffer: ArrayBuffer, byteOffset?: i32, length?: i32): TypedArray; /** Constructs a new typed array. */ constructor(length: i32); /** The {@link ArrayBuffer} referenced by this view. */ From 84a8ba9fe844c1316a163b49aa9f409748d61cad Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 25 Sep 2019 12:07:18 +0300 Subject: [PATCH 11/12] update loader consts --- lib/loader/index.js | 4 ++-- std/assembly/index.d.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/loader/index.js b/lib/loader/index.js index a9b4bd5adc..bfc1975a52 100644 --- a/lib/loader/index.js +++ b/lib/loader/index.js @@ -28,8 +28,8 @@ const KEY_NULLABLE = 1 << 21; const KEY_MANAGED = 1 << 22; // Array(BufferView) layout -const ARRAYBUFFERVIEW_BUFFER_OFFSET = 0; -const ARRAYBUFFERVIEW_DATASTART_OFFSET = 4; +const ARRAYBUFFERVIEW_DATASTART_OFFSET = 0; +const ARRAYBUFFERVIEW_BUFFER_OFFSET = 4; const ARRAYBUFFERVIEW_DATALENGTH_OFFSET = 8; const ARRAYBUFFERVIEW_SIZE = 12; const ARRAY_LENGTH_OFFSET = 12; diff --git a/std/assembly/index.d.ts b/std/assembly/index.d.ts index a6ee641aad..cd83a7c7af 100644 --- a/std/assembly/index.d.ts +++ b/std/assembly/index.d.ts @@ -1169,7 +1169,7 @@ declare abstract class TypedArray implements ArrayBufferView { /** Number of bytes per element. */ static readonly BYTES_PER_ELEMENT: usize; /** Wrap an ArrayBuffer */ - static wrap(buffer: ArrayBuffer, byteOffset?: i32, length?: i32): TypedArray; + static wrap(buffer: ArrayBuffer, byteOffset?: i32, length?: i32): ArrayBufferView; /** Constructs a new typed array. */ constructor(length: i32); /** The {@link ArrayBuffer} referenced by this view. */ From 9509250e9d00acd53ad5456047bb1f6961331c04 Mon Sep 17 00:00:00 2001 From: MaxGraey Date: Wed, 25 Sep 2019 18:37:01 +0300 Subject: [PATCH 12/12] revert ArrayBufferView layout --- lib/loader/index.js | 4 +- std/assembly/arraybuffer.ts | 3 +- std/assembly/dataview.ts | 3 +- tests/compiler/assert-nonnull.optimized.wat | 2 +- tests/compiler/assert-nonnull.untouched.wat | 4 +- tests/compiler/infer-generic.optimized.wat | 2 +- tests/compiler/infer-generic.untouched.wat | 2 +- tests/compiler/number.optimized.wat | 6 +- tests/compiler/number.untouched.wat | 8 +- tests/compiler/rc/global-init.optimized.wat | 2 +- tests/compiler/rc/global-init.untouched.wat | 2 +- tests/compiler/rc/local-init.optimized.wat | 2 +- tests/compiler/rc/local-init.untouched.wat | 2 +- .../rc/logical-and-mismatch.optimized.wat | 2 +- .../rc/logical-and-mismatch.untouched.wat | 2 +- .../rc/logical-or-mismatch.optimized.wat | 2 +- .../rc/logical-or-mismatch.untouched.wat | 2 +- tests/compiler/rc/rereturn.optimized.wat | 2 +- tests/compiler/rc/rereturn.untouched.wat | 2 +- .../rc/ternary-mismatch.optimized.wat | 2 +- .../rc/ternary-mismatch.untouched.wat | 2 +- tests/compiler/resolve-access.optimized.wat | 6 +- tests/compiler/resolve-access.untouched.wat | 10 +- tests/compiler/resolve-binary.optimized.wat | 6 +- tests/compiler/resolve-binary.untouched.wat | 8 +- .../resolve-elementaccess.optimized.wat | 16 +- .../resolve-elementaccess.untouched.wat | 20 +- .../resolve-function-expression.untouched.wat | 2 +- .../resolve-propertyaccess.untouched.wat | 2 +- tests/compiler/resolve-ternary.optimized.wat | 8 +- tests/compiler/resolve-ternary.untouched.wat | 10 +- tests/compiler/resolve-unary.untouched.wat | 2 +- .../retain-release-sanity.optimized.wat | 59 +- .../retain-release-sanity.untouched.wat | 69 +- tests/compiler/runtime-full.optimized.wat | 2 +- tests/compiler/runtime-full.untouched.wat | 2 +- tests/compiler/std/array-access.optimized.wat | 4 +- tests/compiler/std/array-access.untouched.wat | 8 +- .../compiler/std/array-literal.optimized.wat | 20 +- .../compiler/std/array-literal.untouched.wat | 22 +- tests/compiler/std/array.optimized.wat | 144 ++--- tests/compiler/std/array.untouched.wat | 186 +++--- tests/compiler/std/arraybuffer.optimized.wat | 24 +- tests/compiler/std/arraybuffer.untouched.wat | 26 +- tests/compiler/std/dataview.optimized.wat | 114 ++-- tests/compiler/std/dataview.untouched.wat | 120 ++-- tests/compiler/std/libm.optimized.wat | 8 +- tests/compiler/std/libm.untouched.wat | 8 +- tests/compiler/std/map.optimized.wat | 4 +- tests/compiler/std/map.untouched.wat | 4 +- tests/compiler/std/math.optimized.wat | 8 +- tests/compiler/std/math.untouched.wat | 8 +- tests/compiler/std/set.optimized.wat | 4 +- tests/compiler/std/set.untouched.wat | 4 +- tests/compiler/std/static-array.optimized.wat | 22 +- tests/compiler/std/static-array.untouched.wat | 22 +- .../std/string-encoding.optimized.wat | 2 +- .../std/string-encoding.untouched.wat | 2 +- tests/compiler/std/string.optimized.wat | 34 +- tests/compiler/std/string.untouched.wat | 38 +- tests/compiler/std/symbol.optimized.wat | 2 +- tests/compiler/std/symbol.untouched.wat | 2 +- tests/compiler/std/typedarray.optimized.wat | 526 ++++++++-------- tests/compiler/std/typedarray.untouched.wat | 594 +++++++++--------- 64 files changed, 1108 insertions(+), 1132 deletions(-) diff --git a/lib/loader/index.js b/lib/loader/index.js index bfc1975a52..a9b4bd5adc 100644 --- a/lib/loader/index.js +++ b/lib/loader/index.js @@ -28,8 +28,8 @@ const KEY_NULLABLE = 1 << 21; const KEY_MANAGED = 1 << 22; // Array(BufferView) layout -const ARRAYBUFFERVIEW_DATASTART_OFFSET = 0; -const ARRAYBUFFERVIEW_BUFFER_OFFSET = 4; +const ARRAYBUFFERVIEW_BUFFER_OFFSET = 0; +const ARRAYBUFFERVIEW_DATASTART_OFFSET = 4; const ARRAYBUFFERVIEW_DATALENGTH_OFFSET = 8; const ARRAYBUFFERVIEW_SIZE = 12; const ARRAY_LENGTH_OFFSET = 12; diff --git a/std/assembly/arraybuffer.ts b/std/assembly/arraybuffer.ts index 301d36343c..b77e20ea43 100644 --- a/std/assembly/arraybuffer.ts +++ b/std/assembly/arraybuffer.ts @@ -6,9 +6,8 @@ import { E_INVALIDLENGTH } from "./util/error"; export abstract class ArrayBufferView { - @unsafe readonly dataStart: usize; - readonly buffer: ArrayBuffer; + @unsafe readonly dataStart: usize; readonly byteLength: i32; get byteOffset(): i32 { diff --git a/std/assembly/dataview.ts b/std/assembly/dataview.ts index 9fe1ee5bc1..6fb39bda5c 100644 --- a/std/assembly/dataview.ts +++ b/std/assembly/dataview.ts @@ -6,9 +6,8 @@ import { E_INDEXOUTOFRANGE, E_INVALIDLENGTH } from "./util/error"; export class DataView { - @unsafe readonly dataStart: usize; - readonly buffer: ArrayBuffer; + @unsafe readonly dataStart: usize; readonly byteLength: i32; get byteOffset(): i32 { diff --git a/tests/compiler/assert-nonnull.optimized.wat b/tests/compiler/assert-nonnull.optimized.wat index 258f9bd28f..2149cccbed 100644 --- a/tests/compiler/assert-nonnull.optimized.wat +++ b/tests/compiler/assert-nonnull.optimized.wat @@ -53,7 +53,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 i32.load ) (func $~lib/array/Array#__get (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) diff --git a/tests/compiler/assert-nonnull.untouched.wat b/tests/compiler/assert-nonnull.untouched.wat index 0ee1f1fd84..6b4be00840 100644 --- a/tests/compiler/assert-nonnull.untouched.wat +++ b/tests/compiler/assert-nonnull.untouched.wat @@ -90,7 +90,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -151,7 +151,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl diff --git a/tests/compiler/infer-generic.optimized.wat b/tests/compiler/infer-generic.optimized.wat index d0378755e4..8da77f7349 100644 --- a/tests/compiler/infer-generic.optimized.wat +++ b/tests/compiler/infer-generic.optimized.wat @@ -47,7 +47,7 @@ i32.const 4 global.set $~lib/argc local.get $3 - i32.const 104 + i32.const 108 i32.load local.get $0 i32.const 2 diff --git a/tests/compiler/infer-generic.untouched.wat b/tests/compiler/infer-generic.untouched.wat index 9192675306..296df99d33 100644 --- a/tests/compiler/infer-generic.untouched.wat +++ b/tests/compiler/infer-generic.untouched.wat @@ -83,7 +83,7 @@ global.set $~lib/argc local.get $3 local.get $0 - i32.load + i32.load offset=4 local.get $4 i32.const 2 i32.shl diff --git a/tests/compiler/number.optimized.wat b/tests/compiler/number.optimized.wat index b24f34a78c..d53876ae0e 100644 --- a/tests/compiler/number.optimized.wat +++ b/tests/compiler/number.optimized.wat @@ -370,7 +370,7 @@ local.tee $6 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 1256 + i32.const 1260 i32.load local.set $12 loop $continue|0 @@ -1186,7 +1186,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 944 + i32.const 948 i32.load local.get $4 i32.const 3 @@ -1194,7 +1194,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 1168 + i32.const 1172 i32.load local.get $4 i32.const 1 diff --git a/tests/compiler/number.untouched.wat b/tests/compiler/number.untouched.wat index cd543841c6..826eba3516 100644 --- a/tests/compiler/number.untouched.wat +++ b/tests/compiler/number.untouched.wat @@ -247,7 +247,7 @@ (local $8 i64) (local $9 i64) i32.const 464 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 @@ -607,7 +607,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 15 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -616,7 +616,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -679,7 +679,7 @@ local.get $6 local.set $15 i32.const 1704 - i32.load + i32.load offset=4 local.set $16 block $break|0 loop $continue|0 diff --git a/tests/compiler/rc/global-init.optimized.wat b/tests/compiler/rc/global-init.optimized.wat index d64dcf9a0e..c171eea177 100644 --- a/tests/compiler/rc/global-init.optimized.wat +++ b/tests/compiler/rc/global-init.optimized.wat @@ -1929,7 +1929,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/global-init.untouched.wat b/tests/compiler/rc/global-init.untouched.wat index ed2accb8f4..7c7b8830b8 100644 --- a/tests/compiler/rc/global-init.untouched.wat +++ b/tests/compiler/rc/global-init.untouched.wat @@ -3454,7 +3454,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/local-init.optimized.wat b/tests/compiler/rc/local-init.optimized.wat index 09cd6f2405..02eee80e8e 100644 --- a/tests/compiler/rc/local-init.optimized.wat +++ b/tests/compiler/rc/local-init.optimized.wat @@ -1906,7 +1906,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/local-init.untouched.wat b/tests/compiler/rc/local-init.untouched.wat index 7699774ba5..9157c0e601 100644 --- a/tests/compiler/rc/local-init.untouched.wat +++ b/tests/compiler/rc/local-init.untouched.wat @@ -3445,7 +3445,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/logical-and-mismatch.optimized.wat b/tests/compiler/rc/logical-and-mismatch.optimized.wat index 6daef5ea2c..6772fcfa31 100644 --- a/tests/compiler/rc/logical-and-mismatch.optimized.wat +++ b/tests/compiler/rc/logical-and-mismatch.optimized.wat @@ -1949,7 +1949,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/logical-and-mismatch.untouched.wat b/tests/compiler/rc/logical-and-mismatch.untouched.wat index d2e0b00136..b3ca3f728d 100644 --- a/tests/compiler/rc/logical-and-mismatch.untouched.wat +++ b/tests/compiler/rc/logical-and-mismatch.untouched.wat @@ -3483,7 +3483,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/logical-or-mismatch.optimized.wat b/tests/compiler/rc/logical-or-mismatch.optimized.wat index 3286ffe51f..a8fee64286 100644 --- a/tests/compiler/rc/logical-or-mismatch.optimized.wat +++ b/tests/compiler/rc/logical-or-mismatch.optimized.wat @@ -1949,7 +1949,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/logical-or-mismatch.untouched.wat b/tests/compiler/rc/logical-or-mismatch.untouched.wat index 90b3e310d9..c28a4e768a 100644 --- a/tests/compiler/rc/logical-or-mismatch.untouched.wat +++ b/tests/compiler/rc/logical-or-mismatch.untouched.wat @@ -3483,7 +3483,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/rereturn.optimized.wat b/tests/compiler/rc/rereturn.optimized.wat index b221b210e4..52e8d2592b 100644 --- a/tests/compiler/rc/rereturn.optimized.wat +++ b/tests/compiler/rc/rereturn.optimized.wat @@ -1885,7 +1885,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/rereturn.untouched.wat b/tests/compiler/rc/rereturn.untouched.wat index 64666083f6..e0b5fa9f29 100644 --- a/tests/compiler/rc/rereturn.untouched.wat +++ b/tests/compiler/rc/rereturn.untouched.wat @@ -3419,7 +3419,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/rc/ternary-mismatch.optimized.wat b/tests/compiler/rc/ternary-mismatch.optimized.wat index d092a8cc85..08ab899cf5 100644 --- a/tests/compiler/rc/ternary-mismatch.optimized.wat +++ b/tests/compiler/rc/ternary-mismatch.optimized.wat @@ -1941,7 +1941,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/rc/ternary-mismatch.untouched.wat b/tests/compiler/rc/ternary-mismatch.untouched.wat index de62690bf3..7f526cb5af 100644 --- a/tests/compiler/rc/ternary-mismatch.untouched.wat +++ b/tests/compiler/rc/ternary-mismatch.untouched.wat @@ -3467,7 +3467,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/resolve-access.optimized.wat b/tests/compiler/resolve-access.optimized.wat index b7bd452371..d7ea06f1cc 100644 --- a/tests/compiler/resolve-access.optimized.wat +++ b/tests/compiler/resolve-access.optimized.wat @@ -291,10 +291,10 @@ i32.const 0 call $~lib/rt/stub/__alloc local.tee $1 - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 i32.const 8 i32.store offset=8 @@ -319,7 +319,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 i64.load ) (func $~lib/util/number/decimalCount32 (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) diff --git a/tests/compiler/resolve-access.untouched.wat b/tests/compiler/resolve-access.untouched.wat index b25f74807f..2a3adb026a 100644 --- a/tests/compiler/resolve-access.untouched.wat +++ b/tests/compiler/resolve-access.untouched.wat @@ -1412,10 +1412,10 @@ local.get $4 local.get $6 call $~lib/rt/stub/__retain - i32.store offset=4 + i32.store local.get $4 local.get $6 - i32.store + i32.store offset=4 local.get $4 local.get $5 i32.store offset=8 @@ -1433,7 +1433,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 7 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -1535,7 +1535,7 @@ (local $8 i64) (local $9 i64) i32.const 592 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 @@ -1754,7 +1754,7 @@ (local $12 i64) (local $13 i64) i32.const 592 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 diff --git a/tests/compiler/resolve-binary.optimized.wat b/tests/compiler/resolve-binary.optimized.wat index 2e76e5a93b..62b6c94c0d 100644 --- a/tests/compiler/resolve-binary.optimized.wat +++ b/tests/compiler/resolve-binary.optimized.wat @@ -422,7 +422,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 1376 + i32.const 1380 i32.load local.set $13 loop $continue|0 @@ -1324,7 +1324,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 1064 + i32.const 1068 i32.load local.get $3 i32.const 3 @@ -1332,7 +1332,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 1288 + i32.const 1292 i32.load local.get $3 i32.const 1 diff --git a/tests/compiler/resolve-binary.untouched.wat b/tests/compiler/resolve-binary.untouched.wat index e3923f97f9..b3292d57da 100644 --- a/tests/compiler/resolve-binary.untouched.wat +++ b/tests/compiler/resolve-binary.untouched.wat @@ -421,7 +421,7 @@ (local $8 i64) (local $9 i64) i32.const 600 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 @@ -1803,7 +1803,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 18 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -1812,7 +1812,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -1875,7 +1875,7 @@ local.get $6 local.set $15 i32.const 1824 - i32.load + i32.load offset=4 local.set $16 block $break|0 loop $continue|0 diff --git a/tests/compiler/resolve-elementaccess.optimized.wat b/tests/compiler/resolve-elementaccess.optimized.wat index 350475eacd..0885bda4bc 100644 --- a/tests/compiler/resolve-elementaccess.optimized.wat +++ b/tests/compiler/resolve-elementaccess.optimized.wat @@ -201,14 +201,14 @@ i32.const 0 i32.store offset=8 local.get $0 - i32.load offset=4 + i32.load drop local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 i32.const 8 i32.store offset=8 @@ -230,7 +230,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -254,7 +254,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -344,7 +344,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 1384 + i32.const 1388 i32.load local.set $13 loop $continue|0 @@ -1273,7 +1273,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 1072 + i32.const 1076 i32.load local.get $3 i32.const 3 @@ -1281,7 +1281,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 1296 + i32.const 1300 i32.load local.get $3 i32.const 1 diff --git a/tests/compiler/resolve-elementaccess.untouched.wat b/tests/compiler/resolve-elementaccess.untouched.wat index 41eec887f4..d2006b8c2c 100644 --- a/tests/compiler/resolve-elementaccess.untouched.wat +++ b/tests/compiler/resolve-elementaccess.untouched.wat @@ -442,7 +442,7 @@ if i32.const 24 i32.const 72 - i32.const 24 + i32.const 23 i32.const 56 call $~lib/builtins/abort unreachable @@ -481,7 +481,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load offset=4 + i32.load local.tee $4 i32.ne if @@ -492,10 +492,10 @@ call $~lib/rt/stub/__release end local.get $5 - i32.store offset=4 + i32.store local.get $0 local.get $3 - i32.store + i32.store offset=4 local.get $0 local.get $1 i32.store offset=8 @@ -533,7 +533,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -557,7 +557,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -578,7 +578,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 12 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -587,7 +587,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -716,7 +716,7 @@ local.get $6 local.set $15 i32.const 1384 - i32.load + i32.load offset=4 local.set $16 block $break|0 loop $continue|0 @@ -2424,7 +2424,7 @@ (local $8 i64) (local $9 i64) i32.const 1832 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 diff --git a/tests/compiler/resolve-function-expression.untouched.wat b/tests/compiler/resolve-function-expression.untouched.wat index a48a58baf7..975bb7a130 100644 --- a/tests/compiler/resolve-function-expression.untouched.wat +++ b/tests/compiler/resolve-function-expression.untouched.wat @@ -222,7 +222,7 @@ (local $8 i64) (local $9 i64) i32.const 544 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 diff --git a/tests/compiler/resolve-propertyaccess.untouched.wat b/tests/compiler/resolve-propertyaccess.untouched.wat index 67fbd8aece..56b94b0437 100644 --- a/tests/compiler/resolve-propertyaccess.untouched.wat +++ b/tests/compiler/resolve-propertyaccess.untouched.wat @@ -224,7 +224,7 @@ (local $8 i64) (local $9 i64) i32.const 464 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 diff --git a/tests/compiler/resolve-ternary.optimized.wat b/tests/compiler/resolve-ternary.optimized.wat index ac5826cd26..c2b41b2c03 100644 --- a/tests/compiler/resolve-ternary.optimized.wat +++ b/tests/compiler/resolve-ternary.optimized.wat @@ -2047,7 +2047,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 1520 + i32.const 1524 i32.load local.set $13 loop $continue|0 @@ -2774,7 +2774,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 1208 + i32.const 1212 i32.load local.get $3 i32.const 3 @@ -2782,7 +2782,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 1432 + i32.const 1436 i32.load local.get $3 i32.const 1 @@ -3306,7 +3306,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/resolve-ternary.untouched.wat b/tests/compiler/resolve-ternary.untouched.wat index 133b1966d5..7e7773a649 100644 --- a/tests/compiler/resolve-ternary.untouched.wat +++ b/tests/compiler/resolve-ternary.untouched.wat @@ -3356,7 +3356,7 @@ (local $8 i64) (local $9 i64) i32.const 712 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 @@ -3713,7 +3713,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 37 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -3722,7 +3722,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 38 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -3785,7 +3785,7 @@ local.get $6 local.set $15 i32.const 1968 - i32.load + i32.load offset=4 local.set $16 block $break|0 loop $continue|0 @@ -5451,7 +5451,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/resolve-unary.untouched.wat b/tests/compiler/resolve-unary.untouched.wat index 48cff778ab..189238ada3 100644 --- a/tests/compiler/resolve-unary.untouched.wat +++ b/tests/compiler/resolve-unary.untouched.wat @@ -223,7 +223,7 @@ (local $8 i64) (local $9 i64) i32.const 464 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 diff --git a/tests/compiler/retain-release-sanity.optimized.wat b/tests/compiler/retain-release-sanity.optimized.wat index 6cb85bb0bd..6dbbd81bf0 100644 --- a/tests/compiler/retain-release-sanity.optimized.wat +++ b/tests/compiler/retain-release-sanity.optimized.wat @@ -1997,7 +1997,7 @@ if i32.const 24 i32.const 72 - i32.const 24 + i32.const 23 i32.const 56 call $~lib/builtins/abort unreachable @@ -2031,7 +2031,7 @@ i32.store offset=8 local.get $1 local.get $0 - i32.load offset=4 + i32.load local.tee $3 i32.ne if @@ -2043,10 +2043,10 @@ end local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 local.get $2 i32.store offset=8 @@ -2234,7 +2234,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $4 local.get $1 i32.const 2 @@ -2255,10 +2255,10 @@ local.get $0 local.get $1 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 end local.get $0 local.get $3 @@ -2277,7 +2277,7 @@ local.tee $2 call $~lib/array/ensureSize local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -2304,7 +2304,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.sub @@ -2333,7 +2333,7 @@ local.tee $2 call $~lib/array/ensureSize local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -2763,7 +2763,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.load + i32.load offset=4 local.tee $2 local.get $0 i32.load offset=12 @@ -2795,22 +2795,16 @@ (func $~lib/rt/__visit_members (; 45 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) block $block$4$break block $switch$1$default - block $switch$1$case$8 - block $switch$1$case$7 - block $switch$1$case$6 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $block$4$break $block$4$break $switch$1$case$6 $switch$1$case$7 $switch$1$case$8 $switch$1$case$8 $switch$1$default - end - return + block $switch$1$case$7 + block $switch$1$case$6 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $block$4$break $block$4$break $switch$1$case$6 $switch$1$case$7 $block$4$break $block$4$break $switch$1$default end - local.get $0 - local.get $1 - call $~lib/array/Array<~lib/string/String>#__visit_impl - br $block$4$break + return end local.get $0 local.get $1 @@ -2818,19 +2812,14 @@ br $block$4$break end local.get $0 - i32.load - local.tee $0 - if - local.get $0 - local.get $1 - call $~lib/rt/pure/__visit - end - return + local.get $1 + call $~lib/array/Array<~lib/string/String>#__visit_impl + br $block$4$break end unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/retain-release-sanity.untouched.wat b/tests/compiler/retain-release-sanity.untouched.wat index 26e4f94e63..6ee9cd3996 100644 --- a/tests/compiler/retain-release-sanity.untouched.wat +++ b/tests/compiler/retain-release-sanity.untouched.wat @@ -3548,7 +3548,7 @@ if i32.const 24 i32.const 72 - i32.const 24 + i32.const 23 i32.const 56 call $~lib/builtins/abort unreachable @@ -3587,7 +3587,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load offset=4 + i32.load local.tee $4 i32.ne if @@ -3598,10 +3598,10 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store offset=4 + i32.store local.get $0 local.get $3 - i32.store + i32.store offset=4 local.get $0 local.get $1 i32.store offset=8 @@ -3835,7 +3835,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.set $4 local.get $1 local.get $2 @@ -3860,10 +3860,10 @@ local.get $0 local.get $6 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $0 local.get $6 - i32.store + i32.store offset=4 end local.get $0 local.get $5 @@ -3885,7 +3885,7 @@ i32.const 2 call $~lib/array/ensureSize local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -3915,7 +3915,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.sub @@ -3993,7 +3993,7 @@ i32.const 2 call $~lib/array/ensureSize local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -4496,7 +4496,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -4535,7 +4535,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -4573,51 +4573,40 @@ (local $2 i32) block $block$4$break block $switch$1$default - block $switch$1$case$8 - block $switch$1$case$7 - block $switch$1$case$6 - block $switch$1$case$5 - block $switch$1$case$4 - block $switch$1$case$2 - local.get $0 - i32.const 8 - i32.sub - i32.load - br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$6 $switch$1$case$7 $switch$1$case$8 $switch$1$case$8 $switch$1$default - end - return + block $switch$1$case$7 + block $switch$1$case$6 + block $switch$1$case$5 + block $switch$1$case$4 + block $switch$1$case$2 + local.get $0 + i32.const 8 + i32.sub + i32.load + br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$5 $switch$1$case$6 $switch$1$case$7 $switch$1$case$4 $switch$1$case$4 $switch$1$default end - br $block$4$break + return end - local.get $0 - local.get $1 - call $~lib/array/Array#__visit_impl br $block$4$break end local.get $0 local.get $1 - call $~lib/array/Array<~lib/string/String>#__visit_impl + call $~lib/array/Array#__visit_impl br $block$4$break end local.get $0 local.get $1 - call $~lib/array/Array<~lib/array/Array<~lib/string/String>>#__visit_impl + call $~lib/array/Array<~lib/string/String>#__visit_impl br $block$4$break end local.get $0 - i32.load - local.tee $2 - if - local.get $2 - local.get $1 - call $~lib/rt/pure/__visit - end - return + local.get $1 + call $~lib/array/Array<~lib/array/Array<~lib/string/String>>#__visit_impl + br $block$4$break end unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/runtime-full.optimized.wat b/tests/compiler/runtime-full.optimized.wat index 8cc29c5013..261c212f50 100644 --- a/tests/compiler/runtime-full.optimized.wat +++ b/tests/compiler/runtime-full.optimized.wat @@ -1877,7 +1877,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/runtime-full.untouched.wat b/tests/compiler/runtime-full.untouched.wat index fd19ccb958..56944d4a18 100644 --- a/tests/compiler/runtime-full.untouched.wat +++ b/tests/compiler/runtime-full.untouched.wat @@ -3391,7 +3391,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index 6338497344..837b6ab683 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -31,7 +31,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -63,7 +63,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 i32.const 4 i32.add i32.load diff --git a/tests/compiler/std/array-access.untouched.wat b/tests/compiler/std/array-access.untouched.wat index 784b79895c..a9cae69364 100644 --- a/tests/compiler/std/array-access.untouched.wat +++ b/tests/compiler/std/array-access.untouched.wat @@ -26,7 +26,7 @@ ) (func $~lib/array/Array<~lib/array/Array>#__unchecked_get (; 2 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -71,7 +71,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -119,7 +119,7 @@ ) (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -347,7 +347,7 @@ ) (func $~lib/array/Array<~lib/array/Array<~lib/string/String>>#__unchecked_get (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl diff --git a/tests/compiler/std/array-literal.optimized.wat b/tests/compiler/std/array-literal.optimized.wat index 20083086d8..6cdac6da41 100644 --- a/tests/compiler/std/array-literal.optimized.wat +++ b/tests/compiler/std/array-literal.optimized.wat @@ -53,7 +53,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_s @@ -72,7 +72,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -1615,10 +1615,10 @@ call $~lib/rt/tlsf/__alloc local.tee $2 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $2 - i32.store + i32.store offset=4 local.get $1 local.get $0 i32.store offset=8 @@ -1981,7 +1981,7 @@ i32.const 3 call $~lib/rt/__allocArray local.tee $1 - i32.load + i32.load offset=4 local.tee $0 global.get $std/array-literal/i i32.store8 @@ -2057,7 +2057,7 @@ i32.const 4 call $~lib/rt/__allocArray local.tee $1 - i32.load + i32.load offset=4 local.tee $0 global.get $std/array-literal/i i32.store @@ -2131,7 +2131,7 @@ i32.const 6 call $~lib/rt/__allocArray local.tee $1 - i32.load + i32.load offset=4 local.tee $0 call $std/array-literal/Ref#constructor local.tee $2 @@ -2166,7 +2166,7 @@ i32.const 8 call $~lib/rt/__allocArray local.tee $1 - i32.load + i32.load offset=4 local.tee $0 call $std/array-literal/RefWithCtor#constructor local.tee $5 @@ -2337,7 +2337,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.load + i32.load offset=4 local.tee $2 local.get $0 i32.load offset=12 @@ -2393,7 +2393,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/std/array-literal.untouched.wat b/tests/compiler/std/array-literal.untouched.wat index d44b2f501f..ce577611f0 100644 --- a/tests/compiler/std/array-literal.untouched.wat +++ b/tests/compiler/std/array-literal.untouched.wat @@ -55,7 +55,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 0 i32.shl @@ -88,7 +88,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -3110,10 +3110,10 @@ local.get $4 local.get $6 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $4 local.get $6 - i32.store + i32.store offset=4 local.get $4 local.get $5 i32.store offset=8 @@ -3555,7 +3555,7 @@ call $~lib/rt/__allocArray local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $0 local.get $0 global.get $std/array-literal/i @@ -3641,7 +3641,7 @@ call $~lib/rt/__allocArray local.set $0 local.get $0 - i32.load + i32.load offset=4 local.set $1 local.get $1 global.get $std/array-literal/i @@ -3725,7 +3725,7 @@ call $~lib/rt/__allocArray local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $0 local.get $0 i32.const 0 @@ -3768,7 +3768,7 @@ call $~lib/rt/__allocArray local.set $0 local.get $0 - i32.load + i32.load offset=4 local.set $1 local.get $1 i32.const 0 @@ -3971,7 +3971,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -4010,7 +4010,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -4087,7 +4087,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index ca1599a4ef..6b3ec8ec03 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -2212,7 +2212,7 @@ if i32.const 24 i32.const 72 - i32.const 24 + i32.const 23 i32.const 56 call $~lib/builtins/abort unreachable @@ -2246,7 +2246,7 @@ i32.const 0 i32.store offset=8 local.get $0 - i32.load offset=4 + i32.load local.tee $3 local.get $1 i32.ne @@ -2259,10 +2259,10 @@ end local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 local.get $2 i32.store offset=8 @@ -2317,10 +2317,10 @@ call $~lib/rt/tlsf/__alloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $4 - i32.store + i32.store offset=4 local.get $2 local.get $1 i32.store offset=8 @@ -2340,7 +2340,7 @@ (local $4 i32) (local $5 i32) local.get $0 - i32.load + i32.load offset=4 local.set $5 local.get $0 i32.load offset=12 @@ -2417,7 +2417,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_u @@ -2483,7 +2483,7 @@ (local $4 i32) (local $5 i32) local.get $0 - i32.load + i32.load offset=4 local.set $5 local.get $0 i32.load offset=12 @@ -2569,7 +2569,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -2645,7 +2645,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain local.tee $1 i32.const 16 @@ -2840,7 +2840,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $4 local.get $1 i32.const 2 @@ -2862,10 +2862,10 @@ local.get $0 local.get $1 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 end local.get $0 local.get $3 @@ -2884,7 +2884,7 @@ local.tee $3 call $~lib/array/ensureSize local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -2912,7 +2912,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.sub @@ -2963,10 +2963,10 @@ call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.tee $5 local.get $0 - i32.load + i32.load offset=4 local.get $3 i32.const 2 i32.shl @@ -2976,7 +2976,7 @@ local.get $5 i32.add local.get $1 - i32.load + i32.load offset=4 local.get $4 i32.const 2 i32.shl @@ -2998,7 +2998,7 @@ select local.set $3 local.get $0 - i32.load + i32.load offset=4 local.tee $5 local.get $1 i32.const 0 @@ -3100,7 +3100,7 @@ local.tee $2 call $~lib/array/ensureSize local.get $0 - i32.load + i32.load offset=4 local.tee $3 i32.const 4 i32.add @@ -3137,7 +3137,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.tee $2 i32.load local.get $2 @@ -3170,10 +3170,10 @@ local.tee $1 if local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.sub @@ -3244,7 +3244,7 @@ local.set $2 end local.get $0 - i32.load + i32.load offset=4 local.set $0 loop $continue|0 local.get $2 @@ -3332,9 +3332,9 @@ call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $4 - i32.load + i32.load offset=4 local.get $0 - i32.load + i32.load offset=4 local.tee $5 local.get $1 i32.const 2 @@ -3379,7 +3379,7 @@ i32.add call $~lib/array/ensureSize local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -3430,7 +3430,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -3534,7 +3534,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -3638,7 +3638,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -3743,7 +3743,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -3917,7 +3917,7 @@ call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $4 - i32.load + i32.load offset=4 local.set $5 loop $loop|0 local.get $1 @@ -3938,7 +3938,7 @@ i32.shl local.tee $2 local.get $0 - i32.load + i32.load offset=4 i32.add i32.load local.get $1 @@ -3973,7 +3973,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -4011,7 +4011,7 @@ call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $5 - i32.load + i32.load offset=4 local.set $6 loop $loop|0 block $break|0 @@ -4033,7 +4033,7 @@ i32.shl local.tee $3 local.get $0 - i32.load + i32.load offset=4 i32.add i32.load local.get $2 @@ -4121,7 +4121,7 @@ i32.ge_s br_if $break|0 local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -4231,7 +4231,7 @@ global.set $~lib/argc local.get $2 local.get $0 - i32.load + i32.load offset=4 local.get $3 i32.const 2 i32.shl @@ -4320,7 +4320,7 @@ global.set $~lib/argc local.get $2 local.get $0 - i32.load + i32.load offset=4 local.get $3 i32.const 2 i32.shl @@ -4796,7 +4796,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $3 i32.const 2 @@ -5310,7 +5310,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $3 i32.const 2 @@ -5402,7 +5402,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -5844,7 +5844,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.set $3 local.get $2 i32.const 2 @@ -6103,7 +6103,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -6320,7 +6320,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.set $3 local.get $2 i32.const 2 @@ -6367,7 +6367,7 @@ ) (func $~lib/array/Array<~lib/array/Array>#__unchecked_get (; 134 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -7661,7 +7661,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 i32.load offset=12 local.get $1 @@ -7845,7 +7845,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 i32.load offset=12 local.get $1 @@ -7895,7 +7895,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 6016 + i32.const 6020 i32.load local.set $13 loop $continue|0 @@ -8622,7 +8622,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 5704 + i32.const 5708 i32.load local.get $3 i32.const 3 @@ -8630,7 +8630,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 5928 + i32.const 5932 i32.load local.get $3 i32.const 1 @@ -9238,7 +9238,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 i32.load offset=12 local.get $1 @@ -10618,7 +10618,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 i32.load offset=12 call $~lib/util/string/joinIntegerArray @@ -10991,7 +10991,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 i32.load offset=12 call $~lib/util/string/joinArrays<~lib/array/Array> @@ -15852,7 +15852,7 @@ call $~lib/rt/pure/__retain drop local.get $9 - i32.load + i32.load offset=4 local.get $9 i32.load offset=12 call $~lib/util/string/joinBooleanArray @@ -15945,7 +15945,7 @@ call $~lib/rt/pure/__retain drop local.get $10 - i32.load + i32.load offset=4 local.get $10 i32.load offset=12 call $~lib/util/string/joinFloatArray @@ -15991,7 +15991,7 @@ i32.const 0 call $~lib/rt/__allocArray local.tee $3 - i32.load + i32.load offset=4 local.tee $1 call $std/array/Ref#constructor local.tee $0 @@ -16013,7 +16013,7 @@ call $~lib/rt/pure/__retain drop local.get $11 - i32.load + i32.load offset=4 local.get $11 i32.load offset=12 call $~lib/util/string/joinObjectArray @@ -16167,7 +16167,7 @@ call $~lib/rt/pure/__retain drop local.get $28 - i32.load + i32.load offset=4 local.get $28 i32.load offset=12 call $~lib/util/string/joinIntegerArray @@ -16197,7 +16197,7 @@ call $~lib/rt/pure/__retain drop local.get $30 - i32.load + i32.load offset=4 local.get $30 i32.load offset=12 call $~lib/util/string/joinIntegerArray @@ -16227,7 +16227,7 @@ call $~lib/rt/pure/__retain drop local.get $31 - i32.load + i32.load offset=4 local.get $31 i32.load offset=12 call $~lib/util/string/joinIntegerArray @@ -16257,7 +16257,7 @@ call $~lib/rt/pure/__retain drop local.get $32 - i32.load + i32.load offset=4 local.get $32 i32.load offset=12 call $~lib/util/string/joinIntegerArray @@ -16324,7 +16324,7 @@ i32.const 0 call $~lib/rt/__allocArray local.tee $0 - i32.load + i32.load offset=4 local.tee $1 i32.const 2 i32.const 2 @@ -16352,7 +16352,7 @@ call $~lib/rt/pure/__retain drop local.get $33 - i32.load + i32.load offset=4 local.get $33 i32.load offset=12 call $~lib/util/string/joinArrays<~lib/array/Array> @@ -16377,7 +16377,7 @@ i32.const 0 call $~lib/rt/__allocArray local.tee $0 - i32.load + i32.load offset=4 local.tee $1 i32.const 2 i32.const 0 @@ -16405,7 +16405,7 @@ call $~lib/rt/pure/__retain drop local.get $34 - i32.load + i32.load offset=4 local.get $34 i32.load offset=12 call $~lib/util/string/joinArrays<~lib/array/Array> @@ -16430,14 +16430,14 @@ i32.const 0 call $~lib/rt/__allocArray local.tee $26 - i32.load + i32.load offset=4 i32.const 1 i32.const 2 i32.const 24 i32.const 0 call $~lib/rt/__allocArray local.tee $1 - i32.load + i32.load offset=4 i32.const 1 i32.const 2 i32.const 7 @@ -16457,7 +16457,7 @@ call $~lib/rt/pure/__retain drop local.get $8 - i32.load + i32.load offset=4 local.get $8 i32.load offset=12 call $~lib/util/string/joinArrays<~lib/array/Array<~lib/array/Array>> @@ -16675,7 +16675,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.load + i32.load offset=4 local.tee $2 local.get $0 i32.load offset=12 @@ -16767,7 +16767,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/std/array.untouched.wat b/tests/compiler/std/array.untouched.wat index 82e8947c3d..5bd5954115 100644 --- a/tests/compiler/std/array.untouched.wat +++ b/tests/compiler/std/array.untouched.wat @@ -3747,7 +3747,7 @@ if i32.const 24 i32.const 72 - i32.const 24 + i32.const 23 i32.const 56 call $~lib/builtins/abort unreachable @@ -3786,7 +3786,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load offset=4 + i32.load local.tee $4 i32.ne if @@ -3797,10 +3797,10 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store offset=4 + i32.store local.get $0 local.get $3 - i32.store + i32.store offset=4 local.get $0 local.get $1 i32.store offset=8 @@ -3975,10 +3975,10 @@ local.get $4 local.get $6 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $4 local.get $6 - i32.store + i32.store offset=4 local.get $4 local.get $5 i32.store offset=8 @@ -4000,7 +4000,7 @@ (local $6 i32) (local $7 i32) local.get $0 - i32.load + i32.load offset=4 local.set $4 local.get $0 i32.load offset=12 @@ -4077,7 +4077,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 46 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 0 i32.shl @@ -4195,7 +4195,7 @@ (local $6 i32) (local $7 i32) local.get $0 - i32.load + i32.load offset=4 local.set $4 local.get $0 i32.load offset=12 @@ -4281,7 +4281,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 51 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -4410,7 +4410,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain local.set $1 local.get $1 @@ -4630,7 +4630,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.set $4 local.get $1 local.get $2 @@ -4655,10 +4655,10 @@ local.get $0 local.get $6 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $0 local.get $6 - i32.store + i32.store offset=4 end local.get $0 local.get $5 @@ -4680,7 +4680,7 @@ i32.const 2 call $~lib/array/ensureSize local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -4694,7 +4694,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 61 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -4739,7 +4739,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.sub @@ -4801,7 +4801,7 @@ call $~lib/rt/pure/__retain local.set $5 local.get $5 - i32.load + i32.load offset=4 local.set $6 local.get $2 i32.const 2 @@ -4809,14 +4809,14 @@ local.set $7 local.get $6 local.get $0 - i32.load + i32.load offset=4 local.get $7 call $~lib/memory/memory.copy local.get $6 local.get $7 i32.add local.get $1 - i32.load + i32.load offset=4 local.get $3 i32.const 2 i32.shl @@ -4837,7 +4837,7 @@ (local $10 i32) (local $11 i32) local.get $0 - i32.load + i32.load offset=4 local.set $4 local.get $0 i32.load offset=12 @@ -5054,7 +5054,7 @@ i32.const 2 call $~lib/array/ensureSize local.get $0 - i32.load + i32.load offset=4 local.set $3 local.get $3 i32.const 4 @@ -5094,7 +5094,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 i32.load @@ -5134,10 +5134,10 @@ local.get $1 if local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.sub @@ -5217,7 +5217,7 @@ local.set $2 end local.get $0 - i32.load + i32.load offset=4 local.set $6 block $break|0 loop $continue|0 @@ -5319,10 +5319,10 @@ call $~lib/rt/pure/__retain local.set $6 local.get $6 - i32.load + i32.load offset=4 local.set $7 local.get $0 - i32.load + i32.load offset=4 local.set $8 local.get $8 local.get $1 @@ -5366,7 +5366,7 @@ ) (func $~lib/array/Array#__unchecked_set (; 73 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -5438,7 +5438,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -5575,7 +5575,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -5702,7 +5702,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -5824,7 +5824,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -6030,7 +6030,7 @@ call $~lib/rt/pure/__retain local.set $3 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -6052,7 +6052,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load + i32.load offset=4 local.get $5 i32.const 2 i32.shl @@ -6086,7 +6086,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 103 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -6150,7 +6150,7 @@ call $~lib/rt/pure/__retain local.set $3 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -6172,7 +6172,7 @@ i32.const 3 global.set $~lib/argc local.get $0 - i32.load + i32.load offset=4 local.get $5 i32.const 2 i32.shl @@ -6280,7 +6280,7 @@ i32.eqz br_if $break|0 local.get $0 - i32.load + i32.load offset=4 local.get $3 i32.const 2 i32.shl @@ -6413,7 +6413,7 @@ global.set $~lib/argc local.get $3 local.get $0 - i32.load + i32.load offset=4 local.get $4 i32.const 2 i32.shl @@ -6497,7 +6497,7 @@ global.set $~lib/argc local.get $3 local.get $0 - i32.load + i32.load offset=4 local.get $4 i32.const 2 i32.shl @@ -6616,7 +6616,7 @@ global.set $~lib/argc local.get $3 local.get $0 - i32.load + i32.load offset=4 local.get $4 i32.const 2 i32.shl @@ -6689,7 +6689,7 @@ global.set $~lib/argc local.get $3 local.get $0 - i32.load + i32.load offset=4 local.get $4 i32.const 2 i32.shl @@ -7290,7 +7290,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.set $3 local.get $2 i32.const 2 @@ -7904,7 +7904,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.set $3 local.get $2 i32.const 2 @@ -8017,7 +8017,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 148 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -8549,7 +8549,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.set $3 local.get $2 i32.const 2 @@ -9026,7 +9026,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.set $3 local.get $2 i32.const 2 @@ -9379,7 +9379,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -9611,7 +9611,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.set $3 local.get $2 i32.const 2 @@ -9670,7 +9670,7 @@ ) (func $~lib/array/Array<~lib/array/Array>#__unchecked_get (; 181 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -9846,7 +9846,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -10071,7 +10071,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.set $3 local.get $2 i32.const 2 @@ -10130,7 +10130,7 @@ ) (func $~lib/array/Array>#__unchecked_get (; 194 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -10376,7 +10376,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.set $3 local.get $2 i32.const 2 @@ -10435,7 +10435,7 @@ ) (func $~lib/array/Array<~lib/string/String | null>#__unchecked_get (; 201 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -11160,7 +11160,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -11363,7 +11363,7 @@ return end local.get $0 - i32.load + i32.load offset=4 local.set $3 local.get $2 i32.const 2 @@ -11422,7 +11422,7 @@ ) (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 223 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -11975,7 +11975,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -12065,7 +12065,7 @@ (local $8 i64) (local $9 i64) i32.const 5000 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 @@ -12471,7 +12471,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -12719,7 +12719,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -12743,7 +12743,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 245 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -12752,7 +12752,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 246 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -12815,7 +12815,7 @@ local.get $6 local.set $15 i32.const 6464 - i32.load + i32.load offset=4 local.set $16 block $break|0 loop $continue|0 @@ -14287,7 +14287,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -14540,7 +14540,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -14755,7 +14755,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -15013,7 +15013,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -15239,7 +15239,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -15345,7 +15345,7 @@ (local $12 i64) (local $13 i64) i32.const 5000 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 @@ -15746,7 +15746,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -16097,7 +16097,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -16343,7 +16343,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -16569,7 +16569,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -16805,7 +16805,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -17046,7 +17046,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -17282,7 +17282,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $0 i32.load offset=12 @@ -22480,7 +22480,7 @@ call $~lib/rt/__allocArray local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $34 local.get $34 i32.const 0 @@ -22770,7 +22770,7 @@ call $~lib/rt/__allocArray local.set $49 local.get $49 - i32.load + i32.load offset=4 local.set $50 local.get $50 i32.const 2 @@ -22816,7 +22816,7 @@ call $~lib/rt/__allocArray local.set $49 local.get $49 - i32.load + i32.load offset=4 local.set $53 local.get $53 i32.const 2 @@ -22862,7 +22862,7 @@ call $~lib/rt/__allocArray local.set $49 local.get $49 - i32.load + i32.load offset=4 local.set $0 local.get $0 i32.const 1 @@ -22872,7 +22872,7 @@ call $~lib/rt/__allocArray local.set $18 local.get $18 - i32.load + i32.load offset=4 local.set $7 local.get $7 i32.const 1 @@ -23139,7 +23139,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -23178,7 +23178,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -23217,7 +23217,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -23256,7 +23256,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -23304,7 +23304,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -23352,7 +23352,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -23391,7 +23391,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -23430,7 +23430,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -23597,7 +23597,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/std/arraybuffer.optimized.wat b/tests/compiler/std/arraybuffer.optimized.wat index b203b68711..7cf228091a 100644 --- a/tests/compiler/std/arraybuffer.optimized.wat +++ b/tests/compiler/std/arraybuffer.optimized.wat @@ -2094,7 +2094,7 @@ if i32.const 24 i32.const 72 - i32.const 24 + i32.const 23 i32.const 56 call $~lib/builtins/abort unreachable @@ -2128,7 +2128,7 @@ i32.store offset=8 local.get $1 local.get $0 - i32.load offset=4 + i32.load local.tee $3 i32.ne if @@ -2140,10 +2140,10 @@ end local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 local.get $2 i32.store offset=8 @@ -2161,10 +2161,10 @@ call $~lib/rt/tlsf/__alloc local.tee $1 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 i32.const 8 i32.store offset=8 @@ -2196,7 +2196,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 456 - i32.const 26 + i32.const 25 i32.const 6 call $~lib/builtins/abort unreachable @@ -2215,7 +2215,7 @@ i32.const 0 i32.store offset=8 local.get $2 - i32.load offset=4 + i32.load local.tee $3 local.get $0 i32.ne @@ -2228,10 +2228,10 @@ end local.get $2 local.get $0 - i32.store offset=4 + i32.store local.get $2 local.get $0 - i32.store + i32.store offset=4 local.get $2 local.get $1 i32.store offset=8 @@ -2523,7 +2523,7 @@ i32.const 1 global.set $~lib/argc local.get $1 - i32.load offset=4 + i32.load local.tee $3 call $~lib/arraybuffer/ArrayBuffer#get:byteLength local.set $4 @@ -2683,7 +2683,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/std/arraybuffer.untouched.wat b/tests/compiler/std/arraybuffer.untouched.wat index 31388cb5cc..b6146ac6e0 100644 --- a/tests/compiler/std/arraybuffer.untouched.wat +++ b/tests/compiler/std/arraybuffer.untouched.wat @@ -2034,7 +2034,7 @@ if i32.const 24 i32.const 72 - i32.const 54 + i32.const 53 i32.const 42 call $~lib/builtins/abort unreachable @@ -3741,7 +3741,7 @@ if i32.const 24 i32.const 72 - i32.const 24 + i32.const 23 i32.const 56 call $~lib/builtins/abort unreachable @@ -3780,7 +3780,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load offset=4 + i32.load local.tee $4 i32.ne if @@ -3791,10 +3791,10 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store offset=4 + i32.store local.get $0 local.get $3 - i32.store + i32.store offset=4 local.get $0 local.get $1 i32.store offset=8 @@ -3835,10 +3835,10 @@ local.get $4 local.get $6 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $4 local.get $6 - i32.store + i32.store offset=4 local.get $4 local.get $5 i32.store offset=8 @@ -3892,7 +3892,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 456 - i32.const 26 + i32.const 25 i32.const 6 call $~lib/builtins/abort unreachable @@ -3920,7 +3920,7 @@ local.get $1 local.tee $5 local.get $4 - i32.load offset=4 + i32.load local.tee $4 i32.ne if @@ -3931,14 +3931,14 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store offset=4 + i32.store local.get $1 local.get $2 i32.add local.set $6 local.get $0 local.get $6 - i32.store + i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 @@ -4302,7 +4302,7 @@ global.set $~lib/argc i32.const 0 local.get $2 - i32.load offset=4 + i32.load i32.const 0 i32.const 0 call $~lib/dataview/DataView#constructor|trampoline @@ -4491,7 +4491,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/std/dataview.optimized.wat b/tests/compiler/std/dataview.optimized.wat index 2fc24e9064..3b7d5ba5c0 100644 --- a/tests/compiler/std/dataview.optimized.wat +++ b/tests/compiler/std/dataview.optimized.wat @@ -1854,7 +1854,7 @@ i32.const 0 i32.store offset=8 local.get $0 - i32.load offset=4 + i32.load local.tee $2 local.get $1 i32.ne @@ -1867,10 +1867,10 @@ end local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 i32.const 8 i32.store offset=8 @@ -1890,7 +1890,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -1923,7 +1923,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 26 + i32.const 25 i32.const 6 call $~lib/builtins/abort unreachable @@ -1942,7 +1942,7 @@ i32.const 0 i32.store offset=8 local.get $3 - i32.load offset=4 + i32.load local.tee $4 local.get $0 i32.ne @@ -1955,12 +1955,12 @@ end local.get $3 local.get $0 - i32.store offset=4 + i32.store local.get $3 local.get $0 local.get $1 i32.add - i32.store + i32.store offset=4 local.get $3 local.get $2 i32.store offset=8 @@ -1969,10 +1969,10 @@ local.get $3 ) (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load local.get $0 i32.load offset=4 + local.get $0 + i32.load i32.sub ) (func $~lib/polyfills/bswap (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) @@ -2002,7 +2002,7 @@ if i32.const 280 i32.const 432 - i32.const 36 + i32.const 35 i32.const 6 call $~lib/builtins/abort unreachable @@ -2010,13 +2010,13 @@ local.get $2 if (result f32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add f32.load else local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load @@ -2058,7 +2058,7 @@ if i32.const 280 i32.const 432 - i32.const 49 + i32.const 48 i32.const 7 call $~lib/builtins/abort unreachable @@ -2066,11 +2066,11 @@ local.get $1 if (result f64) local.get $0 - i32.load + i32.load offset=4 f64.load else local.get $0 - i32.load + i32.load offset=4 i64.load call $~lib/polyfills/bswap f64.reinterpret_i64 @@ -2084,13 +2084,13 @@ if i32.const 280 i32.const 432 - i32.const 60 + i32.const 59 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_s @@ -2122,13 +2122,13 @@ if i32.const 280 i32.const 432 - i32.const 67 + i32.const 66 i32.const 7 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load16_s @@ -2156,13 +2156,13 @@ if i32.const 280 i32.const 432 - i32.const 75 + i32.const 74 i32.const 7 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load @@ -2185,13 +2185,13 @@ if i32.const 280 i32.const 432 - i32.const 160 + i32.const 159 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 i64.load local.set $2 local.get $1 @@ -2210,13 +2210,13 @@ if i32.const 280 i32.const 432 - i32.const 81 + i32.const 80 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_u @@ -2246,13 +2246,13 @@ if i32.const 280 i32.const 432 - i32.const 88 + i32.const 87 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load16_u @@ -2280,13 +2280,13 @@ if i32.const 280 i32.const 432 - i32.const 96 + i32.const 95 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load @@ -2309,13 +2309,13 @@ if i32.const 280 i32.const 432 - i32.const 168 + i32.const 167 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 i64.load local.set $2 local.get $1 @@ -2334,7 +2334,7 @@ if i32.const 280 i32.const 432 - i32.const 104 + i32.const 103 i32.const 6 call $~lib/builtins/abort unreachable @@ -2342,12 +2342,12 @@ local.get $2 if local.get $0 - i32.load + i32.load offset=4 local.get $1 f32.store else local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.reinterpret_f32 call $~lib/polyfills/bswap @@ -2362,7 +2362,7 @@ if i32.const 280 i32.const 432 - i32.const 112 + i32.const 111 i32.const 6 call $~lib/builtins/abort unreachable @@ -2370,12 +2370,12 @@ local.get $2 if local.get $0 - i32.load + i32.load offset=4 local.get $1 f64.store else local.get $0 - i32.load + i32.load offset=4 local.get $1 i64.reinterpret_f64 call $~lib/polyfills/bswap @@ -2390,13 +2390,13 @@ if i32.const 280 i32.const 432 - i32.const 118 + i32.const 117 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 i32.const 108 i32.store8 ) @@ -2408,13 +2408,13 @@ if i32.const 280 i32.const 432 - i32.const 125 + i32.const 124 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $2 if (result i32) local.get $1 @@ -2432,13 +2432,13 @@ if i32.const 280 i32.const 432 - i32.const 132 + i32.const 131 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $2 if (result i32) local.get $1 @@ -2456,13 +2456,13 @@ if i32.const 280 i32.const 432 - i32.const 176 + i32.const 175 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $2 if (result i64) local.get $1 @@ -2480,13 +2480,13 @@ if i32.const 280 i32.const 432 - i32.const 137 + i32.const 136 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 i32.const 238 i32.store8 ) @@ -2498,13 +2498,13 @@ if i32.const 280 i32.const 432 - i32.const 144 + i32.const 143 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $2 if (result i32) local.get $1 @@ -2522,13 +2522,13 @@ if i32.const 280 i32.const 432 - i32.const 151 + i32.const 150 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $2 if (result i32) local.get $1 @@ -2546,13 +2546,13 @@ if i32.const 280 i32.const 432 - i32.const 183 + i32.const 182 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $2 if (result i64) local.get $1 @@ -2625,7 +2625,7 @@ i32.const 95 call $~lib/typedarray/Uint8Array#__set local.get $1 - i32.load offset=4 + i32.load local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -4108,7 +4108,7 @@ i32.const 1 global.set $~lib/argc local.get $1 - i32.load offset=4 + i32.load call $~lib/dataview/DataView#constructor|trampoline local.set $2 local.get $0 @@ -4266,7 +4266,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/std/dataview.untouched.wat b/tests/compiler/std/dataview.untouched.wat index 1058cfc49d..4342b53b52 100644 --- a/tests/compiler/std/dataview.untouched.wat +++ b/tests/compiler/std/dataview.untouched.wat @@ -3553,7 +3553,7 @@ if i32.const 24 i32.const 72 - i32.const 24 + i32.const 23 i32.const 56 call $~lib/builtins/abort unreachable @@ -3592,7 +3592,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load offset=4 + i32.load local.tee $4 i32.ne if @@ -3603,10 +3603,10 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store offset=4 + i32.store local.get $0 local.get $3 - i32.store + i32.store offset=4 local.get $0 local.get $1 i32.store offset=8 @@ -3642,7 +3642,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -3676,7 +3676,7 @@ call $~lib/rt/pure/__release i32.const 24 i32.const 432 - i32.const 26 + i32.const 25 i32.const 6 call $~lib/builtins/abort unreachable @@ -3704,7 +3704,7 @@ local.get $1 local.tee $5 local.get $4 - i32.load offset=4 + i32.load local.tee $4 i32.ne if @@ -3715,14 +3715,14 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store offset=4 + i32.store local.get $1 local.get $2 i32.add local.set $6 local.get $0 local.get $6 - i32.store + i32.store offset=4 local.get $0 local.get $3 i32.store offset=8 @@ -3731,10 +3731,10 @@ local.get $0 ) (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load local.get $0 i32.load offset=4 + local.get $0 + i32.load i32.sub ) (func $~lib/polyfills/bswap (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) @@ -3765,7 +3765,7 @@ if i32.const 280 i32.const 432 - i32.const 36 + i32.const 35 i32.const 6 call $~lib/builtins/abort unreachable @@ -3773,13 +3773,13 @@ local.get $2 if (result f32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add f32.load else local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load @@ -3840,7 +3840,7 @@ if i32.const 280 i32.const 432 - i32.const 49 + i32.const 48 i32.const 7 call $~lib/builtins/abort unreachable @@ -3848,13 +3848,13 @@ local.get $2 if (result f64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add f64.load else local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i64.load @@ -3870,13 +3870,13 @@ if i32.const 280 i32.const 432 - i32.const 60 + i32.const 59 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_s @@ -3912,13 +3912,13 @@ if i32.const 280 i32.const 432 - i32.const 67 + i32.const 66 i32.const 7 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load16_s @@ -3960,13 +3960,13 @@ if i32.const 280 i32.const 432 - i32.const 75 + i32.const 74 i32.const 7 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load @@ -4033,13 +4033,13 @@ if i32.const 280 i32.const 432 - i32.const 160 + i32.const 159 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i64.load @@ -4060,13 +4060,13 @@ if i32.const 280 i32.const 432 - i32.const 81 + i32.const 80 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_u @@ -4100,13 +4100,13 @@ if i32.const 280 i32.const 432 - i32.const 88 + i32.const 87 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load16_u @@ -4134,13 +4134,13 @@ if i32.const 280 i32.const 432 - i32.const 96 + i32.const 95 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load @@ -4168,13 +4168,13 @@ if i32.const 280 i32.const 432 - i32.const 168 + i32.const 167 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i64.load @@ -4201,7 +4201,7 @@ if i32.const 280 i32.const 432 - i32.const 104 + i32.const 103 i32.const 6 call $~lib/builtins/abort unreachable @@ -4209,14 +4209,14 @@ local.get $3 if local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 f32.store else local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -4239,7 +4239,7 @@ if i32.const 280 i32.const 432 - i32.const 112 + i32.const 111 i32.const 6 call $~lib/builtins/abort unreachable @@ -4247,14 +4247,14 @@ local.get $3 if local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 f64.store else local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -4271,13 +4271,13 @@ if i32.const 280 i32.const 432 - i32.const 118 + i32.const 117 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -4297,13 +4297,13 @@ if i32.const 280 i32.const 432 - i32.const 125 + i32.const 124 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $3 @@ -4329,13 +4329,13 @@ if i32.const 280 i32.const 432 - i32.const 132 + i32.const 131 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $3 @@ -4361,13 +4361,13 @@ if i32.const 280 i32.const 432 - i32.const 176 + i32.const 175 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $3 @@ -4387,13 +4387,13 @@ if i32.const 280 i32.const 432 - i32.const 137 + i32.const 136 i32.const 49 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -4413,13 +4413,13 @@ if i32.const 280 i32.const 432 - i32.const 144 + i32.const 143 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $3 @@ -4445,13 +4445,13 @@ if i32.const 280 i32.const 432 - i32.const 151 + i32.const 150 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $3 @@ -4477,13 +4477,13 @@ if i32.const 280 i32.const 432 - i32.const 183 + i32.const 182 i32.const 6 call $~lib/builtins/abort unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $3 @@ -4521,10 +4521,10 @@ call $~lib/dataview/DataView#constructor ) (func $~lib/dataview/DataView#get:byteOffset (; 65 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load local.get $0 i32.load offset=4 + local.get $0 + i32.load i32.sub ) (func $start:std/dataview (; 66 ;) (type $FUNCSIG$v) @@ -4569,7 +4569,7 @@ call $~lib/typedarray/Uint8Array#__set i32.const 0 local.get $0 - i32.load offset=4 + i32.load local.get $0 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $0 @@ -6216,7 +6216,7 @@ global.set $~lib/argc i32.const 0 local.get $0 - i32.load offset=4 + i32.load i32.const 0 i32.const 0 call $~lib/dataview/DataView#constructor|trampoline @@ -6403,7 +6403,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/std/libm.optimized.wat b/tests/compiler/std/libm.optimized.wat index f8dd8b6420..5ef20316b1 100644 --- a/tests/compiler/std/libm.optimized.wat +++ b/tests/compiler/std/libm.optimized.wat @@ -1631,7 +1631,7 @@ (local $10 i64) (local $11 i64) (local $12 f64) - i32.const 232 + i32.const 236 i32.load local.get $0 i64.const 9223372036854775807 @@ -6598,7 +6598,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.0 end - i32.const 312 + i32.const 316 i32.load local.get $2 i32.const 23 @@ -8685,7 +8685,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.1 end - i32.const 312 + i32.const 316 i32.load local.get $2 i32.const 23 @@ -9049,7 +9049,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.2 end - i32.const 312 + i32.const 316 i32.load local.get $2 i32.const 23 diff --git a/tests/compiler/std/libm.untouched.wat b/tests/compiler/std/libm.untouched.wat index 3461c42740..7468136d4d 100644 --- a/tests/compiler/std/libm.untouched.wat +++ b/tests/compiler/std/libm.untouched.wat @@ -2032,7 +2032,7 @@ (local $36 i64) (local $37 f64) i32.const 232 - i32.load + i32.load offset=4 local.set $2 local.get $1 i64.const 9223372036854775807 @@ -8683,7 +8683,7 @@ local.get $9 local.set $11 i32.const 312 - i32.load + i32.load offset=4 local.set $13 local.get $11 i32.const 23 @@ -11483,7 +11483,7 @@ local.get $9 local.set $11 i32.const 312 - i32.load + i32.load offset=4 local.set $13 local.get $11 i32.const 23 @@ -12261,7 +12261,7 @@ local.get $11 local.set $13 i32.const 312 - i32.load + i32.load offset=4 local.set $15 local.get $13 i32.const 23 diff --git a/tests/compiler/std/map.optimized.wat b/tests/compiler/std/map.optimized.wat index 25f9279871..266be97c06 100644 --- a/tests/compiler/std/map.optimized.wat +++ b/tests/compiler/std/map.optimized.wat @@ -1609,7 +1609,7 @@ if i32.const 176 i32.const 224 - i32.const 54 + i32.const 53 i32.const 42 call $~lib/builtins/abort unreachable @@ -8716,7 +8716,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/std/map.untouched.wat b/tests/compiler/std/map.untouched.wat index 537025f96f..e6212a44c9 100644 --- a/tests/compiler/std/map.untouched.wat +++ b/tests/compiler/std/map.untouched.wat @@ -2042,7 +2042,7 @@ if i32.const 176 i32.const 224 - i32.const 54 + i32.const 53 i32.const 42 call $~lib/builtins/abort unreachable @@ -12658,7 +12658,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index 71f7749bc5..1db2fd3da5 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -3347,7 +3347,7 @@ (local $10 i64) (local $11 i64) (local $12 f64) - i32.const 272 + i32.const 276 i32.load local.get $0 i64.const 9223372036854775807 @@ -4079,7 +4079,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.0 end - i32.const 352 + i32.const 356 i32.load local.get $2 i32.const 23 @@ -9777,7 +9777,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.1 end - i32.const 352 + i32.const 356 i32.load local.get $2 i32.const 23 @@ -10636,7 +10636,7 @@ i32.trunc_f64_s br $~lib/math/rempio2f|inlined.2 end - i32.const 352 + i32.const 356 i32.load local.get $2 i32.const 23 diff --git a/tests/compiler/std/math.untouched.wat b/tests/compiler/std/math.untouched.wat index 31c7b87c68..c0cfb234a3 100644 --- a/tests/compiler/std/math.untouched.wat +++ b/tests/compiler/std/math.untouched.wat @@ -4112,7 +4112,7 @@ (local $36 i64) (local $37 f64) i32.const 272 - i32.load + i32.load offset=4 local.set $2 local.get $1 i64.const 9223372036854775807 @@ -5432,7 +5432,7 @@ local.get $9 local.set $11 i32.const 352 - i32.load + i32.load offset=4 local.set $13 local.get $11 i32.const 23 @@ -12838,7 +12838,7 @@ local.get $9 local.set $11 i32.const 352 - i32.load + i32.load offset=4 local.set $13 local.get $11 i32.const 23 @@ -14326,7 +14326,7 @@ local.get $11 local.set $13 i32.const 352 - i32.load + i32.load offset=4 local.set $15 local.get $13 i32.const 23 diff --git a/tests/compiler/std/set.optimized.wat b/tests/compiler/std/set.optimized.wat index 080bec737f..502fb0b536 100644 --- a/tests/compiler/std/set.optimized.wat +++ b/tests/compiler/std/set.optimized.wat @@ -1604,7 +1604,7 @@ if i32.const 176 i32.const 224 - i32.const 54 + i32.const 53 i32.const 42 call $~lib/builtins/abort unreachable @@ -7611,7 +7611,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/std/set.untouched.wat b/tests/compiler/std/set.untouched.wat index 57ddbd4c5b..53eb5fbf05 100644 --- a/tests/compiler/std/set.untouched.wat +++ b/tests/compiler/std/set.untouched.wat @@ -2040,7 +2040,7 @@ if i32.const 176 i32.const 224 - i32.const 54 + i32.const 53 i32.const 42 call $~lib/builtins/abort unreachable @@ -11370,7 +11370,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/std/static-array.optimized.wat b/tests/compiler/std/static-array.optimized.wat index 581a7ad81c..423beb38d5 100644 --- a/tests/compiler/std/static-array.optimized.wat +++ b/tests/compiler/std/static-array.optimized.wat @@ -42,7 +42,7 @@ call $~lib/builtins/abort unreachable end - i32.const 48 + i32.const 52 i32.load local.get $0 i32.const 2 @@ -668,7 +668,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $4 i32.const 1 local.get $1 @@ -688,10 +688,10 @@ if local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 end local.get $0 local.get $3 @@ -702,7 +702,7 @@ i32.const 48 i32.const 2 call $~lib/array/ensureSize - i32.const 48 + i32.const 52 i32.load i32.const 2 i32.store @@ -729,7 +729,7 @@ call $~lib/builtins/abort unreachable end - i32.const 112 + i32.const 116 i32.load local.get $0 i32.const 3 @@ -741,7 +741,7 @@ i32.const 112 i32.const 3 call $~lib/array/ensureSize - i32.const 112 + i32.const 116 i32.load i64.const 4 i64.store @@ -768,7 +768,7 @@ call $~lib/builtins/abort unreachable end - i32.const 168 + i32.const 172 i32.load local.get $0 i32.const 2 @@ -780,7 +780,7 @@ i32.const 168 i32.const 2 call $~lib/array/ensureSize - i32.const 168 + i32.const 172 i32.load f32.const 2.5 f32.store @@ -807,7 +807,7 @@ call $~lib/builtins/abort unreachable end - i32.const 232 + i32.const 236 i32.load local.get $0 i32.const 3 @@ -819,7 +819,7 @@ i32.const 232 i32.const 3 call $~lib/array/ensureSize - i32.const 232 + i32.const 236 i32.load f64.const 2.25 f64.store diff --git a/tests/compiler/std/static-array.untouched.wat b/tests/compiler/std/static-array.untouched.wat index d448aa76a5..f56218cec2 100644 --- a/tests/compiler/std/static-array.untouched.wat +++ b/tests/compiler/std/static-array.untouched.wat @@ -44,7 +44,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 2 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -1865,7 +1865,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.set $4 local.get $1 local.get $2 @@ -1890,10 +1890,10 @@ local.get $0 local.get $6 call $~lib/rt/stub/__retain - i32.store offset=4 + i32.store local.get $0 local.get $6 - i32.store + i32.store offset=4 end local.get $0 local.get $5 @@ -1902,7 +1902,7 @@ ) (func $~lib/array/Array#__unchecked_set (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -1939,7 +1939,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 15 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -1968,7 +1968,7 @@ ) (func $~lib/array/Array#__unchecked_set (; 17 ;) (type $FUNCSIG$viij) (param $0 i32) (param $1 i32) (param $2 i64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -2005,7 +2005,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 20 ;) (type $FUNCSIG$fii) (param $0 i32) (param $1 i32) (result f32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -2034,7 +2034,7 @@ ) (func $~lib/array/Array#__unchecked_set (; 22 ;) (type $FUNCSIG$viif) (param $0 i32) (param $1 i32) (param $2 f32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -2071,7 +2071,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 25 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -2100,7 +2100,7 @@ ) (func $~lib/array/Array#__unchecked_set (; 27 ;) (type $FUNCSIG$viid) (param $0 i32) (param $1 i32) (param $2 f64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl diff --git a/tests/compiler/std/string-encoding.optimized.wat b/tests/compiler/std/string-encoding.optimized.wat index ef6cf43c35..54ac4558aa 100644 --- a/tests/compiler/std/string-encoding.optimized.wat +++ b/tests/compiler/std/string-encoding.optimized.wat @@ -3864,7 +3864,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/std/string-encoding.untouched.wat b/tests/compiler/std/string-encoding.untouched.wat index aabb8d9f5e..eb9da63f99 100644 --- a/tests/compiler/std/string-encoding.untouched.wat +++ b/tests/compiler/std/string-encoding.untouched.wat @@ -5597,7 +5597,7 @@ return end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 61a38a5045..5685cc085a 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -3715,7 +3715,7 @@ i64.const 0 ) (func $~lib/util/string/pow10 (; 52 ;) (type $FUNCSIG$di) (param $0 i32) (result f64) - i32.const 1792 + i32.const 1796 i32.load local.get $0 i32.const 5 @@ -3724,7 +3724,7 @@ i32.shl i32.add f64.load - i32.const 2096 + i32.const 2100 i32.load local.get $0 i32.const 31 @@ -5650,10 +5650,10 @@ call $~lib/rt/tlsf/__alloc local.tee $3 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $3 - i32.store + i32.store offset=4 local.get $1 local.get $2 i32.store offset=8 @@ -5895,7 +5895,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $4 local.get $1 i32.const 2 @@ -5916,10 +5916,10 @@ local.get $0 local.get $1 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 end local.get $0 local.get $3 @@ -5941,7 +5941,7 @@ local.tee $3 call $~lib/array/ensureSize local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -5980,7 +5980,7 @@ i32.const 1 call $~lib/rt/__allocArray local.tee $2 - i32.load + i32.load offset=4 local.get $0 call $~lib/rt/pure/__retain i32.store @@ -6010,7 +6010,7 @@ i32.const 1 call $~lib/rt/__allocArray local.tee $0 - i32.load + i32.load offset=4 i32.const 120 i32.store local.get $0 @@ -6033,7 +6033,7 @@ local.tee $5 call $~lib/rt/__allocArray local.tee $4 - i32.load + i32.load offset=4 local.set $6 i32.const 0 local.set $2 @@ -6207,7 +6207,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -6597,7 +6597,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 13784 + i32.const 13788 i32.load local.set $13 loop $continue|0 @@ -7324,7 +7324,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 13472 + i32.const 13476 i32.load local.get $3 i32.const 3 @@ -7332,7 +7332,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 13696 + i32.const 13700 i32.load local.get $3 i32.const 1 @@ -14629,7 +14629,7 @@ (local $2 i32) (local $3 i32) local.get $0 - i32.load + i32.load offset=4 local.tee $2 local.get $0 i32.load offset=12 @@ -14679,7 +14679,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/std/string.untouched.wat b/tests/compiler/std/string.untouched.wat index aa819075b4..40d61571fe 100644 --- a/tests/compiler/std/string.untouched.wat +++ b/tests/compiler/std/string.untouched.wat @@ -5725,10 +5725,10 @@ (local $1 i32) (local $2 i32) i32.const 1792 - i32.load + i32.load offset=4 local.set $1 i32.const 2096 - i32.load + i32.load offset=4 local.set $2 local.get $1 local.get $0 @@ -8201,10 +8201,10 @@ local.get $4 local.get $6 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $4 local.get $6 - i32.store + i32.store offset=4 local.get $4 local.get $5 i32.store offset=8 @@ -8512,7 +8512,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.set $4 local.get $1 local.get $2 @@ -8537,10 +8537,10 @@ local.get $0 local.get $6 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $0 local.get $6 - i32.store + i32.store offset=4 end local.get $0 local.get $5 @@ -8566,7 +8566,7 @@ i32.const 2 call $~lib/array/ensureSize local.get $0 - i32.load + i32.load offset=4 local.get $2 i32.const 2 i32.shl @@ -8624,7 +8624,7 @@ call $~lib/rt/__allocArray local.set $3 local.get $3 - i32.load + i32.load offset=4 local.set $4 local.get $4 local.get $0 @@ -8685,7 +8685,7 @@ call $~lib/rt/__allocArray local.set $4 local.get $4 - i32.load + i32.load offset=4 local.set $3 block $break|0 i32.const 0 @@ -8744,7 +8744,7 @@ call $~lib/rt/__allocArray local.set $3 local.get $3 - i32.load + i32.load offset=4 i32.const 120 i32.store local.get $3 @@ -8896,7 +8896,7 @@ ) (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 82 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -9011,7 +9011,7 @@ (local $8 i64) (local $9 i64) i32.const 11584 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 @@ -9320,7 +9320,7 @@ (local $12 i64) (local $13 i64) i32.const 11584 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 @@ -9595,7 +9595,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 93 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -9604,7 +9604,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 94 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -9667,7 +9667,7 @@ local.get $6 local.set $15 i32.const 14232 - i32.load + i32.load offset=4 local.set $16 block $break|0 loop $continue|0 @@ -18326,7 +18326,7 @@ (local $3 i32) (local $4 i32) local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $2 local.get $0 @@ -18427,7 +18427,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2 diff --git a/tests/compiler/std/symbol.optimized.wat b/tests/compiler/std/symbol.optimized.wat index 57c1ca5295..c6cf2a0cdc 100644 --- a/tests/compiler/std/symbol.optimized.wat +++ b/tests/compiler/std/symbol.optimized.wat @@ -369,7 +369,7 @@ if i32.const 96 i32.const 144 - i32.const 54 + i32.const 53 i32.const 42 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/symbol.untouched.wat b/tests/compiler/std/symbol.untouched.wat index 9c94ecc455..11a1071f16 100644 --- a/tests/compiler/std/symbol.untouched.wat +++ b/tests/compiler/std/symbol.untouched.wat @@ -467,7 +467,7 @@ if i32.const 96 i32.const 144 - i32.const 54 + i32.const 53 i32.const 42 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/std/typedarray.optimized.wat b/tests/compiler/std/typedarray.optimized.wat index 65001de3ee..758c0dcd22 100644 --- a/tests/compiler/std/typedarray.optimized.wat +++ b/tests/compiler/std/typedarray.optimized.wat @@ -2107,7 +2107,7 @@ if i32.const 24 i32.const 72 - i32.const 24 + i32.const 23 i32.const 56 call $~lib/builtins/abort unreachable @@ -2141,7 +2141,7 @@ i32.const 0 i32.store offset=8 local.get $0 - i32.load offset=4 + i32.load local.tee $3 local.get $1 i32.ne @@ -2154,10 +2154,10 @@ end local.get $0 local.get $1 - i32.store offset=4 + i32.store local.get $0 local.get $1 - i32.store + i32.store offset=4 local.get $0 local.get $2 i32.store offset=8 @@ -2173,10 +2173,10 @@ call $~lib/arraybuffer/ArrayBufferView#constructor ) (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 33 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load local.get $0 i32.load offset=4 + local.get $0 + i32.load i32.sub ) (func $~lib/typedarray/Uint8Array#constructor (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) @@ -2750,7 +2750,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -2774,7 +2774,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -2838,17 +2838,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $4 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $4 - i32.load + i32.load offset=4 local.get $0 i32.const 2 i32.shl i32.add - i32.store + i32.store offset=4 local.get $2 local.get $1 local.get $0 @@ -2882,7 +2882,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -2947,17 +2947,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $4 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $4 - i32.load + i32.load offset=4 local.get $0 i32.const 3 i32.shl i32.add - i32.store + i32.store offset=4 local.get $2 local.get $1 local.get $0 @@ -3337,7 +3337,7 @@ br $~lib/typedarray/SORT<~lib/typedarray/Float64Array,f64>|inlined.0 end local.get $0 - i32.load + i32.load offset=4 local.set $2 local.get $3 i32.const 2 @@ -3431,7 +3431,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -3452,7 +3452,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.const 255 @@ -3484,7 +3484,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_u @@ -3503,7 +3503,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -3516,7 +3516,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $5 - i32.load + i32.load offset=4 local.set $6 local.get $5 i32.load offset=8 @@ -3592,10 +3592,10 @@ call $~lib/rt/tlsf/__alloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $4 - i32.store + i32.store offset=4 local.get $2 local.get $1 i32.store offset=8 @@ -3625,7 +3625,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_s @@ -3644,7 +3644,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_s @@ -3758,15 +3758,15 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $4 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $4 - i32.load + i32.load offset=4 local.get $0 i32.add - i32.store + i32.store offset=4 local.get $2 local.get $1 local.get $0 @@ -3791,7 +3791,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $4 - i32.load + i32.load offset=4 local.set $6 local.get $4 call $~lib/typedarray/Int32Array#get:length @@ -3876,7 +3876,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -3999,9 +3999,9 @@ local.tee $2 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.get $4 - i32.load + i32.load offset=4 local.get $0 i32.const 2 i32.shl @@ -4032,7 +4032,7 @@ select local.set $3 local.get $5 - i32.load + i32.load offset=4 local.tee $6 local.get $1 i32.const 0 @@ -4140,7 +4140,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -4226,7 +4226,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -4240,7 +4240,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $4 i32.const 0 local.set $0 @@ -4369,7 +4369,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -4385,7 +4385,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -4475,7 +4475,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -4491,7 +4491,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -4573,7 +4573,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.set $4 i32.const 0 local.set $0 @@ -4663,7 +4663,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -4724,7 +4724,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -4750,7 +4750,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.set $4 i32.const 0 local.set $0 @@ -4840,7 +4840,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -4901,7 +4901,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -4927,7 +4927,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -5017,7 +5017,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -5096,7 +5096,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load + i32.load offset=4 local.set $3 local.get $1 i32.load offset=8 @@ -5175,7 +5175,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $4 local.get $2 i32.load offset=8 @@ -5295,7 +5295,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 local.get $2 call $~lib/typedarray/Int16Array#get:length @@ -5376,7 +5376,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 local.get $2 call $~lib/typedarray/Int16Array#get:length @@ -5457,7 +5457,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.set $4 local.get $3 call $~lib/typedarray/Int32Array#get:length @@ -5575,7 +5575,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.set $4 local.get $3 call $~lib/typedarray/Int64Array#get:length @@ -5693,7 +5693,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 local.get $2 call $~lib/typedarray/Int32Array#get:length @@ -5772,7 +5772,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 local.get $2 call $~lib/typedarray/Int64Array#get:length @@ -5866,7 +5866,7 @@ i32.load offset=8 local.set $0 local.get $3 - i32.load + i32.load offset=4 local.set $5 i32.const 12 i32.const 3 @@ -5904,10 +5904,10 @@ local.get $2 local.get $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $4 - i32.store + i32.store offset=4 local.get $2 local.get $0 i32.store offset=8 @@ -5996,7 +5996,7 @@ i32.load offset=8 local.set $0 local.get $3 - i32.load + i32.load offset=4 local.set $5 i32.const 12 i32.const 4 @@ -6034,10 +6034,10 @@ local.get $2 local.get $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $4 - i32.store + i32.store offset=4 local.get $2 local.get $0 i32.store offset=8 @@ -6060,7 +6060,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_u @@ -6145,7 +6145,7 @@ i32.load offset=8 local.set $0 local.get $3 - i32.load + i32.load offset=4 local.set $5 i32.const 12 i32.const 5 @@ -6183,10 +6183,10 @@ local.get $2 local.get $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $4 - i32.store + i32.store offset=4 local.get $2 local.get $0 i32.store offset=8 @@ -6278,7 +6278,7 @@ call $~lib/typedarray/Int16Array#get:length local.set $4 local.get $2 - i32.load + i32.load offset=4 local.set $5 i32.const 12 i32.const 6 @@ -6326,10 +6326,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $3 - i32.store + i32.store offset=4 local.get $1 local.get $6 i32.store offset=8 @@ -6354,7 +6354,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -6444,7 +6444,7 @@ call $~lib/typedarray/Int16Array#get:length local.set $4 local.get $2 - i32.load + i32.load offset=4 local.set $5 i32.const 12 i32.const 7 @@ -6492,10 +6492,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $3 - i32.store + i32.store offset=4 local.get $1 local.get $6 i32.store offset=8 @@ -6520,7 +6520,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -6610,7 +6610,7 @@ call $~lib/typedarray/Int32Array#get:length local.set $4 local.get $2 - i32.load + i32.load offset=4 local.set $5 i32.const 12 i32.const 8 @@ -6658,10 +6658,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $3 - i32.store + i32.store offset=4 local.get $1 local.get $6 i32.store offset=8 @@ -6753,7 +6753,7 @@ call $~lib/typedarray/Int32Array#get:length local.set $4 local.get $2 - i32.load + i32.load offset=4 local.set $5 i32.const 12 i32.const 9 @@ -6801,10 +6801,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $3 - i32.store + i32.store offset=4 local.get $1 local.get $6 i32.store offset=8 @@ -6829,7 +6829,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -6929,7 +6929,7 @@ call $~lib/typedarray/Int64Array#get:length local.set $4 local.get $2 - i32.load + i32.load offset=4 local.set $5 i32.const 12 i32.const 10 @@ -6977,10 +6977,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $3 - i32.store + i32.store offset=4 local.get $1 local.get $6 i32.store offset=8 @@ -7005,7 +7005,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -7095,7 +7095,7 @@ call $~lib/typedarray/Int64Array#get:length local.set $4 local.get $2 - i32.load + i32.load offset=4 local.set $5 i32.const 12 i32.const 11 @@ -7143,10 +7143,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $3 - i32.store + i32.store offset=4 local.get $1 local.get $6 i32.store offset=8 @@ -7171,7 +7171,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -7271,7 +7271,7 @@ call $~lib/typedarray/Int32Array#get:length local.set $4 local.get $2 - i32.load + i32.load offset=4 local.set $5 i32.const 12 i32.const 12 @@ -7319,10 +7319,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $3 - i32.store + i32.store offset=4 local.get $1 local.get $6 i32.store offset=8 @@ -7347,7 +7347,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -7447,7 +7447,7 @@ call $~lib/typedarray/Int64Array#get:length local.set $4 local.get $2 - i32.load + i32.load offset=4 local.set $5 i32.const 12 i32.const 13 @@ -7495,10 +7495,10 @@ local.get $1 local.get $3 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $3 - i32.store + i32.store offset=4 local.get $1 local.get $6 i32.store offset=8 @@ -7770,7 +7770,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $8 i32.const 0 local.set $0 @@ -7815,13 +7815,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store + i32.store offset=4 local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -7960,7 +7960,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $8 i32.const 0 local.set $0 @@ -8005,13 +8005,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store + i32.store offset=4 local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -8138,7 +8138,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $8 i32.const 0 local.set $0 @@ -8183,13 +8183,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store + i32.store offset=4 local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -8332,7 +8332,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $8 i32.const 0 local.set $0 @@ -8384,13 +8384,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store + i32.store offset=4 local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -8531,7 +8531,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $8 i32.const 0 local.set $0 @@ -8583,13 +8583,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store + i32.store offset=4 local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -8728,7 +8728,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $8 i32.const 0 local.set $0 @@ -8780,13 +8780,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store + i32.store offset=4 local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -8925,7 +8925,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $8 i32.const 0 local.set $0 @@ -8977,13 +8977,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store + i32.store offset=4 local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -9122,7 +9122,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $8 i32.const 0 local.set $0 @@ -9174,13 +9174,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store + i32.store offset=4 local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -9319,7 +9319,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $8 i32.const 0 local.set $0 @@ -9371,13 +9371,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store + i32.store offset=4 local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -9516,7 +9516,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $8 i32.const 0 local.set $0 @@ -9568,13 +9568,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store + i32.store offset=4 local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -9713,7 +9713,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $8 i32.const 0 local.set $0 @@ -9765,13 +9765,13 @@ call $~lib/rt/tlsf/__realloc local.tee $4 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $0 i32.store offset=8 local.get $1 local.get $4 - i32.store + i32.store offset=4 local.get $1 call $~lib/rt/pure/__retain local.get $3 @@ -9895,7 +9895,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -10003,7 +10003,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -10159,7 +10159,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -10270,7 +10270,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -10380,7 +10380,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -10546,7 +10546,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -10713,7 +10713,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -10833,7 +10833,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -10942,7 +10942,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -11055,7 +11055,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -11206,7 +11206,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -11322,7 +11322,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -11426,7 +11426,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -11590,7 +11590,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -11754,7 +11754,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -11868,7 +11868,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -11998,7 +11998,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -12106,7 +12106,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -12265,7 +12265,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -12364,7 +12364,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -12474,7 +12474,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -12632,7 +12632,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -12950,7 +12950,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -13223,7 +13223,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -13371,7 +13371,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load + i32.load offset=4 local.set $2 i32.const 0 local.set $0 @@ -13468,7 +13468,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -13665,7 +13665,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load + i32.load offset=4 local.set $2 i32.const 0 local.set $0 @@ -13764,7 +13764,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load + i32.load offset=4 local.set $2 i32.const 0 local.set $0 @@ -13903,7 +13903,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -14088,7 +14088,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $2 - i32.load + i32.load offset=4 local.set $3 i32.const 0 local.set $0 @@ -14279,7 +14279,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load + i32.load offset=4 local.set $2 i32.const 0 local.set $0 @@ -14416,7 +14416,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $1 - i32.load + i32.load offset=4 local.set $2 i32.const 0 local.set $0 @@ -14508,7 +14508,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.set $4 i32.const 0 local.set $0 @@ -14729,7 +14729,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.set $4 i32.const 0 local.set $0 @@ -14813,15 +14813,15 @@ call $~lib/rt/tlsf/__alloc local.tee $1 local.get $3 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $3 - i32.load + i32.load offset=4 local.get $2 i32.add - i32.store + i32.store offset=4 local.get $1 local.get $0 local.get $2 @@ -15040,15 +15040,15 @@ call $~lib/rt/tlsf/__alloc local.tee $1 local.get $3 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $1 local.get $3 - i32.load + i32.load offset=4 local.get $2 i32.add - i32.store + i32.store offset=4 local.get $1 local.get $0 local.get $2 @@ -15235,7 +15235,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.set $4 i32.const 0 local.set $0 @@ -15324,17 +15324,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $3 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $3 - i32.load + i32.load offset=4 local.get $0 i32.const 1 i32.shl i32.add - i32.store + i32.store offset=4 local.get $2 local.get $1 local.get $0 @@ -15529,7 +15529,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.set $4 i32.const 0 local.set $0 @@ -15618,17 +15618,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $3 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $3 - i32.load + i32.load offset=4 local.get $0 i32.const 1 i32.shl i32.add - i32.store + i32.store offset=4 local.get $2 local.get $1 local.get $0 @@ -15817,7 +15817,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.set $4 i32.const 0 local.set $0 @@ -16063,17 +16063,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $3 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $3 - i32.load + i32.load offset=4 local.get $0 i32.const 2 i32.shl i32.add - i32.store + i32.store offset=4 local.get $2 local.get $1 local.get $0 @@ -16256,7 +16256,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.set $4 i32.const 0 local.set $0 @@ -16345,17 +16345,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $3 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $3 - i32.load + i32.load offset=4 local.get $0 i32.const 3 i32.shl i32.add - i32.store + i32.store offset=4 local.get $2 local.get $1 local.get $0 @@ -16573,17 +16573,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $3 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $3 - i32.load + i32.load offset=4 local.get $0 i32.const 3 i32.shl i32.add - i32.store + i32.store offset=4 local.get $2 local.get $1 local.get $0 @@ -16769,7 +16769,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.set $4 i32.const 0 local.set $0 @@ -16858,17 +16858,17 @@ call $~lib/rt/tlsf/__alloc local.tee $2 local.get $3 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $2 local.get $3 - i32.load + i32.load offset=4 local.get $0 i32.const 2 i32.shl i32.add - i32.store + i32.store offset=4 local.get $2 local.get $1 local.get $0 @@ -17054,7 +17054,7 @@ local.get $0 call $~lib/rt/pure/__retain local.tee $3 - i32.load + i32.load offset=4 local.set $4 i32.const 0 local.set $0 @@ -17301,7 +17301,7 @@ local.set $2 end local.get $0 - i32.load + i32.load offset=4 local.set $4 loop $continue|0 local.get $2 @@ -17370,7 +17370,7 @@ select local.set $2 local.get $0 - i32.load + i32.load offset=4 local.set $3 loop $continue|0 local.get $2 @@ -18744,7 +18744,7 @@ local.set $2 end local.get $0 - i32.load + i32.load offset=4 local.set $4 loop $continue|0 local.get $2 @@ -18815,7 +18815,7 @@ select local.set $2 local.get $0 - i32.load + i32.load offset=4 local.set $3 loop $continue|0 local.get $2 @@ -19765,7 +19765,7 @@ local.set $2 end local.get $0 - i32.load + i32.load offset=4 local.set $4 loop $continue|0 local.get $2 @@ -19834,7 +19834,7 @@ select local.set $2 local.get $0 - i32.load + i32.load offset=4 local.set $3 loop $continue|0 local.get $2 @@ -20777,7 +20777,7 @@ local.set $2 end local.get $0 - i32.load + i32.load offset=4 local.set $4 loop $continue|0 local.get $2 @@ -20846,7 +20846,7 @@ select local.set $2 local.get $0 - i32.load + i32.load offset=4 local.set $3 loop $continue|0 local.get $2 @@ -21790,7 +21790,7 @@ local.set $2 end local.get $0 - i32.load + i32.load offset=4 local.set $4 loop $continue|0 local.get $2 @@ -21859,7 +21859,7 @@ select local.set $2 local.get $0 - i32.load + i32.load offset=4 local.set $3 loop $continue|0 local.get $2 @@ -22379,7 +22379,7 @@ local.set $2 end local.get $0 - i32.load + i32.load offset=4 local.set $4 loop $continue|0 local.get $2 @@ -22448,7 +22448,7 @@ select local.set $2 local.get $0 - i32.load + i32.load offset=4 local.set $3 loop $continue|0 local.get $2 @@ -23312,7 +23312,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 i32.load offset=8 call $~lib/util/string/joinIntegerArray @@ -23667,7 +23667,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 i32.load offset=8 call $~lib/util/string/joinIntegerArray @@ -23991,7 +23991,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Int16Array#get:length call $~lib/util/string/joinIntegerArray @@ -24223,7 +24223,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Int16Array#get:length call $~lib/util/string/joinIntegerArray @@ -24467,7 +24467,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Int32Array#get:length call $~lib/util/string/joinIntegerArray @@ -24693,7 +24693,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Int32Array#get:length call $~lib/util/string/joinIntegerArray @@ -25104,7 +25104,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Int64Array#get:length call $~lib/util/string/joinIntegerArray @@ -25390,7 +25390,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Int64Array#get:length call $~lib/util/string/joinIntegerArray @@ -25506,7 +25506,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 2952 + i32.const 2956 i32.load local.set $13 loop $continue|0 @@ -26233,7 +26233,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 2640 + i32.const 2644 i32.load local.get $3 i32.const 3 @@ -26241,7 +26241,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 2864 + i32.const 2868 i32.load local.get $3 i32.const 1 @@ -26655,7 +26655,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Int32Array#get:length call $~lib/util/string/joinFloatArray @@ -26857,7 +26857,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Int64Array#get:length call $~lib/util/string/joinFloatArray @@ -27084,13 +27084,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store + i32.store offset=4 local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -27138,7 +27138,7 @@ end end local.get $1 - i32.load offset=4 + i32.load local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -27277,13 +27277,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store + i32.store offset=4 local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -27329,7 +27329,7 @@ end end local.get $1 - i32.load offset=4 + i32.load local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -27468,13 +27468,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store + i32.store offset=4 local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -27520,7 +27520,7 @@ end end local.get $1 - i32.load offset=4 + i32.load local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -27662,13 +27662,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store + i32.store offset=4 local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -27716,7 +27716,7 @@ end end local.get $1 - i32.load offset=4 + i32.load local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -27858,13 +27858,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store + i32.store offset=4 local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -27910,7 +27910,7 @@ end end local.get $1 - i32.load offset=4 + i32.load local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -28052,13 +28052,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store + i32.store offset=4 local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -28102,7 +28102,7 @@ end end local.get $1 - i32.load offset=4 + i32.load local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -28244,13 +28244,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store + i32.store offset=4 local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -28294,7 +28294,7 @@ end end local.get $1 - i32.load offset=4 + i32.load local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -28436,13 +28436,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store + i32.store offset=4 local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -28487,7 +28487,7 @@ end end local.get $1 - i32.load offset=4 + i32.load local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -28629,13 +28629,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store + i32.store offset=4 local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -28680,7 +28680,7 @@ end end local.get $1 - i32.load offset=4 + i32.load local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -28822,13 +28822,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store + i32.store offset=4 local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -28873,7 +28873,7 @@ end end local.get $1 - i32.load offset=4 + i32.load local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -29015,13 +29015,13 @@ local.tee $3 local.get $2 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $3 local.get $1 i32.store offset=8 local.get $3 local.get $2 - i32.store + i32.store offset=4 local.get $3 call $~lib/rt/pure/__retain local.get $2 @@ -29066,7 +29066,7 @@ end end local.get $1 - i32.load offset=4 + i32.load local.get $1 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $1 @@ -31090,7 +31090,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $0 if local.get $0 diff --git a/tests/compiler/std/typedarray.untouched.wat b/tests/compiler/std/typedarray.untouched.wat index 8a5af66323..7b5ce13917 100644 --- a/tests/compiler/std/typedarray.untouched.wat +++ b/tests/compiler/std/typedarray.untouched.wat @@ -3659,7 +3659,7 @@ if i32.const 24 i32.const 72 - i32.const 24 + i32.const 23 i32.const 56 call $~lib/builtins/abort unreachable @@ -3698,7 +3698,7 @@ local.get $3 local.tee $5 local.get $4 - i32.load offset=4 + i32.load local.tee $4 i32.ne if @@ -3709,10 +3709,10 @@ call $~lib/rt/pure/__release end local.get $5 - i32.store offset=4 + i32.store local.get $0 local.get $3 - i32.store + i32.store offset=4 local.get $0 local.get $1 i32.store offset=8 @@ -3735,10 +3735,10 @@ local.get $0 ) (func $~lib/arraybuffer/ArrayBufferView#get:byteOffset (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) - local.get $0 - i32.load local.get $0 i32.load offset=4 + local.get $0 + i32.load i32.sub ) (func $~lib/typedarray/Int8Array#get:length (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) @@ -4507,7 +4507,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -4531,7 +4531,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -4620,17 +4620,17 @@ local.set $7 local.get $7 local.get $5 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $5 - i32.load + i32.load offset=4 local.get $4 i32.const 2 i32.shl i32.add - i32.store + i32.store offset=4 local.get $7 local.get $3 local.get $4 @@ -4661,7 +4661,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -4751,17 +4751,17 @@ local.set $7 local.get $7 local.get $5 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $5 - i32.load + i32.load offset=4 local.get $4 i32.const 3 i32.shl i32.add - i32.store + i32.store offset=4 local.get $7 local.get $3 local.get $4 @@ -5187,7 +5187,7 @@ br $~lib/typedarray/SORT<~lib/typedarray/Float64Array,f64>|inlined.0 end local.get $3 - i32.load + i32.load offset=4 local.set $5 local.get $4 i32.const 2 @@ -5313,7 +5313,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -5334,7 +5334,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -5366,7 +5366,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_u @@ -5385,7 +5385,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -5410,7 +5410,7 @@ local.get $3 local.set $4 local.get $7 - i32.load + i32.load offset=4 local.set $8 local.get $7 call $~lib/typedarray/Int8Array#get:length @@ -5499,10 +5499,10 @@ local.get $4 local.get $6 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $4 local.get $6 - i32.store + i32.store offset=4 local.get $4 local.get $5 i32.store offset=8 @@ -5536,14 +5536,14 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_s ) (func $~lib/array/Array#__unchecked_get (; 75 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 0 i32.shl @@ -5722,17 +5722,17 @@ local.set $7 local.get $7 local.get $5 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $5 - i32.load + i32.load offset=4 local.get $4 i32.const 0 i32.shl i32.add - i32.store + i32.store offset=4 local.get $7 local.get $3 local.get $4 @@ -5766,7 +5766,7 @@ local.get $3 local.set $4 local.get $7 - i32.load + i32.load offset=4 local.set $8 local.get $7 call $~lib/typedarray/Int32Array#get:length @@ -5851,7 +5851,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 81 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -6034,9 +6034,9 @@ call $~lib/rt/pure/__retain local.set $8 local.get $8 - i32.load + i32.load offset=4 local.get $5 - i32.load + i32.load offset=4 local.get $4 i32.const 2 i32.shl @@ -6078,7 +6078,7 @@ call $~lib/typedarray/Int32Array#get:length local.set $8 local.get $7 - i32.load + i32.load offset=4 local.set $9 local.get $4 local.tee $10 @@ -6221,7 +6221,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 i32.const 0 @@ -6325,7 +6325,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add local.get $2 @@ -6359,7 +6359,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 i32.const 0 @@ -6475,7 +6475,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 i32.const 0 @@ -6579,7 +6579,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -6615,7 +6615,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 i32.const 0 @@ -6721,7 +6721,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -6757,7 +6757,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 i32.const 0 @@ -6873,7 +6873,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 i32.const 0 @@ -6975,7 +6975,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -7011,7 +7011,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 i32.const 0 @@ -7113,7 +7113,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -7150,7 +7150,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 i32.const 0 @@ -7252,7 +7252,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -7289,7 +7289,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 i32.const 0 @@ -7391,7 +7391,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -7428,7 +7428,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 i32.const 0 @@ -7543,7 +7543,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 i32.const 0 @@ -7656,7 +7656,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 local.get $5 @@ -7773,7 +7773,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 local.get $5 @@ -7888,7 +7888,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 local.get $5 @@ -8003,7 +8003,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 local.get $5 @@ -8120,7 +8120,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 local.get $5 @@ -8235,7 +8235,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 local.get $5 @@ -8348,7 +8348,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 local.get $5 @@ -8462,7 +8462,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 local.get $5 @@ -8576,7 +8576,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 local.get $5 @@ -8690,7 +8690,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 local.get $5 @@ -8804,7 +8804,7 @@ local.get $2 local.set $3 local.get $5 - i32.load + i32.load offset=4 local.set $6 block $break|0 local.get $5 @@ -8921,7 +8921,7 @@ call $~lib/typedarray/Int8Array#get:length local.set $4 local.get $3 - i32.load + i32.load offset=4 local.set $5 local.get $4 i32.const 0 @@ -8973,10 +8973,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $8 - i32.store + i32.store offset=4 local.get $7 local.get $6 i32.store offset=8 @@ -9093,7 +9093,7 @@ call $~lib/typedarray/Uint8Array#get:length local.set $4 local.get $3 - i32.load + i32.load offset=4 local.set $5 local.get $4 i32.const 0 @@ -9145,10 +9145,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $8 - i32.store + i32.store offset=4 local.get $7 local.get $6 i32.store offset=8 @@ -9173,7 +9173,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.add i32.load8_u @@ -9284,7 +9284,7 @@ call $~lib/typedarray/Uint8ClampedArray#get:length local.set $4 local.get $3 - i32.load + i32.load offset=4 local.set $5 local.get $4 i32.const 0 @@ -9336,10 +9336,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $8 - i32.store + i32.store offset=4 local.get $7 local.get $6 i32.store offset=8 @@ -9456,7 +9456,7 @@ call $~lib/typedarray/Int16Array#get:length local.set $4 local.get $3 - i32.load + i32.load offset=4 local.set $5 local.get $4 i32.const 1 @@ -9508,10 +9508,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $8 - i32.store + i32.store offset=4 local.get $7 local.get $6 i32.store offset=8 @@ -9538,7 +9538,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -9651,7 +9651,7 @@ call $~lib/typedarray/Uint16Array#get:length local.set $4 local.get $3 - i32.load + i32.load offset=4 local.set $5 local.get $4 i32.const 1 @@ -9703,10 +9703,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $8 - i32.store + i32.store offset=4 local.get $7 local.get $6 i32.store offset=8 @@ -9733,7 +9733,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -9846,7 +9846,7 @@ call $~lib/typedarray/Int32Array#get:length local.set $4 local.get $3 - i32.load + i32.load offset=4 local.set $5 local.get $4 i32.const 2 @@ -9898,10 +9898,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $8 - i32.store + i32.store offset=4 local.get $7 local.get $6 i32.store offset=8 @@ -10018,7 +10018,7 @@ call $~lib/typedarray/Uint32Array#get:length local.set $4 local.get $3 - i32.load + i32.load offset=4 local.set $5 local.get $4 i32.const 2 @@ -10070,10 +10070,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $8 - i32.store + i32.store offset=4 local.get $7 local.get $6 i32.store offset=8 @@ -10100,7 +10100,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -10213,7 +10213,7 @@ call $~lib/typedarray/Int64Array#get:length local.set $4 local.get $3 - i32.load + i32.load offset=4 local.set $5 local.get $4 i32.const 3 @@ -10265,10 +10265,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $8 - i32.store + i32.store offset=4 local.get $7 local.get $6 i32.store offset=8 @@ -10295,7 +10295,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -10408,7 +10408,7 @@ call $~lib/typedarray/Uint64Array#get:length local.set $4 local.get $3 - i32.load + i32.load offset=4 local.set $5 local.get $4 i32.const 3 @@ -10460,10 +10460,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $8 - i32.store + i32.store offset=4 local.get $7 local.get $6 i32.store offset=8 @@ -10490,7 +10490,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -10603,7 +10603,7 @@ call $~lib/typedarray/Float32Array#get:length local.set $4 local.get $3 - i32.load + i32.load offset=4 local.set $5 local.get $4 i32.const 2 @@ -10655,10 +10655,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $8 - i32.store + i32.store offset=4 local.get $7 local.get $6 i32.store offset=8 @@ -10685,7 +10685,7 @@ unreachable end local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 2 i32.shl @@ -10798,7 +10798,7 @@ call $~lib/typedarray/Float64Array#get:length local.set $4 local.get $3 - i32.load + i32.load offset=4 local.set $5 local.get $4 i32.const 3 @@ -10850,10 +10850,10 @@ local.get $7 local.get $8 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $8 - i32.store + i32.store offset=4 local.get $7 local.get $6 i32.store offset=8 @@ -11164,7 +11164,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $7 i32.const 0 local.set $8 @@ -11224,13 +11224,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store + i32.store offset=4 local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -11392,7 +11392,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $7 i32.const 0 local.set $8 @@ -11452,13 +11452,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store + i32.store offset=4 local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -11620,7 +11620,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $7 i32.const 0 local.set $8 @@ -11680,13 +11680,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store + i32.store offset=4 local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -11850,7 +11850,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $7 i32.const 0 local.set $8 @@ -11910,13 +11910,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store + i32.store offset=4 local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -12078,7 +12078,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $7 i32.const 0 local.set $8 @@ -12138,13 +12138,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store + i32.store offset=4 local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -12304,7 +12304,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $7 i32.const 0 local.set $8 @@ -12364,13 +12364,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store + i32.store offset=4 local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -12530,7 +12530,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $7 i32.const 0 local.set $8 @@ -12590,13 +12590,13 @@ local.get $5 local.get $9 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $5 local.get $10 i32.store offset=8 local.get $5 local.get $9 - i32.store + i32.store offset=4 local.get $5 call $~lib/rt/pure/__retain local.set $11 @@ -12757,7 +12757,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $7 i32.const 0 local.set $8 @@ -12817,13 +12817,13 @@ local.get $5 local.get $11 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $5 local.get $9 i32.store offset=8 local.get $5 local.get $11 - i32.store + i32.store offset=4 local.get $5 call $~lib/rt/pure/__retain local.set $12 @@ -12984,7 +12984,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $7 i32.const 0 local.set $8 @@ -13044,13 +13044,13 @@ local.get $5 local.get $11 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $5 local.get $9 i32.store offset=8 local.get $5 local.get $11 - i32.store + i32.store offset=4 local.get $5 call $~lib/rt/pure/__retain local.set $12 @@ -13211,7 +13211,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $7 i32.const 0 local.set $8 @@ -13271,13 +13271,13 @@ local.get $5 local.get $11 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $5 local.get $9 i32.store offset=8 local.get $5 local.get $11 - i32.store + i32.store offset=4 local.get $5 call $~lib/rt/pure/__retain local.set $12 @@ -13438,7 +13438,7 @@ call $~lib/rt/tlsf/__alloc local.set $6 local.get $3 - i32.load + i32.load offset=4 local.set $7 i32.const 0 local.set $8 @@ -13498,13 +13498,13 @@ local.get $5 local.get $11 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $5 local.get $9 i32.store offset=8 local.get $5 local.get $11 - i32.store + i32.store offset=4 local.get $5 call $~lib/rt/pure/__retain local.set $12 @@ -13652,7 +13652,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -13808,7 +13808,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -13962,7 +13962,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -14118,7 +14118,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -14274,7 +14274,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -14426,7 +14426,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -14576,7 +14576,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -14726,7 +14726,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -14876,7 +14876,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -15026,7 +15026,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -15176,7 +15176,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -15330,7 +15330,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -15485,7 +15485,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -15638,7 +15638,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -15793,7 +15793,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -15948,7 +15948,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -16099,7 +16099,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -16248,7 +16248,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -16397,7 +16397,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -16546,7 +16546,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -16695,7 +16695,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -16844,7 +16844,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -16999,7 +16999,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -17160,7 +17160,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -17319,7 +17319,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -17480,7 +17480,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -17641,7 +17641,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -17798,7 +17798,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -17953,7 +17953,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -18108,7 +18108,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -18263,7 +18263,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -18670,7 +18670,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -19079,7 +19079,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -19277,7 +19277,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -19445,7 +19445,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -19607,7 +19607,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -19773,7 +19773,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -19941,7 +19941,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -20099,7 +20099,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -20251,7 +20251,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -20404,7 +20404,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -20560,7 +20560,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -20716,7 +20716,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -20872,7 +20872,7 @@ local.get $1 local.set $2 local.get $3 - i32.load + i32.load offset=4 local.set $4 block $break|0 i32.const 0 @@ -20975,7 +20975,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $2 block $break|0 i32.const 0 @@ -21225,7 +21225,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $2 block $break|0 i32.const 0 @@ -21359,17 +21359,17 @@ local.set $7 local.get $7 local.get $5 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $5 - i32.load + i32.load offset=4 local.get $4 i32.const 0 i32.shl i32.add - i32.store + i32.store offset=4 local.get $7 local.get $3 local.get $4 @@ -21576,7 +21576,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $2 block $break|0 i32.const 0 @@ -21710,17 +21710,17 @@ local.set $7 local.get $7 local.get $5 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $5 - i32.load + i32.load offset=4 local.get $4 i32.const 0 i32.shl i32.add - i32.store + i32.store offset=4 local.get $7 local.get $3 local.get $4 @@ -21927,7 +21927,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $2 block $break|0 i32.const 0 @@ -22061,17 +22061,17 @@ local.set $7 local.get $7 local.get $5 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $5 - i32.load + i32.load offset=4 local.get $4 i32.const 1 i32.shl i32.add - i32.store + i32.store offset=4 local.get $7 local.get $3 local.get $4 @@ -22284,7 +22284,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $2 block $break|0 i32.const 0 @@ -22418,17 +22418,17 @@ local.set $7 local.get $7 local.get $5 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $5 - i32.load + i32.load offset=4 local.get $4 i32.const 1 i32.shl i32.add - i32.store + i32.store offset=4 local.get $7 local.get $3 local.get $4 @@ -22635,7 +22635,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $2 block $break|0 i32.const 0 @@ -22873,7 +22873,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $2 block $break|0 i32.const 0 @@ -23007,17 +23007,17 @@ local.set $7 local.get $7 local.get $5 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $5 - i32.load + i32.load offset=4 local.get $4 i32.const 2 i32.shl i32.add - i32.store + i32.store offset=4 local.get $7 local.get $3 local.get $4 @@ -23218,7 +23218,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $2 block $break|0 i32.const 0 @@ -23352,17 +23352,17 @@ local.set $7 local.get $7 local.get $5 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $5 - i32.load + i32.load offset=4 local.get $4 i32.const 3 i32.shl i32.add - i32.store + i32.store offset=4 local.get $7 local.get $3 local.get $4 @@ -23566,7 +23566,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $2 block $break|0 i32.const 0 @@ -23700,17 +23700,17 @@ local.set $7 local.get $7 local.get $5 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $5 - i32.load + i32.load offset=4 local.get $4 i32.const 3 i32.shl i32.add - i32.store + i32.store offset=4 local.get $7 local.get $3 local.get $4 @@ -23914,7 +23914,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $2 block $break|0 i32.const 0 @@ -24048,17 +24048,17 @@ local.set $7 local.get $7 local.get $5 - i32.load offset=4 + i32.load call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $7 local.get $5 - i32.load + i32.load offset=4 local.get $4 i32.const 2 i32.shl i32.add - i32.store + i32.store offset=4 local.get $7 local.get $3 local.get $4 @@ -24262,7 +24262,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $1 - i32.load + i32.load offset=4 local.set $2 block $break|0 i32.const 0 @@ -24547,7 +24547,7 @@ local.set $6 end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -24643,7 +24643,7 @@ end end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -25236,7 +25236,7 @@ local.set $6 end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -25330,7 +25330,7 @@ end end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -25919,7 +25919,7 @@ local.set $6 end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -26013,7 +26013,7 @@ end end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -26602,7 +26602,7 @@ local.set $6 end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -26698,7 +26698,7 @@ end end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -27291,7 +27291,7 @@ local.set $6 end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -27385,7 +27385,7 @@ end end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -27974,7 +27974,7 @@ local.set $6 end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -28066,7 +28066,7 @@ end end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -28651,7 +28651,7 @@ local.set $6 end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -28743,7 +28743,7 @@ end end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -29328,7 +29328,7 @@ local.set $6 end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -29420,7 +29420,7 @@ end end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -30006,7 +30006,7 @@ local.set $6 end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -30098,7 +30098,7 @@ end end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -30684,7 +30684,7 @@ local.set $6 end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -30776,7 +30776,7 @@ end end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -31362,7 +31362,7 @@ local.set $6 end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -31454,7 +31454,7 @@ end end local.get $5 - i32.load + i32.load offset=4 local.set $8 block $break|0 loop $continue|0 @@ -32059,7 +32059,7 @@ (local $8 i64) (local $9 i64) i32.const 2160 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 @@ -32598,7 +32598,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Int8Array#get:length local.get $1 @@ -33059,7 +33059,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Uint8Array#get:length local.get $1 @@ -33149,7 +33149,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Uint8ClampedArray#get:length local.get $1 @@ -33469,7 +33469,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Int16Array#get:length local.get $1 @@ -33757,7 +33757,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Uint16Array#get:length local.get $1 @@ -34057,7 +34057,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Int32Array#get:length local.get $1 @@ -34337,7 +34337,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Uint32Array#get:length local.get $1 @@ -34507,7 +34507,7 @@ (local $12 i64) (local $13 i64) i32.const 2160 - i32.load + i32.load offset=4 local.set $3 block $break|0 loop $continue|0 @@ -34950,7 +34950,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Int64Array#get:length local.get $1 @@ -35319,7 +35319,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Uint64Array#get:length local.get $1 @@ -35412,7 +35412,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 541 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 3 i32.shl @@ -35421,7 +35421,7 @@ ) (func $~lib/array/Array#__unchecked_get (; 542 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.load + i32.load offset=4 local.get $1 i32.const 1 i32.shl @@ -35484,7 +35484,7 @@ local.get $6 local.set $15 i32.const 3400 - i32.load + i32.load offset=4 local.set $16 block $break|0 loop $continue|0 @@ -36957,7 +36957,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Float32Array#get:length local.get $1 @@ -37195,7 +37195,7 @@ call $~lib/rt/pure/__retain drop local.get $0 - i32.load + i32.load offset=4 local.get $0 call $~lib/typedarray/Float64Array#get:length local.get $1 @@ -37467,7 +37467,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $8 local.get $7 i32.store offset=8 @@ -37475,7 +37475,7 @@ local.get $5 local.get $4 i32.add - i32.store + i32.store offset=4 local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -37558,7 +37558,7 @@ unreachable end local.get $3 - i32.load offset=4 + i32.load local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -37724,7 +37724,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $8 local.get $7 i32.store offset=8 @@ -37732,7 +37732,7 @@ local.get $5 local.get $4 i32.add - i32.store + i32.store offset=4 local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -37813,7 +37813,7 @@ unreachable end local.get $3 - i32.load offset=4 + i32.load local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -37979,7 +37979,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $8 local.get $7 i32.store offset=8 @@ -37987,7 +37987,7 @@ local.get $5 local.get $4 i32.add - i32.store + i32.store offset=4 local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -38068,7 +38068,7 @@ unreachable end local.get $3 - i32.load offset=4 + i32.load local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -38234,7 +38234,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $8 local.get $7 i32.store offset=8 @@ -38242,7 +38242,7 @@ local.get $5 local.get $4 i32.add - i32.store + i32.store offset=4 local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -38325,7 +38325,7 @@ unreachable end local.get $3 - i32.load offset=4 + i32.load local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -38491,7 +38491,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $8 local.get $7 i32.store offset=8 @@ -38499,7 +38499,7 @@ local.get $5 local.get $4 i32.add - i32.store + i32.store offset=4 local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -38580,7 +38580,7 @@ unreachable end local.get $3 - i32.load offset=4 + i32.load local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -38746,7 +38746,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $8 local.get $7 i32.store offset=8 @@ -38754,7 +38754,7 @@ local.get $5 local.get $4 i32.add - i32.store + i32.store offset=4 local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -38833,7 +38833,7 @@ unreachable end local.get $3 - i32.load offset=4 + i32.load local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -38999,7 +38999,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $8 local.get $7 i32.store offset=8 @@ -39007,7 +39007,7 @@ local.get $5 local.get $4 i32.add - i32.store + i32.store offset=4 local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -39086,7 +39086,7 @@ unreachable end local.get $3 - i32.load offset=4 + i32.load local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -39252,7 +39252,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $8 local.get $7 i32.store offset=8 @@ -39260,7 +39260,7 @@ local.get $5 local.get $4 i32.add - i32.store + i32.store offset=4 local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -39340,7 +39340,7 @@ unreachable end local.get $3 - i32.load offset=4 + i32.load local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -39506,7 +39506,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $8 local.get $7 i32.store offset=8 @@ -39514,7 +39514,7 @@ local.get $5 local.get $4 i32.add - i32.store + i32.store offset=4 local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -39594,7 +39594,7 @@ unreachable end local.get $3 - i32.load offset=4 + i32.load local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -39760,7 +39760,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $8 local.get $7 i32.store offset=8 @@ -39768,7 +39768,7 @@ local.get $5 local.get $4 i32.add - i32.store + i32.store offset=4 local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -39848,7 +39848,7 @@ unreachable end local.get $3 - i32.load offset=4 + i32.load local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -40014,7 +40014,7 @@ local.get $8 local.get $5 call $~lib/rt/pure/__retain - i32.store offset=4 + i32.store local.get $8 local.get $7 i32.store offset=8 @@ -40022,7 +40022,7 @@ local.get $5 local.get $4 i32.add - i32.store + i32.store offset=4 local.get $8 call $~lib/rt/pure/__retain local.set $9 @@ -40102,7 +40102,7 @@ unreachable end local.get $3 - i32.load offset=4 + i32.load local.get $3 call $~lib/arraybuffer/ArrayBufferView#get:byteOffset local.get $3 @@ -42321,7 +42321,7 @@ unreachable end local.get $0 - i32.load offset=4 + i32.load local.tee $2 if local.get $2